math.sin on complex, real part

Details

Time bar (total: 16.8s)

analyze1.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)

sample3.8s (22.5%)

Results
1.5s2539×body1024infinite
756.0ms914×body512infinite
659.0ms2621×body256valid
562.0ms1035×body1024valid
186.0ms492×body512valid
155.0ms655×body256infinite
Bogosity

preprocess92.0ms (0.6%)

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

Useful iterations: 0 (0.0ms)

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

Compiled 16 to 13 computations (18.8% saved)

simplify90.0ms (0.5%)

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

Useful iterations: 3 (0.0ms)

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

eval1.0ms (0%)

Compiler

Compiled 47 to 25 computations (46.8% saved)

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 26 to 20 computations (23.1% saved)

localize233.0ms (1.4%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 36 to 14 computations (61.1% saved)

series5.0ms (0%)

Counts
2 → 36
Calls

9 calls:

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

rewrite38.0ms (0.2%)

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

simplify72.0ms (0.4%)

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.1%)

Compiler

Compiled 914 to 485 computations (46.9% saved)

prune34.0ms (0.2%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New59867
Fresh000
Picked011
Done000
Total59968
Accurracy
100.0%
Counts
68 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
11.1%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
84.7%
(+.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))))
73.6%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
73.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
84.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
73.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
63.1%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
41.7%
(sin.f64 re)
11.1%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
84.7%
(+.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))))
73.6%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
73.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
84.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
73.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
63.1%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
41.7%
(sin.f64 re)
Compiler

Compiled 422 to 304 computations (28% saved)

localize1.2s (7.1%)

Local Accuracy

Found 11 expressions with local accuracy:

NewAccuracyProgram
100.0%
(+.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)
95.9%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
100.0%
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
100.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
99.7%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
100.0%
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (*.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 im 4)))
99.5%
(*.f64 1/24 (sin.f64 re))
95.9%
(*.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 im 4))
94.3%
(*.f64 (sin.f64 re) (*.f64 im im))
Compiler

Compiled 170 to 81 computations (52.4% saved)

series22.0ms (0.1%)

Counts
11 → 180
Calls

48 calls:

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

rewrite88.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
696×add-sqr-sqrt
674×pow1
670×*-un-lft-identity
654×add-exp-log
652×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
032245
1702245
Stop Event
node limit
Counts
11 → 187
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (*.f64 im im))
(*.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 im 4))
(*.f64 1/24 (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)))
(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)))
(*.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 2 (*.f64 im im))
Outputs
(+.f64 (sin.f64 re) (sin.f64 re))
(-.f64 -512 (*.f64 -512 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -512)
(/.f64 -512 (sin.f64 re))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -512)
(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)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re)))) -512)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) -512)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) 1/3)
(sqrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(fabs.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2641807540224))
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re)))))
(cbrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))) -512))
(log1p.f64 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re)))) -512)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) -512)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) 1/3)
(sqrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(fabs.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2641807540224))
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re)))))
(cbrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))) -512))
(log1p.f64 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))
(+.f64 (*.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (sin.f64 re)) (*.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (*.f64 1/2641807540224 (sin.f64 re))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))) (*.f64 (*.f64 1/2641807540224 (sin.f64 re)) (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))) -512)
(*.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 -512 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(/.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (+.f64 (sin.f64 re) (-.f64 (*.f64 1/2641807540224 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))))
(/.f64 (-.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (-.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(pow.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) -512)
(pow.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) 1/3)
(sqrt.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(fabs.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(log.f64 (exp.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(log.f64 (+.f64 -512 (expm1.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))))
(cbrt.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(expm1.f64 (log1p.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(exp.f64 (log.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(exp.f64 (*.f64 (log.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))) -512))
(log1p.f64 (expm1.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (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 -512 (sin.f64 re))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -512)
(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)))
(+.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
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (sin.f64 re) 1/5159780352) -512))
(+.f64 (*.f64 (sin.f64 re) 1/5159780352) (sin.f64 re))
(+.f64 (*.f64 (*.f64 (sin.f64 re) 1/5159780352) (sin.f64 re)) (*.f64 (sin.f64 re) 1/5159780352))
(+.f64 (*.f64 (sin.f64 re) (*.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) (+.f64 (sin.f64 re) (-.f64 (*.f64 (sin.f64 re) 1/5159780352) (*.f64 (sin.f64 re) (*.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) -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
-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

simplify202.0ms (1.2%)

Algorithm
egg-herbie
Rules
1418×associate-*r*
1298×associate-*l*
898×distribute-lft-in
856×distribute-rgt-in
646×*-commutative
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03317199
17636947
221136477
373236477
Stop Event
node limit
Counts
367 → 320
Calls
Call 1
Inputs
(*.f64 re (pow.f64 im 2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2)))))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (*.f64 1/24 (*.f64 re (pow.f64 im 4))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4)))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4))) (*.f64 -1/120960 (*.f64 (pow.f64 re 7) (pow.f64 im 4))))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 re)
(+.f64 (*.f64 1/24 re) (*.f64 -1/144 (pow.f64 re 3)))
(+.f64 (*.f64 1/24 re) (+.f64 (*.f64 -1/144 (pow.f64 re 3)) (*.f64 1/2880 (pow.f64 re 5))))
(+.f64 (*.f64 1/24 re) (+.f64 (*.f64 -1/120960 (pow.f64 re 7)) (+.f64 (*.f64 -1/144 (pow.f64 re 3)) (*.f64 1/2880 (pow.f64 re 5)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 (*.f64 (+.f64 (*.f64 -1/144 (pow.f64 im 4)) (*.f64 -1/12 (pow.f64 im 2))) (pow.f64 re 3)) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re))
(+.f64 (*.f64 (+.f64 (*.f64 -1/144 (pow.f64 im 4)) (*.f64 -1/12 (pow.f64 im 2))) (pow.f64 re 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/2880 (pow.f64 im 4)) (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5)) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/144 (pow.f64 im 4)) (*.f64 -1/12 (pow.f64 im 2))) (pow.f64 re 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/2880 (pow.f64 im 4)) (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/10080 (pow.f64 im 2)) (*.f64 -1/120960 (pow.f64 im 4))) (pow.f64 re 7)) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 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 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.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 (*.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 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.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 (*.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 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.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 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.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 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 (*.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 (*.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 (*.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 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(/.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 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))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (pow.f64 im 2))
(pow.f64 im 2)
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (pow.f64 im 2))
(pow.f64 im 2)
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (pow.f64 im 2))
(+.f64 (sin.f64 re) (sin.f64 re))
(-.f64 -512 (*.f64 -512 (cos.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -512)
(/.f64 -512 (sin.f64 re))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -512)
(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)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re)))) -512)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) -512)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) 1/3)
(sqrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(fabs.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2641807540224))
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re)))))
(cbrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))) -512))
(log1p.f64 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re)))) -512)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) -512)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) 1/3)
(sqrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(fabs.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2641807540224))
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re)))))
(cbrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))) -512))
(log1p.f64 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))
(+.f64 (*.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (sin.f64 re)) (*.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (*.f64 1/2641807540224 (sin.f64 re))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))) (*.f64 (*.f64 1/2641807540224 (sin.f64 re)) (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))) -512)
(*.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 -512 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(/.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (+.f64 (sin.f64 re) (-.f64 (*.f64 1/2641807540224 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))))
(/.f64 (-.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (-.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(pow.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) -512)
(pow.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) 1/3)
(sqrt.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(fabs.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(log.f64 (exp.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(log.f64 (+.f64 -512 (expm1.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))))
(cbrt.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(expm1.f64 (log1p.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(exp.f64 (log.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(exp.f64 (*.f64 (log.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))) -512))
(log1p.f64 (expm1.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (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 -512 (sin.f64 re))
(/.f64 (-.f64 (cos.f64 (-.f64 re re)) (cos.f64 re)) -512)
(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)))
(+.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
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (sin.f64 re) 1/5159780352) -512))
(+.f64 (*.f64 (sin.f64 re) 1/5159780352) (sin.f64 re))
(+.f64 (*.f64 (*.f64 (sin.f64 re) 1/5159780352) (sin.f64 re)) (*.f64 (sin.f64 re) 1/5159780352))
(+.f64 (*.f64 (sin.f64 re) (*.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) (+.f64 (sin.f64 re) (-.f64 (*.f64 (sin.f64 re) 1/5159780352) (*.f64 (sin.f64 re) (*.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) -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
-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 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2)))
(fma.f64 -1/6 (*.f64 (*.f64 im im) (pow.f64 re 3)) (*.f64 re (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(*.f64 im (*.f64 im (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2))))
(fma.f64 -1/6 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 1/120 (*.f64 (*.f64 im im) (pow.f64 re 5)) (*.f64 re (*.f64 im im))))
(fma.f64 -1/6 (*.f64 im (*.f64 im (pow.f64 re 3))) (*.f64 (*.f64 im im) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (*.f64 im im) (+.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 re (pow.f64 im 2)))))
(fma.f64 -1/6 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 -1/5040 (*.f64 (*.f64 im im) (pow.f64 re 7)) (fma.f64 1/120 (*.f64 (*.f64 im im) (pow.f64 re 5)) (*.f64 re (*.f64 im im)))))
(+.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (*.f64 im im) (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))))
(*.f64 (*.f64 im im) (+.f64 (+.f64 re (*.f64 1/120 (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im im) (sin.f64 re))
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(*.f64 re (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 re 1/24))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (*.f64 1/24 (*.f64 re (pow.f64 im 4))))
(fma.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4)) (*.f64 1/24 (*.f64 re (pow.f64 im 4))))
(*.f64 (pow.f64 im 4) (fma.f64 re 1/24 (*.f64 (pow.f64 re 3) -1/144)))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4)))))
(fma.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4)))))
(+.f64 (*.f64 (pow.f64 im 4) (fma.f64 re 1/24 (*.f64 (pow.f64 re 3) -1/144))) (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 re 5) 1/2880)))
(*.f64 (pow.f64 im 4) (fma.f64 re 1/24 (fma.f64 (pow.f64 re 3) -1/144 (*.f64 (pow.f64 re 5) 1/2880))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4))) (*.f64 -1/120960 (*.f64 (pow.f64 re 7) (pow.f64 im 4))))))
(fma.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (fma.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4)) (*.f64 -1/120960 (*.f64 (pow.f64 re 7) (pow.f64 im 4))))))
(+.f64 (*.f64 (pow.f64 im 4) (fma.f64 re 1/24 (*.f64 (pow.f64 re 3) -1/144))) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 (pow.f64 re 7) -1/120960) (*.f64 (pow.f64 re 5) 1/2880))))
(*.f64 (pow.f64 im 4) (fma.f64 re 1/24 (fma.f64 (pow.f64 re 7) -1/120960 (fma.f64 (pow.f64 re 3) -1/144 (*.f64 (pow.f64 re 5) 1/2880)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 re)
(*.f64 re 1/24)
(+.f64 (*.f64 1/24 re) (*.f64 -1/144 (pow.f64 re 3)))
(fma.f64 1/24 re (*.f64 (pow.f64 re 3) -1/144))
(fma.f64 re 1/24 (*.f64 (pow.f64 re 3) -1/144))
(+.f64 (*.f64 1/24 re) (+.f64 (*.f64 -1/144 (pow.f64 re 3)) (*.f64 1/2880 (pow.f64 re 5))))
(fma.f64 1/24 re (fma.f64 -1/144 (pow.f64 re 3) (*.f64 (pow.f64 re 5) 1/2880)))
(fma.f64 re 1/24 (fma.f64 (pow.f64 re 3) -1/144 (*.f64 (pow.f64 re 5) 1/2880)))
(+.f64 (*.f64 1/24 re) (+.f64 (*.f64 -1/120960 (pow.f64 re 7)) (+.f64 (*.f64 -1/144 (pow.f64 re 3)) (*.f64 1/2880 (pow.f64 re 5)))))
(fma.f64 1/24 re (fma.f64 -1/120960 (pow.f64 re 7) (fma.f64 -1/144 (pow.f64 re 3) (*.f64 (pow.f64 re 5) 1/2880))))
(fma.f64 re 1/24 (fma.f64 (pow.f64 re 7) -1/120960 (fma.f64 (pow.f64 re 3) -1/144 (*.f64 (pow.f64 re 5) 1/2880))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4))))
(*.f64 re (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/144 (pow.f64 im 4)) (*.f64 -1/12 (pow.f64 im 2))) (pow.f64 re 3)) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re))
(fma.f64 (fma.f64 -1/144 (pow.f64 im 4) (*.f64 (*.f64 im im) -1/12)) (pow.f64 re 3) (*.f64 re (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4))) (*.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 4) -1/144 (*.f64 im (*.f64 im -1/12)))))
(fma.f64 re (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 (pow.f64 re 3) (*.f64 -1/12 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/144 (pow.f64 im 4)) (*.f64 -1/12 (pow.f64 im 2))) (pow.f64 re 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/2880 (pow.f64 im 4)) (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5)) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)))
(fma.f64 (fma.f64 -1/144 (pow.f64 im 4) (*.f64 (*.f64 im im) -1/12)) (pow.f64 re 3) (fma.f64 (fma.f64 1/2880 (pow.f64 im 4) (*.f64 (*.f64 im im) 1/240)) (pow.f64 re 5) (*.f64 re (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(fma.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 4) -1/144 (*.f64 im (*.f64 im -1/12))) (fma.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4))) (*.f64 (pow.f64 re 5) (fma.f64 (pow.f64 im 4) 1/2880 (*.f64 im (*.f64 im 1/240))))))
(fma.f64 (pow.f64 re 3) (*.f64 -1/12 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (fma.f64 re (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 (pow.f64 re 5) (*.f64 1/240 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/144 (pow.f64 im 4)) (*.f64 -1/12 (pow.f64 im 2))) (pow.f64 re 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/2880 (pow.f64 im 4)) (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/10080 (pow.f64 im 2)) (*.f64 -1/120960 (pow.f64 im 4))) (pow.f64 re 7)) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re))))
(fma.f64 (fma.f64 -1/144 (pow.f64 im 4) (*.f64 (*.f64 im im) -1/12)) (pow.f64 re 3) (fma.f64 (fma.f64 1/2880 (pow.f64 im 4) (*.f64 (*.f64 im im) 1/240)) (pow.f64 re 5) (fma.f64 (fma.f64 -1/10080 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/120960)) (pow.f64 re 7) (*.f64 re (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(fma.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 4) -1/144 (*.f64 im (*.f64 im -1/12))) (fma.f64 (pow.f64 re 5) (fma.f64 (pow.f64 im 4) 1/2880 (*.f64 im (*.f64 im 1/240))) (fma.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4))) (*.f64 (pow.f64 re 7) (fma.f64 (pow.f64 im 4) -1/120960 (*.f64 im (*.f64 im -1/10080)))))))
(fma.f64 (pow.f64 re 3) (*.f64 -1/12 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (fma.f64 (pow.f64 re 5) (*.f64 1/240 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (fma.f64 re (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 (pow.f64 re 7) (fma.f64 (*.f64 im im) -1/10080 (*.f64 (pow.f64 im 4) -1/120960))))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (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))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (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))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 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 (/.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 1/4 (*.f64 re re))))
(+.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 1/4 (*.f64 re re))) (fma.f64 (*.f64 re re) 1/60 (*.f64 1/378 (pow.f64 re 4))))
(+.f64 (/.f64 1/4 (*.f64 re re)) (+.f64 1/12 (fma.f64 (*.f64 re re) 1/60 (*.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 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(fma.f64 (*.f64 re (*.f64 im im)) 1/2 re)
(fma.f64 (*.f64 re 1/2) (*.f64 im im) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2)))
(+.f64 re (*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im 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))))))
(fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (fma.f64 1/720 (*.f64 re (pow.f64 im 6)) (+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))))
(+.f64 (fma.f64 (*.f64 re 1/720) (pow.f64 im 6) re) (*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 re (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (fma.f64 (*.f64 re 1/720) (pow.f64 im 6) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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 re 1/2))
(*.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)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))
(+.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 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 (pow.f64 im 4) 1/12 (*.f64 (pow.f64 im 6) 1/360)))
(+.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 im 6) 1/360 (*.f64 (pow.f64 im 4) 1/12)))
(+.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 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re))
(fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2)))
(+.f64 re (*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im im 2))))
(+.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 (pow.f64 re 3) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) (*.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 (pow.f64 im 4) 1/12 (*.f64 im im)))) (*.f64 (pow.f64 re 3) (+.f64 -1/6 (*.f64 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)) -1/12))))
(*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
(+.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 (pow.f64 re 5) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) (fma.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) (*.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))))
(fma.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))) (fma.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))) (*.f64 (pow.f64 re 3) (+.f64 -1/6 (*.f64 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)) -1/12)))))
(fma.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12))))
(+.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 (pow.f64 re 7) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) (fma.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) (*.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))))))
(fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))) (fma.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))) (*.f64 (pow.f64 re 3) (+.f64 -1/6 (*.f64 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)) -1/12))))))
(+.f64 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 (pow.f64 re 5) 1/240))) (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 7) -1/10080))))
(*.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 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im im 2))))
(*.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 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im im 2))))
(*.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 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im im 2))))
(*.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 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im im 2))))
(*.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 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im im 2))))
(*.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 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im im 2))))
(*.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 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im im 2))))
(*.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 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.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 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (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 1/2 (*.f64 (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 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.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 1/2 (*.f64 (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 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (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))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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/2 (*.f64 (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 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.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 1/2 (*.f64 (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 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (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))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) 1/2 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.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/2 (*.f64 (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 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.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 1/2 (*.f64 (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 (pow.f64 im 4) 1/12 (*.f64 im im)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
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)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(+.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)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))
(fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))
(+.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)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(+.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)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))
(fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))
(+.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)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(+.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)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(pow.f64 im 2)
(*.f64 im im)
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(pow.f64 im 2)
(*.f64 im im)
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.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))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) -512)
(+.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 512)
(/.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))
(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)
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re)))) -512)
(+.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/2641807540224))) 512)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) -512)
(pow.f64 (*.f64 (sin.f64 re) 1/2641807540224) -512)
(*.f64 (pow.f64 (sin.f64 re) -512) 1031339869656042770462666398463678116138530815176545460136027594390123337825196168754680265420140073395544363891826238982533448898163431946124519218649914052122284358480308623238909692966953090477358642788434332976278753062379874857129760518884438059523779038778376562475968728271555620876912167719814111296666955381815532960427086780318254094763546563051356057780569828494174637891809325493561645737665782713363543712635440823708865918424340190158341815428316171627377574668462991238158390192250288897693135320473913674527581516101850765018020945336371710885560793696047772840980718025488430771940516729052954134294224548997935290905627120059628061372849553926443285699152131429058310354517277602034405915767912448128458460559978592110117990962576992128299920434114042223733016352410174167951420702597662858670032887809768893513898812012285190347328554154134975462033278021221469611360796720747494910814094911220810308594339817210950905170346170595674423395128784110581534241044598578748038882684352725307780291997689441458187397004297118515059250598919277339210108388022611706393437538128353998906526144463843879428155297835651289359101849986499460875359873392738643076481902119677111712668985894999519246284931499144468972335671357809037946503160037324608746698303579629805525423386924079369578111504721924519054325515150936901494177418404595174443228973725657775470255148135756769611995308933122652267542231203091052743943221234789851317121551056376367470790777126504539583548663036560738709181616909174425845918357207021543937863706379375448045456424397207822553196862824393570563444634878817458513875698915660856535273617645666138648150904590243113447782325524134164745722969398260860955098328737347926389013864754288636499323745989931841743719483566816830364495850690668176313402388378309764206186145546317517402363555426629280470807627170919881900155878553020982072191943402167890350668275916364528496233013913369485624242661597311332333742652179111068772405376064923285598656580640523473723064178468889549223883619143796068297671481885945534669021025279534501005949291527092666344107614676383640845666060369427171208354750476636054899942435470225123195044534587735009766930675526210223535407188246662054885678501870413510505401193450757502911367228020289211501310875205482050720331461440522842814849224156600057064725522122756731976076840804464824340691981901796857583540082150178175557815692463186950522100479244805412728558859469980786389462421728536049084514044672892900930369353650882142743789838226614297297798135025839279803294671125185717686347187516816512856088422940581269381778621441316729411613010005808351953674975838963603624530358115442890679628438651869941942275192619959803770462328735351681979108318532363198511988199999391223225564664430552227544074808783299187344234524059956256643908535741581653497194465540372262837168089979474668832713532352497734116826839887008487391253311245758856933414481672828183427697528757526048637289715648182510401911944267433599930163169023657720832652696269158011415058599394633237961857856908326372349549506233347503146929076157556566970227909111584068399926979517569792294754397175394814439800407395150296464275613451883538138247985285094324859524339114789411198629612061147291954261759621367722008655405139612503259223021968155006235255024494733371872492501050318156591696064541233208183010803047568614146717318018440912021754817214797228647839376065271680020647075571270115537879491063954399514405632161824694756461873353171065513092890235901593947939031264195612057028015668207240363281582051589235612779547145789280428612791931503117977813002257440908556085887763749599381855318255284595692237343948198661585989005660571439446997117716633452961401810637200222483199820570497505524063091687236213147207567292787579236335628599536015864418118698125411427282309488829282722351615240128624699939394477476952116196673746197648345884666349144455159330778289674820738191218940113394447823790318018391182126338564280855452410910969418652594231010109712950398975741581046192175316664599122864149786932890198880442597190518972027946352075441835372963414097339857483177290642023471352819388615148077044470185948689659109305929800867432290062024018710318107062673440914275364470153746050639649607593652715962714926494555095519392403668860584201488805287537084453680941711845513705959735723309852107654290566943398558769166076651422358089037492575314697669790324981780556977261373494881149514144535205579434945376141533006332307040369940593777669554848484620738288293415974832631899246858292742738343551332346130712813128872077903638411530572063476479276736525140360645998567591450875920493283783132710557074999451630011151333896586856997954576567719387687474351840208470786651964928807906670105171166123224523608286556105364155792409912334996350184244088830892611949981955824744455049583768675777003765507258918013801523586597836262266165419498349170543181296384532597260547088444963645755289408843415620359121394621134953285085419968833129092593831811419093649054957555557923824448086205665648390509436805333115897830666146335195604987862956066175822385936414669755848843040528610569352758710573270007443974206022513361109696441849844846292929209384566861207924192530563955366828837229814980483717539103941604580255639239616874314625662979435289240171087787550736859228119329374683807091676978876441010525316607863955239353646460270331096143262096521723141406864488801501165305003732364843718620718203306694259944356282994175247501459887313226386214933461792173801438760836160718445767493931966735983767753944685657292419613307098394861410174721401925916217728305656210491558757637449881958571198700087530650910026256525404946315722644989846470826141109310804105556559933513313315615551349102915952120960713938514442026097648619134214804423863934164364700558933064526821626220481733092575910628894631408451172152925105357552626919814623376431927011949468561030173471423690665122357185457120916600286296663162165887452817500080721911454101676384744991119463513544248887257363563149191886482545824101281260589291717864808131278777885610331811303638170413528328588549224642248686645714899466780713722920092024621008641756743551558493777271508703424142231142453483087174189558236660811244179533096472046130978172367131719415674973208681910448589680636501172496419347062964745199993070807693927670080984817074176)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 re) 1/2641807540224))
(sqrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(sqrt.f64 (*.f64 (sin.f64 re) 1/2641807540224))
(fabs.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(*.f64 1/2641807540224 (fabs.f64 (sin.f64 re)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/2641807540224)
(*.f64 (sin.f64 re) 1/2641807540224)
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2641807540224))
(*.f64 1/2641807540224 (fabs.f64 (sin.f64 re)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/2641807540224)
(*.f64 (sin.f64 re) 1/2641807540224)
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re)))))
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 (sin.f64 re) 1/2641807540224))))
(cbrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(cbrt.f64 (*.f64 (sin.f64 re) 1/2641807540224))
(expm1.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 1/2641807540224 (fabs.f64 (sin.f64 re)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/2641807540224)
(*.f64 (sin.f64 re) 1/2641807540224)
(exp.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 1/2641807540224 (fabs.f64 (sin.f64 re)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/2641807540224)
(*.f64 (sin.f64 re) 1/2641807540224)
(exp.f64 (*.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))) -512))
(pow.f64 (*.f64 (sin.f64 re) 1/2641807540224) -512)
(*.f64 (pow.f64 (sin.f64 re) -512) 1031339869656042770462666398463678116138530815176545460136027594390123337825196168754680265420140073395544363891826238982533448898163431946124519218649914052122284358480308623238909692966953090477358642788434332976278753062379874857129760518884438059523779038778376562475968728271555620876912167719814111296666955381815532960427086780318254094763546563051356057780569828494174637891809325493561645737665782713363543712635440823708865918424340190158341815428316171627377574668462991238158390192250288897693135320473913674527581516101850765018020945336371710885560793696047772840980718025488430771940516729052954134294224548997935290905627120059628061372849553926443285699152131429058310354517277602034405915767912448128458460559978592110117990962576992128299920434114042223733016352410174167951420702597662858670032887809768893513898812012285190347328554154134975462033278021221469611360796720747494910814094911220810308594339817210950905170346170595674423395128784110581534241044598578748038882684352725307780291997689441458187397004297118515059250598919277339210108388022611706393437538128353998906526144463843879428155297835651289359101849986499460875359873392738643076481902119677111712668985894999519246284931499144468972335671357809037946503160037324608746698303579629805525423386924079369578111504721924519054325515150936901494177418404595174443228973725657775470255148135756769611995308933122652267542231203091052743943221234789851317121551056376367470790777126504539583548663036560738709181616909174425845918357207021543937863706379375448045456424397207822553196862824393570563444634878817458513875698915660856535273617645666138648150904590243113447782325524134164745722969398260860955098328737347926389013864754288636499323745989931841743719483566816830364495850690668176313402388378309764206186145546317517402363555426629280470807627170919881900155878553020982072191943402167890350668275916364528496233013913369485624242661597311332333742652179111068772405376064923285598656580640523473723064178468889549223883619143796068297671481885945534669021025279534501005949291527092666344107614676383640845666060369427171208354750476636054899942435470225123195044534587735009766930675526210223535407188246662054885678501870413510505401193450757502911367228020289211501310875205482050720331461440522842814849224156600057064725522122756731976076840804464824340691981901796857583540082150178175557815692463186950522100479244805412728558859469980786389462421728536049084514044672892900930369353650882142743789838226614297297798135025839279803294671125185717686347187516816512856088422940581269381778621441316729411613010005808351953674975838963603624530358115442890679628438651869941942275192619959803770462328735351681979108318532363198511988199999391223225564664430552227544074808783299187344234524059956256643908535741581653497194465540372262837168089979474668832713532352497734116826839887008487391253311245758856933414481672828183427697528757526048637289715648182510401911944267433599930163169023657720832652696269158011415058599394633237961857856908326372349549506233347503146929076157556566970227909111584068399926979517569792294754397175394814439800407395150296464275613451883538138247985285094324859524339114789411198629612061147291954261759621367722008655405139612503259223021968155006235255024494733371872492501050318156591696064541233208183010803047568614146717318018440912021754817214797228647839376065271680020647075571270115537879491063954399514405632161824694756461873353171065513092890235901593947939031264195612057028015668207240363281582051589235612779547145789280428612791931503117977813002257440908556085887763749599381855318255284595692237343948198661585989005660571439446997117716633452961401810637200222483199820570497505524063091687236213147207567292787579236335628599536015864418118698125411427282309488829282722351615240128624699939394477476952116196673746197648345884666349144455159330778289674820738191218940113394447823790318018391182126338564280855452410910969418652594231010109712950398975741581046192175316664599122864149786932890198880442597190518972027946352075441835372963414097339857483177290642023471352819388615148077044470185948689659109305929800867432290062024018710318107062673440914275364470153746050639649607593652715962714926494555095519392403668860584201488805287537084453680941711845513705959735723309852107654290566943398558769166076651422358089037492575314697669790324981780556977261373494881149514144535205579434945376141533006332307040369940593777669554848484620738288293415974832631899246858292742738343551332346130712813128872077903638411530572063476479276736525140360645998567591450875920493283783132710557074999451630011151333896586856997954576567719387687474351840208470786651964928807906670105171166123224523608286556105364155792409912334996350184244088830892611949981955824744455049583768675777003765507258918013801523586597836262266165419498349170543181296384532597260547088444963645755289408843415620359121394621134953285085419968833129092593831811419093649054957555557923824448086205665648390509436805333115897830666146335195604987862956066175822385936414669755848843040528610569352758710573270007443974206022513361109696441849844846292929209384566861207924192530563955366828837229814980483717539103941604580255639239616874314625662979435289240171087787550736859228119329374683807091676978876441010525316607863955239353646460270331096143262096521723141406864488801501165305003732364843718620718203306694259944356282994175247501459887313226386214933461792173801438760836160718445767493931966735983767753944685657292419613307098394861410174721401925916217728305656210491558757637449881958571198700087530650910026256525404946315722644989846470826141109310804105556559933513313315615551349102915952120960713938514442026097648619134214804423863934164364700558933064526821626220481733092575910628894631408451172152925105357552626919814623376431927011949468561030173471423690665122357185457120916600286296663162165887452817500080721911454101676384744991119463513544248887257363563149191886482545824101281260589291717864808131278777885610331811303638170413528328588549224642248686645714899466780713722920092024621008641756743551558493777271508703424142231142453483087174189558236660811244179533096472046130978172367131719415674973208681910448589680636501172496419347062964745199993070807693927670080984817074176)
(log1p.f64 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 1/2641807540224 (fabs.f64 (sin.f64 re)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/2641807540224)
(*.f64 (sin.f64 re) 1/2641807540224)
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re)))) -512)
(+.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 1/2641807540224))) 512)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) -512)
(pow.f64 (*.f64 (sin.f64 re) 1/2641807540224) -512)
(*.f64 (pow.f64 (sin.f64 re) -512) 1031339869656042770462666398463678116138530815176545460136027594390123337825196168754680265420140073395544363891826238982533448898163431946124519218649914052122284358480308623238909692966953090477358642788434332976278753062379874857129760518884438059523779038778376562475968728271555620876912167719814111296666955381815532960427086780318254094763546563051356057780569828494174637891809325493561645737665782713363543712635440823708865918424340190158341815428316171627377574668462991238158390192250288897693135320473913674527581516101850765018020945336371710885560793696047772840980718025488430771940516729052954134294224548997935290905627120059628061372849553926443285699152131429058310354517277602034405915767912448128458460559978592110117990962576992128299920434114042223733016352410174167951420702597662858670032887809768893513898812012285190347328554154134975462033278021221469611360796720747494910814094911220810308594339817210950905170346170595674423395128784110581534241044598578748038882684352725307780291997689441458187397004297118515059250598919277339210108388022611706393437538128353998906526144463843879428155297835651289359101849986499460875359873392738643076481902119677111712668985894999519246284931499144468972335671357809037946503160037324608746698303579629805525423386924079369578111504721924519054325515150936901494177418404595174443228973725657775470255148135756769611995308933122652267542231203091052743943221234789851317121551056376367470790777126504539583548663036560738709181616909174425845918357207021543937863706379375448045456424397207822553196862824393570563444634878817458513875698915660856535273617645666138648150904590243113447782325524134164745722969398260860955098328737347926389013864754288636499323745989931841743719483566816830364495850690668176313402388378309764206186145546317517402363555426629280470807627170919881900155878553020982072191943402167890350668275916364528496233013913369485624242661597311332333742652179111068772405376064923285598656580640523473723064178468889549223883619143796068297671481885945534669021025279534501005949291527092666344107614676383640845666060369427171208354750476636054899942435470225123195044534587735009766930675526210223535407188246662054885678501870413510505401193450757502911367228020289211501310875205482050720331461440522842814849224156600057064725522122756731976076840804464824340691981901796857583540082150178175557815692463186950522100479244805412728558859469980786389462421728536049084514044672892900930369353650882142743789838226614297297798135025839279803294671125185717686347187516816512856088422940581269381778621441316729411613010005808351953674975838963603624530358115442890679628438651869941942275192619959803770462328735351681979108318532363198511988199999391223225564664430552227544074808783299187344234524059956256643908535741581653497194465540372262837168089979474668832713532352497734116826839887008487391253311245758856933414481672828183427697528757526048637289715648182510401911944267433599930163169023657720832652696269158011415058599394633237961857856908326372349549506233347503146929076157556566970227909111584068399926979517569792294754397175394814439800407395150296464275613451883538138247985285094324859524339114789411198629612061147291954261759621367722008655405139612503259223021968155006235255024494733371872492501050318156591696064541233208183010803047568614146717318018440912021754817214797228647839376065271680020647075571270115537879491063954399514405632161824694756461873353171065513092890235901593947939031264195612057028015668207240363281582051589235612779547145789280428612791931503117977813002257440908556085887763749599381855318255284595692237343948198661585989005660571439446997117716633452961401810637200222483199820570497505524063091687236213147207567292787579236335628599536015864418118698125411427282309488829282722351615240128624699939394477476952116196673746197648345884666349144455159330778289674820738191218940113394447823790318018391182126338564280855452410910969418652594231010109712950398975741581046192175316664599122864149786932890198880442597190518972027946352075441835372963414097339857483177290642023471352819388615148077044470185948689659109305929800867432290062024018710318107062673440914275364470153746050639649607593652715962714926494555095519392403668860584201488805287537084453680941711845513705959735723309852107654290566943398558769166076651422358089037492575314697669790324981780556977261373494881149514144535205579434945376141533006332307040369940593777669554848484620738288293415974832631899246858292742738343551332346130712813128872077903638411530572063476479276736525140360645998567591450875920493283783132710557074999451630011151333896586856997954576567719387687474351840208470786651964928807906670105171166123224523608286556105364155792409912334996350184244088830892611949981955824744455049583768675777003765507258918013801523586597836262266165419498349170543181296384532597260547088444963645755289408843415620359121394621134953285085419968833129092593831811419093649054957555557923824448086205665648390509436805333115897830666146335195604987862956066175822385936414669755848843040528610569352758710573270007443974206022513361109696441849844846292929209384566861207924192530563955366828837229814980483717539103941604580255639239616874314625662979435289240171087787550736859228119329374683807091676978876441010525316607863955239353646460270331096143262096521723141406864488801501165305003732364843718620718203306694259944356282994175247501459887313226386214933461792173801438760836160718445767493931966735983767753944685657292419613307098394861410174721401925916217728305656210491558757637449881958571198700087530650910026256525404946315722644989846470826141109310804105556559933513313315615551349102915952120960713938514442026097648619134214804423863934164364700558933064526821626220481733092575910628894631408451172152925105357552626919814623376431927011949468561030173471423690665122357185457120916600286296663162165887452817500080721911454101676384744991119463513544248887257363563149191886482545824101281260589291717864808131278777885610331811303638170413528328588549224642248686645714899466780713722920092024621008641756743551558493777271508703424142231142453483087174189558236660811244179533096472046130978172367131719415674973208681910448589680636501172496419347062964745199993070807693927670080984817074176)
(pow.f64 (*.f64 1/2641807540224 (sin.f64 re)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 re) 1/2641807540224))
(sqrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(sqrt.f64 (*.f64 (sin.f64 re) 1/2641807540224))
(fabs.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(*.f64 1/2641807540224 (fabs.f64 (sin.f64 re)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/2641807540224)
(*.f64 (sin.f64 re) 1/2641807540224)
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2641807540224))
(*.f64 1/2641807540224 (fabs.f64 (sin.f64 re)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/2641807540224)
(*.f64 (sin.f64 re) 1/2641807540224)
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re)))))
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 (sin.f64 re) 1/2641807540224))))
(cbrt.f64 (*.f64 1/2641807540224 (sin.f64 re)))
(cbrt.f64 (*.f64 (sin.f64 re) 1/2641807540224))
(expm1.f64 (log1p.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 1/2641807540224 (fabs.f64 (sin.f64 re)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/2641807540224)
(*.f64 (sin.f64 re) 1/2641807540224)
(exp.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 1/2641807540224 (fabs.f64 (sin.f64 re)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/2641807540224)
(*.f64 (sin.f64 re) 1/2641807540224)
(exp.f64 (*.f64 (log.f64 (*.f64 1/2641807540224 (sin.f64 re))) -512))
(pow.f64 (*.f64 (sin.f64 re) 1/2641807540224) -512)
(*.f64 (pow.f64 (sin.f64 re) -512) 1031339869656042770462666398463678116138530815176545460136027594390123337825196168754680265420140073395544363891826238982533448898163431946124519218649914052122284358480308623238909692966953090477358642788434332976278753062379874857129760518884438059523779038778376562475968728271555620876912167719814111296666955381815532960427086780318254094763546563051356057780569828494174637891809325493561645737665782713363543712635440823708865918424340190158341815428316171627377574668462991238158390192250288897693135320473913674527581516101850765018020945336371710885560793696047772840980718025488430771940516729052954134294224548997935290905627120059628061372849553926443285699152131429058310354517277602034405915767912448128458460559978592110117990962576992128299920434114042223733016352410174167951420702597662858670032887809768893513898812012285190347328554154134975462033278021221469611360796720747494910814094911220810308594339817210950905170346170595674423395128784110581534241044598578748038882684352725307780291997689441458187397004297118515059250598919277339210108388022611706393437538128353998906526144463843879428155297835651289359101849986499460875359873392738643076481902119677111712668985894999519246284931499144468972335671357809037946503160037324608746698303579629805525423386924079369578111504721924519054325515150936901494177418404595174443228973725657775470255148135756769611995308933122652267542231203091052743943221234789851317121551056376367470790777126504539583548663036560738709181616909174425845918357207021543937863706379375448045456424397207822553196862824393570563444634878817458513875698915660856535273617645666138648150904590243113447782325524134164745722969398260860955098328737347926389013864754288636499323745989931841743719483566816830364495850690668176313402388378309764206186145546317517402363555426629280470807627170919881900155878553020982072191943402167890350668275916364528496233013913369485624242661597311332333742652179111068772405376064923285598656580640523473723064178468889549223883619143796068297671481885945534669021025279534501005949291527092666344107614676383640845666060369427171208354750476636054899942435470225123195044534587735009766930675526210223535407188246662054885678501870413510505401193450757502911367228020289211501310875205482050720331461440522842814849224156600057064725522122756731976076840804464824340691981901796857583540082150178175557815692463186950522100479244805412728558859469980786389462421728536049084514044672892900930369353650882142743789838226614297297798135025839279803294671125185717686347187516816512856088422940581269381778621441316729411613010005808351953674975838963603624530358115442890679628438651869941942275192619959803770462328735351681979108318532363198511988199999391223225564664430552227544074808783299187344234524059956256643908535741581653497194465540372262837168089979474668832713532352497734116826839887008487391253311245758856933414481672828183427697528757526048637289715648182510401911944267433599930163169023657720832652696269158011415058599394633237961857856908326372349549506233347503146929076157556566970227909111584068399926979517569792294754397175394814439800407395150296464275613451883538138247985285094324859524339114789411198629612061147291954261759621367722008655405139612503259223021968155006235255024494733371872492501050318156591696064541233208183010803047568614146717318018440912021754817214797228647839376065271680020647075571270115537879491063954399514405632161824694756461873353171065513092890235901593947939031264195612057028015668207240363281582051589235612779547145789280428612791931503117977813002257440908556085887763749599381855318255284595692237343948198661585989005660571439446997117716633452961401810637200222483199820570497505524063091687236213147207567292787579236335628599536015864418118698125411427282309488829282722351615240128624699939394477476952116196673746197648345884666349144455159330778289674820738191218940113394447823790318018391182126338564280855452410910969418652594231010109712950398975741581046192175316664599122864149786932890198880442597190518972027946352075441835372963414097339857483177290642023471352819388615148077044470185948689659109305929800867432290062024018710318107062673440914275364470153746050639649607593652715962714926494555095519392403668860584201488805287537084453680941711845513705959735723309852107654290566943398558769166076651422358089037492575314697669790324981780556977261373494881149514144535205579434945376141533006332307040369940593777669554848484620738288293415974832631899246858292742738343551332346130712813128872077903638411530572063476479276736525140360645998567591450875920493283783132710557074999451630011151333896586856997954576567719387687474351840208470786651964928807906670105171166123224523608286556105364155792409912334996350184244088830892611949981955824744455049583768675777003765507258918013801523586597836262266165419498349170543181296384532597260547088444963645755289408843415620359121394621134953285085419968833129092593831811419093649054957555557923824448086205665648390509436805333115897830666146335195604987862956066175822385936414669755848843040528610569352758710573270007443974206022513361109696441849844846292929209384566861207924192530563955366828837229814980483717539103941604580255639239616874314625662979435289240171087787550736859228119329374683807091676978876441010525316607863955239353646460270331096143262096521723141406864488801501165305003732364843718620718203306694259944356282994175247501459887313226386214933461792173801438760836160718445767493931966735983767753944685657292419613307098394861410174721401925916217728305656210491558757637449881958571198700087530650910026256525404946315722644989846470826141109310804105556559933513313315615551349102915952120960713938514442026097648619134214804423863934164364700558933064526821626220481733092575910628894631408451172152925105357552626919814623376431927011949468561030173471423690665122357185457120916600286296663162165887452817500080721911454101676384744991119463513544248887257363563149191886482545824101281260589291717864808131278777885610331811303638170413528328588549224642248686645714899466780713722920092024621008641756743551558493777271508703424142231142453483087174189558236660811244179533096472046130978172367131719415674973208681910448589680636501172496419347062964745199993070807693927670080984817074176)
(log1p.f64 (expm1.f64 (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 1/2641807540224 (fabs.f64 (sin.f64 re)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/2641807540224)
(*.f64 (sin.f64 re) 1/2641807540224)
(+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))
(*.f64 2641807540225/2641807540224 (sin.f64 re))
(*.f64 (sin.f64 re) 2641807540225/2641807540224)
(+.f64 (*.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (sin.f64 re)) (*.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)) (*.f64 2641807540225/2641807540224 (sin.f64 re)))
(*.f64 6979147079589664993050625/6979147079584381377970176 (pow.f64 (sin.f64 re) 2))
(*.f64 (pow.f64 (sin.f64 re) 2) 6979147079589664993050625/6979147079584381377970176)
(+.f64 (*.f64 (sin.f64 re) (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))) (*.f64 (*.f64 1/2641807540224 (sin.f64 re)) (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(*.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)) (*.f64 2641807540225/2641807540224 (sin.f64 re)))
(*.f64 6979147079589664993050625/6979147079584381377970176 (pow.f64 (sin.f64 re) 2))
(*.f64 (pow.f64 (sin.f64 re) 2) 6979147079589664993050625/6979147079584381377970176)
(-.f64 (exp.f64 (log1p.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))) -512)
(+.f64 (exp.f64 (log1p.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)))) 512)
(+.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) 2641807540225/2641807540224))) 512)
(*.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)) (*.f64 2641807540225/2641807540224 (sin.f64 re)))
(*.f64 6979147079589664993050625/6979147079584381377970176 (pow.f64 (sin.f64 re) 2))
(*.f64 (pow.f64 (sin.f64 re) 2) 6979147079589664993050625/6979147079584381377970176)
(*.f64 -512 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 -512 (*.f64 2641807540225/2641807540224 (sin.f64 re)))
(*.f64 -2641807540225/5159780352 (sin.f64 re))
(*.f64 (sin.f64 re) -2641807540225/5159780352)
(/.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (+.f64 (sin.f64 re) (-.f64 (*.f64 1/2641807540224 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))))
(/.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)) (-.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/2641807540224))))
(/.f64 (*.f64 (sin.f64 re) 2641807540225/2641807540224) (*.f64 (sin.f64 re) (-.f64 2641807540225/2641807540224 (*.f64 (sin.f64 re) 1/2641807540224))))
(*.f64 (/.f64 (sin.f64 re) (sin.f64 re)) (/.f64 2641807540225/2641807540224 (-.f64 2641807540225/2641807540224 (*.f64 (sin.f64 re) 1/2641807540224))))
(/.f64 (-.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) (-.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
1
(pow.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) -512)
(pow.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)) -512)
(pow.f64 (*.f64 (sin.f64 re) 2641807540225/2641807540224) -512)
(pow.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))) 1/3)
(cbrt.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)))
(cbrt.f64 (*.f64 (sin.f64 re) 2641807540225/2641807540224))
(sqrt.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(sqrt.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)))
(sqrt.f64 (*.f64 (sin.f64 re) 2641807540225/2641807540224))
(fabs.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(*.f64 2641807540225/2641807540224 (sin.f64 re))
(*.f64 (sin.f64 re) 2641807540225/2641807540224)
(log.f64 (exp.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(*.f64 2641807540225/2641807540224 (sin.f64 re))
(*.f64 (sin.f64 re) 2641807540225/2641807540224)
(log.f64 (+.f64 -512 (expm1.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))))
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)))))
(log.f64 (+.f64 -512 (expm1.f64 (*.f64 (sin.f64 re) 2641807540225/2641807540224))))
(cbrt.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re))))
(cbrt.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)))
(cbrt.f64 (*.f64 (sin.f64 re) 2641807540225/2641807540224))
(expm1.f64 (log1p.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(*.f64 2641807540225/2641807540224 (sin.f64 re))
(*.f64 (sin.f64 re) 2641807540225/2641807540224)
(exp.f64 (log.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(*.f64 2641807540225/2641807540224 (sin.f64 re))
(*.f64 (sin.f64 re) 2641807540225/2641807540224)
(exp.f64 (*.f64 (log.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))) -512))
(pow.f64 (*.f64 2641807540225/2641807540224 (sin.f64 re)) -512)
(pow.f64 (*.f64 (sin.f64 re) 2641807540225/2641807540224) -512)
(log1p.f64 (expm1.f64 (+.f64 (sin.f64 re) (*.f64 1/2641807540224 (sin.f64 re)))))
(*.f64 2641807540225/2641807540224 (sin.f64 re))
(*.f64 (sin.f64 re) 2641807540225/2641807540224)
(+.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))
(-.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 -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))
(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)
(+.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
(+.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 (sin.f64 re) (*.f64 (*.f64 (sin.f64 re) 1/5159780352) -512))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) -1/10077696))
(fma.f64 (sin.f64 re) -1/10077696 (sin.f64 re))
(*.f64 10077695/10077696 (sin.f64 re))
(+.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 (*.f64 (sin.f64 re) 1/5159780352) (sin.f64 re)) (*.f64 (sin.f64 re) 1/5159780352))
(*.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) 1/5159780352) 1/5159780352))
(*.f64 (sin.f64 re) (fma.f64 (sin.f64 re) 1/5159780352 1/5159780352))
(+.f64 (*.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352)) (*.f64 (sin.f64 re) 1/5159780352))
(*.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) 1/5159780352) 1/5159780352))
(*.f64 (sin.f64 re) (fma.f64 (sin.f64 re) 1/5159780352 1/5159780352))
(-.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) (+.f64 (sin.f64 re) (-.f64 (*.f64 (sin.f64 re) 1/5159780352) (*.f64 (sin.f64 re) (*.f64 (sin.f64 re) 1/5159780352)))))
(/.f64 (*.f64 (sin.f64 re) 1/5159780352) (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (-.f64 1/5159780352 (*.f64 (sin.f64 re) 1/5159780352)))))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 (sin.f64 re) (+.f64 1/5159780352 (*.f64 (sin.f64 re) -1/5159780352)) (sin.f64 re))) 1/5159780352)
(*.f64 1/5159780352 (/.f64 (sin.f64 re) (*.f64 (sin.f64 re) (-.f64 5159780353/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)))
1
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 (pow.f64 (sin.f64 re) -512) 73651532436445428098818655865528114694107218730166129960353043628366716242278403901337450600270017144964118912384922467617333908026653437203847794375364293665491204417255737422691077233211780842298254748119762897728859353913005374777193725365755971516176488315830506986535400394363123421903029158587191787691686609700229771653793320498966091999627805330849795630674429195197836526893184065502184119708581323943442987842789846554275431918232581298453541403708918264371778921957751950371791590412951782659708369648771304660540100514107370682112643437954654945347472777223965755333452161963280889277693493724570780337687714366064129682491828605355294070823617465627307492686462872597371059373343775865561244945115406802197104838635721640703576673673671111771474554772417869011555606662336891031962824712544843681532680928659344967752201466721705675762818636079563734952384622926816322735026130467153905013961429594281012183777340383074468145173253762163952409249737357497968255868730494877930161802819769341532009687526725083751130144717838189385932097110102570533726684460531252641463605918779481336844430192072039399798393399519288092349344920363540193886961736891286967040011363999665661597873475790716002499818483936559921014922009697000854646093810852836188325574693249210095444297281727389452673071084013677729910108256415946030583226122466896325489218386357779396644783993693863239451010014788082731949502610122271423020409971551784850206477025394629132042811557706509332413597375426674507811619580281123096415469794268575929326241905330436436410494576245543442013619454936248475017439154765595239321580744815796609159033930932512345403399468101900742632220200291091071118434228522635214663116947208488401604047551476501156140052635949272209963610837232213421527126655195865015219963144937090000870652423185465536968941956455756507762505965203484658804599271766380122793692727550804460519827615338094985933923881833740865194356429831211326618670738068685903773381920670131380800594415476395333778820568375192533202335923241473561159617555436057228674945001446898644924975422324153706621808149152748323578544332332519168415632478141699545111051794442821238635510073460627155094403436982694321313214801607432590649361280999547917778231832951440536369448945515000460748434119613350569744059208663754792456436367176921970925682735396682470085506478116084259891794273595591681086300417357525392010202224805368527120160550953351352673719029700138160301432212324285112929391747247754969777061372872428017067243861354291256221427080574620143885356421552276892307865506548503137378157930354382696254729097369769646351243119030813624341065402384360120995930299738520914081665952989957514296736127673357629806259973877783560050591966359834849695664993348385744703196146825439875223763498561969737550986980089381658319195033619787968695649010999531438008444221495329001898110184800919116341355774054894293189389447309601390044231368670228769950283533501585152970041647315736615251063413352760336692774400912615717114449810121465475997198993893568221292207081575288346999205513647269120874590495308174266013642100964022100120913379454308257490325096402753766521193263206171378044662422072575475399058483262201205125243328686166894649039376146452271663758713637495451663895045175971248337689396908566111455613925815642500797361175986327564254047386701435636502100944373975755171885309229021632036380799805685604577927585552192139475858853776143178229660141814854761695972863440759651571751800033198572933315246605498330448506945816943431264736253739343616107962806953800673001705502367147401142548084272355649855174770425103059576792933279150748106570025837620301551383514493051810461335764837352447734166406641702773391010389184349131533171911616645523604852567509362077325984605918249877108470816812449533831950151115612509626924323082751936116290239265924819928422093970960278732294841412078853431219777141992837841353838497300604001800122822217367641359928223954577905304552589711614296619685935228951354035364124892280606746271675306355410837002674190914082702428009506282653262707624302337657753113762574417233480841205337801384802615564199108534305971602086272107922222247571245139918679272508380134934083152108197932713590745521329348107216451430291796890455008356539419318533467356687732965260215655993119953718184817135560479757240169172970226422055971942996965279489975573619057116994919676621868268223266743057576563378293299711819941022381474523225930552368902040382394626429233983547350822442332319590988946788298060039099711028733781466254887994350909632565892427537133810314415606826409836774243538052235538349337454517908440333962147395133709338872737257083336622151557612956544257897031403732484396171795793376003083115787739261017258474484010650803356363238229653593031609985245477460542954596565227918435787278598262114109219152596811398275068278931073999914546249633922819967198669798538953534472626917915043747049050384162590981452438296053557137257961877405696)
(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 (fabs.f64 (sin.f64 re)) 1/5159780352)
(*.f64 (sin.f64 re) 1/5159780352)
(log.f64 (pow.f64 (exp.f64 1/5159780352) (sin.f64 re)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/5159780352)
(*.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)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/5159780352)
(*.f64 (sin.f64 re) 1/5159780352)
(exp.f64 (log.f64 (*.f64 (sin.f64 re) 1/5159780352)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/5159780352)
(*.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 (pow.f64 (sin.f64 re) -512) 73651532436445428098818655865528114694107218730166129960353043628366716242278403901337450600270017144964118912384922467617333908026653437203847794375364293665491204417255737422691077233211780842298254748119762897728859353913005374777193725365755971516176488315830506986535400394363123421903029158587191787691686609700229771653793320498966091999627805330849795630674429195197836526893184065502184119708581323943442987842789846554275431918232581298453541403708918264371778921957751950371791590412951782659708369648771304660540100514107370682112643437954654945347472777223965755333452161963280889277693493724570780337687714366064129682491828605355294070823617465627307492686462872597371059373343775865561244945115406802197104838635721640703576673673671111771474554772417869011555606662336891031962824712544843681532680928659344967752201466721705675762818636079563734952384622926816322735026130467153905013961429594281012183777340383074468145173253762163952409249737357497968255868730494877930161802819769341532009687526725083751130144717838189385932097110102570533726684460531252641463605918779481336844430192072039399798393399519288092349344920363540193886961736891286967040011363999665661597873475790716002499818483936559921014922009697000854646093810852836188325574693249210095444297281727389452673071084013677729910108256415946030583226122466896325489218386357779396644783993693863239451010014788082731949502610122271423020409971551784850206477025394629132042811557706509332413597375426674507811619580281123096415469794268575929326241905330436436410494576245543442013619454936248475017439154765595239321580744815796609159033930932512345403399468101900742632220200291091071118434228522635214663116947208488401604047551476501156140052635949272209963610837232213421527126655195865015219963144937090000870652423185465536968941956455756507762505965203484658804599271766380122793692727550804460519827615338094985933923881833740865194356429831211326618670738068685903773381920670131380800594415476395333778820568375192533202335923241473561159617555436057228674945001446898644924975422324153706621808149152748323578544332332519168415632478141699545111051794442821238635510073460627155094403436982694321313214801607432590649361280999547917778231832951440536369448945515000460748434119613350569744059208663754792456436367176921970925682735396682470085506478116084259891794273595591681086300417357525392010202224805368527120160550953351352673719029700138160301432212324285112929391747247754969777061372872428017067243861354291256221427080574620143885356421552276892307865506548503137378157930354382696254729097369769646351243119030813624341065402384360120995930299738520914081665952989957514296736127673357629806259973877783560050591966359834849695664993348385744703196146825439875223763498561969737550986980089381658319195033619787968695649010999531438008444221495329001898110184800919116341355774054894293189389447309601390044231368670228769950283533501585152970041647315736615251063413352760336692774400912615717114449810121465475997198993893568221292207081575288346999205513647269120874590495308174266013642100964022100120913379454308257490325096402753766521193263206171378044662422072575475399058483262201205125243328686166894649039376146452271663758713637495451663895045175971248337689396908566111455613925815642500797361175986327564254047386701435636502100944373975755171885309229021632036380799805685604577927585552192139475858853776143178229660141814854761695972863440759651571751800033198572933315246605498330448506945816943431264736253739343616107962806953800673001705502367147401142548084272355649855174770425103059576792933279150748106570025837620301551383514493051810461335764837352447734166406641702773391010389184349131533171911616645523604852567509362077325984605918249877108470816812449533831950151115612509626924323082751936116290239265924819928422093970960278732294841412078853431219777141992837841353838497300604001800122822217367641359928223954577905304552589711614296619685935228951354035364124892280606746271675306355410837002674190914082702428009506282653262707624302337657753113762574417233480841205337801384802615564199108534305971602086272107922222247571245139918679272508380134934083152108197932713590745521329348107216451430291796890455008356539419318533467356687732965260215655993119953718184817135560479757240169172970226422055971942996965279489975573619057116994919676621868268223266743057576563378293299711819941022381474523225930552368902040382394626429233983547350822442332319590988946788298060039099711028733781466254887994350909632565892427537133810314415606826409836774243538052235538349337454517908440333962147395133709338872737257083336622151557612956544257897031403732484396171795793376003083115787739261017258474484010650803356363238229653593031609985245477460542954596565227918435787278598262114109219152596811398275068278931073999914546249633922819967198669798538953534472626917915043747049050384162590981452438296053557137257961877405696)
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) 1/5159780352)))
(*.f64 (fabs.f64 (sin.f64 re)) 1/5159780352)
(*.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
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
-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

eval142.0ms (0.8%)

Compiler

Compiled 5147 to 3070 computations (40.4% saved)

prune104.0ms (0.6%)

Pruning

30 alts after pruning (26 fresh and 4 done)

PrunedKeptTotal
New29525320
Fresh213
Picked235
Done011
Total29930329
Accurracy
100.0%
Counts
329 → 30
Alt Table
Click to see full alt table
StatusAccuracyProgram
29.7%
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
15.9%
(pow.f64 re -512)
4.5%
(/.f64 re (+.f64 re (-.f64 re re)))
2.3%
(/.f64 re -512)
9.5%
(/.f64 1/4 (*.f64 re re))
46.5%
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
54.9%
(+.f64 re (*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))
6.0%
(+.f64 re re)
10.8%
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
14.1%
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
84.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
41.3%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
45.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
46.2%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
73.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
63.1%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
46.5%
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
5.1%
(*.f64 (*.f64 1/2 re) 262144)
6.2%
(*.f64 (*.f64 1/2 re) 3)
5.0%
(*.f64 (*.f64 1/2 re) 1/512)
29.2%
(*.f64 (sin.f64 re) 5159780353/5159780352)
2.6%
(*.f64 re -511)
63.1%
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
3.0%
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
2.1%
(sqrt.f64 re)
41.7%
(sin.f64 re)
32.6%
(log1p.f64 (expm1.f64 re))
4.0%
(cbrt.f64 re)
20.3%
re
29.7%
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
15.9%
(pow.f64 re -512)
4.5%
(/.f64 re (+.f64 re (-.f64 re re)))
2.3%
(/.f64 re -512)
9.5%
(/.f64 1/4 (*.f64 re re))
46.5%
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
54.9%
(+.f64 re (*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))
6.0%
(+.f64 re re)
10.8%
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
14.1%
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
84.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
41.3%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
45.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
46.2%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
73.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
63.1%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
46.5%
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
5.1%
(*.f64 (*.f64 1/2 re) 262144)
6.2%
(*.f64 (*.f64 1/2 re) 3)
5.0%
(*.f64 (*.f64 1/2 re) 1/512)
29.2%
(*.f64 (sin.f64 re) 5159780353/5159780352)
2.6%
(*.f64 re -511)
63.1%
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
3.0%
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
2.1%
(sqrt.f64 re)
41.7%
(sin.f64 re)
32.6%
(log1p.f64 (expm1.f64 re))
4.0%
(cbrt.f64 re)
20.3%
re
Compiler

Compiled 984 to 732 computations (25.6% saved)

localize905.0ms (5.4%)

Local Accuracy

Found 6 expressions with local accuracy:

NewAccuracyProgram
100.0%
(expm1.f64 re)
74.8%
(log1p.f64 (expm1.f64 re))
99.5%
(cbrt.f64 re)
99.8%
(/.f64 1/4 (*.f64 re re))
100.0%
(+.f64 2 (*.f64 im im))
96.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
Compiler

Compiled 55 to 26 computations (52.7% saved)

series6.0ms (0%)

Counts
5 → 60
Calls

18 calls:

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

rewrite93.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1550×log-prod
870×prod-diff
598×expm1-udef
592×log1p-udef
472×fma-def
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01853
136049
2444849
Stop Event
node limit
Counts
5 → 178
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(/.f64 1/4 (*.f64 re re))
(cbrt.f64 re)
(log1p.f64 (expm1.f64 re))
(expm1.f64 re)
Outputs
(+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(+.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (sin.f64 re))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2)))) (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 1)
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 im 6))) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))
(/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4))
(/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) (*.f64 1/2 (sin.f64 re))) (-.f64 2 (*.f64 im im)))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 2))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (exp.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (exp.f64 (sin.f64 re))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 im im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 im (*.f64 im (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)) (sin.f64 re))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 1 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (sin.f64 re))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) (sin.f64 re))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (cbrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))) (cbrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (sin.f64 re))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (sqrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (sin.f64 re))
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sin.f64 re))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) im) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) im) (sin.f64 re))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 1/2 (sin.f64 re))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) im) im (sin.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (sin.f64 re))
(+.f64 0 (*.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 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -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 (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 re (/.f64 1/4 re)) -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 0 (cbrt.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 re))) (cbrt.f64 (exp.f64 (cbrt.f64 re))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 re)))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 re))) 1)
(*.f64 (cbrt.f64 re) 1)
(*.f64 1 (cbrt.f64 re))
(*.f64 (cbrt.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 (cbrt.f64 re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 re)) 2) (cbrt.f64 (cbrt.f64 re)))
(*.f64 (pow.f64 re 1/6) (pow.f64 re 1/6))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 re) 2) 1/3) (cbrt.f64 (cbrt.f64 re)))
(*.f64 (pow.f64 (sqrt.f64 re) 1/3) (pow.f64 (sqrt.f64 re) 1/3))
(pow.f64 re 1/3)
(pow.f64 (cbrt.f64 re) 1)
(pow.f64 (cbrt.f64 (cbrt.f64 re)) 3)
(pow.f64 (pow.f64 re 1/6) 2)
(sqrt.f64 (pow.f64 (cbrt.f64 re) 2))
(log.f64 (exp.f64 (cbrt.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 re))))
(expm1.f64 (log1p.f64 (cbrt.f64 re)))
(exp.f64 (log.f64 (cbrt.f64 re)))
(exp.f64 (*.f64 (log.f64 re) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 1))
(log1p.f64 (expm1.f64 (cbrt.f64 re)))
(+.f64 0 re)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 re)) (cbrt.f64 (exp.f64 re)))) (log.f64 (cbrt.f64 (exp.f64 re))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 re))) (log.f64 (sqrt.f64 (exp.f64 re))))
(-.f64 (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 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2))
(*.f64 1 re)
(*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re))
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re 4))) (cbrt.f64 re))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) 1) (cbrt.f64 re))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 (cbrt.f64 (cbrt.f64 re)) 2)) (cbrt.f64 (cbrt.f64 re)))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 re 1/6)) (pow.f64 re 1/6))
(pow.f64 re 1)
(pow.f64 (*.f64 re re) 1/2)
(pow.f64 (cbrt.f64 re) 3)
(pow.f64 (pow.f64 re 3) 1/3)
(pow.f64 (sqrt.f64 re) 2)
(sqrt.f64 (*.f64 re re))
(fabs.f64 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))
(+.f64 (exp.f64 re) -1)
(+.f64 0 (expm1.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (expm1.f64 re))) (cbrt.f64 (exp.f64 (expm1.f64 re))))) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 re)))) (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 re)))))
(-.f64 (exp.f64 re) 1)
(*.f64 (expm1.f64 re) 1)
(*.f64 1 (expm1.f64 re))
(*.f64 (cbrt.f64 (expm1.f64 re)) (pow.f64 (cbrt.f64 (expm1.f64 re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (expm1.f64 re)) 2) (cbrt.f64 (expm1.f64 re)))
(*.f64 (sqrt.f64 (expm1.f64 re)) (sqrt.f64 (expm1.f64 re)))
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 3) 1) (fma.f64 (exp.f64 re) (exp.f64 re) (+.f64 1 (*.f64 (exp.f64 re) 1))))
(/.f64 (fma.f64 (exp.f64 re) (exp.f64 re) -1) (+.f64 (exp.f64 re) 1))
(pow.f64 (expm1.f64 re) 1)
(pow.f64 (cbrt.f64 (expm1.f64 re)) 3)
(pow.f64 (pow.f64 (expm1.f64 re) 3) 1/3)
(pow.f64 (sqrt.f64 (expm1.f64 re)) 2)
(sqrt.f64 (pow.f64 (expm1.f64 re) 2))
(log.f64 (exp.f64 (expm1.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (expm1.f64 re))))
(cbrt.f64 (pow.f64 (expm1.f64 re) 3))
(exp.f64 (log.f64 (expm1.f64 re)))
(exp.f64 (*.f64 (log.f64 (expm1.f64 re)) 1))
(log1p.f64 (expm1.f64 (expm1.f64 re)))
(fma.f64 1 (exp.f64 re) -1)
(fma.f64 (*.f64 (cbrt.f64 (exp.f64 re)) (cbrt.f64 (exp.f64 re))) (cbrt.f64 (exp.f64 re)) -1)
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) -1)

simplify94.0ms (0.6%)

Algorithm
egg-herbie
Rules
848×log-prod
616×fma-neg
578×associate-*r*
548×cancel-sign-sub-inv
534×cube-prod
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04254430
19714314
236504268
Stop Event
node limit
Counts
238 → 249
Calls
Call 1
Inputs
(*.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/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))
re
re
re
re
re
re
re
re
re
re
re
re
re
(+.f64 (*.f64 1/2 (pow.f64 re 2)) re)
(+.f64 (*.f64 1/2 (pow.f64 re 2)) (+.f64 (*.f64 1/6 (pow.f64 re 3)) re))
(+.f64 (*.f64 1/2 (pow.f64 re 2)) (+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 (*.f64 1/6 (pow.f64 re 3)) re)))
(-.f64 (exp.f64 re) 1)
(-.f64 (exp.f64 re) 1)
(-.f64 (exp.f64 re) 1)
(-.f64 (exp.f64 re) 1)
(-.f64 (exp.f64 re) 1)
(-.f64 (exp.f64 re) 1)
(-.f64 (exp.f64 re) 1)
(-.f64 (exp.f64 re) 1)
(+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(+.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (sin.f64 re))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2)))) (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 1)
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 im 6))) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))
(/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4))
(/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) (*.f64 1/2 (sin.f64 re))) (-.f64 2 (*.f64 im im)))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 2))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (exp.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (exp.f64 (sin.f64 re))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 im im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 im (*.f64 im (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)) (sin.f64 re))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 1 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (sin.f64 re))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) (sin.f64 re))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (cbrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))) (cbrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (sin.f64 re))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (sqrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (sin.f64 re))
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sin.f64 re))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) im) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) im) (sin.f64 re))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 1/2 (sin.f64 re))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(fma.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) im) im (sin.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (sin.f64 re))
(+.f64 0 (*.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 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -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 (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 re (/.f64 1/4 re)) -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 0 (cbrt.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 re))) (cbrt.f64 (exp.f64 (cbrt.f64 re))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 re)))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 re))) 1)
(*.f64 (cbrt.f64 re) 1)
(*.f64 1 (cbrt.f64 re))
(*.f64 (cbrt.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 (cbrt.f64 re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 re)) 2) (cbrt.f64 (cbrt.f64 re)))
(*.f64 (pow.f64 re 1/6) (pow.f64 re 1/6))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 re) 2) 1/3) (cbrt.f64 (cbrt.f64 re)))
(*.f64 (pow.f64 (sqrt.f64 re) 1/3) (pow.f64 (sqrt.f64 re) 1/3))
(pow.f64 re 1/3)
(pow.f64 (cbrt.f64 re) 1)
(pow.f64 (cbrt.f64 (cbrt.f64 re)) 3)
(pow.f64 (pow.f64 re 1/6) 2)
(sqrt.f64 (pow.f64 (cbrt.f64 re) 2))
(log.f64 (exp.f64 (cbrt.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 re))))
(expm1.f64 (log1p.f64 (cbrt.f64 re)))
(exp.f64 (log.f64 (cbrt.f64 re)))
(exp.f64 (*.f64 (log.f64 re) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 1))
(log1p.f64 (expm1.f64 (cbrt.f64 re)))
(+.f64 0 re)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 re)) (cbrt.f64 (exp.f64 re)))) (log.f64 (cbrt.f64 (exp.f64 re))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 re))) (log.f64 (sqrt.f64 (exp.f64 re))))
(-.f64 (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 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2))
(*.f64 1 re)
(*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re))
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re 4))) (cbrt.f64 re))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) 1) (cbrt.f64 re))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 (cbrt.f64 (cbrt.f64 re)) 2)) (cbrt.f64 (cbrt.f64 re)))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 re 1/6)) (pow.f64 re 1/6))
(pow.f64 re 1)
(pow.f64 (*.f64 re re) 1/2)
(pow.f64 (cbrt.f64 re) 3)
(pow.f64 (pow.f64 re 3) 1/3)
(pow.f64 (sqrt.f64 re) 2)
(sqrt.f64 (*.f64 re re))
(fabs.f64 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))
(+.f64 (exp.f64 re) -1)
(+.f64 0 (expm1.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (expm1.f64 re))) (cbrt.f64 (exp.f64 (expm1.f64 re))))) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 re)))) (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 re)))))
(-.f64 (exp.f64 re) 1)
(*.f64 (expm1.f64 re) 1)
(*.f64 1 (expm1.f64 re))
(*.f64 (cbrt.f64 (expm1.f64 re)) (pow.f64 (cbrt.f64 (expm1.f64 re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (expm1.f64 re)) 2) (cbrt.f64 (expm1.f64 re)))
(*.f64 (sqrt.f64 (expm1.f64 re)) (sqrt.f64 (expm1.f64 re)))
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 3) 1) (fma.f64 (exp.f64 re) (exp.f64 re) (+.f64 1 (*.f64 (exp.f64 re) 1))))
(/.f64 (fma.f64 (exp.f64 re) (exp.f64 re) -1) (+.f64 (exp.f64 re) 1))
(pow.f64 (expm1.f64 re) 1)
(pow.f64 (cbrt.f64 (expm1.f64 re)) 3)
(pow.f64 (pow.f64 (expm1.f64 re) 3) 1/3)
(pow.f64 (sqrt.f64 (expm1.f64 re)) 2)
(sqrt.f64 (pow.f64 (expm1.f64 re) 2))
(log.f64 (exp.f64 (expm1.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (expm1.f64 re))))
(cbrt.f64 (pow.f64 (expm1.f64 re) 3))
(exp.f64 (log.f64 (expm1.f64 re)))
(exp.f64 (*.f64 (log.f64 (expm1.f64 re)) 1))
(log1p.f64 (expm1.f64 (expm1.f64 re)))
(fma.f64 1 (exp.f64 re) -1)
(fma.f64 (*.f64 (cbrt.f64 (exp.f64 re)) (cbrt.f64 (exp.f64 re))) (cbrt.f64 (exp.f64 re)) -1)
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) -1)
Outputs
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.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 (fma.f64 im im 2) re) (*.f64 -1/12 (*.f64 (fma.f64 im im 2) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 (fma.f64 im im 2) re) (*.f64 (fma.f64 im im 2) (*.f64 (pow.f64 re 3) -1/12)))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
(+.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 (fma.f64 im im 2) re) (fma.f64 -1/12 (*.f64 (fma.f64 im im 2) (pow.f64 re 3)) (*.f64 1/240 (*.f64 (fma.f64 im im 2) (pow.f64 re 5)))))
(fma.f64 1/2 (*.f64 (fma.f64 im im 2) re) (fma.f64 -1/12 (*.f64 (fma.f64 im im 2) (pow.f64 re 3)) (*.f64 (fma.f64 im im 2) (*.f64 (pow.f64 re 5) 1/240))))
(fma.f64 1/2 (*.f64 (fma.f64 im im 2) re) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 (pow.f64 re 5) 1/240))))
(+.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 (fma.f64 im im 2) (pow.f64 re 7)) (fma.f64 1/2 (*.f64 (fma.f64 im im 2) re) (fma.f64 -1/12 (*.f64 (fma.f64 im im 2) (pow.f64 re 3)) (*.f64 1/240 (*.f64 (fma.f64 im im 2) (pow.f64 re 5))))))
(fma.f64 -1/10080 (*.f64 (fma.f64 im im 2) (pow.f64 re 7)) (fma.f64 1/2 (*.f64 (fma.f64 im im 2) re) (fma.f64 -1/12 (*.f64 (fma.f64 im im 2) (pow.f64 re 3)) (*.f64 (fma.f64 im im 2) (*.f64 (pow.f64 re 5) 1/240)))))
(+.f64 (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12))) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/240) (*.f64 (pow.f64 re 7) -1/10080))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (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))
re
re
re
re
re
re
re
re
re
re
re
re
re
(+.f64 (*.f64 1/2 (pow.f64 re 2)) re)
(fma.f64 1/2 (*.f64 re re) re)
(+.f64 (*.f64 1/2 (pow.f64 re 2)) (+.f64 (*.f64 1/6 (pow.f64 re 3)) re))
(fma.f64 1/2 (*.f64 re re) (fma.f64 1/6 (pow.f64 re 3) re))
(fma.f64 1/2 (*.f64 re re) (fma.f64 (pow.f64 re 3) 1/6 re))
(+.f64 (*.f64 1/2 (pow.f64 re 2)) (+.f64 (*.f64 1/24 (pow.f64 re 4)) (+.f64 (*.f64 1/6 (pow.f64 re 3)) re)))
(fma.f64 1/2 (*.f64 re re) (fma.f64 1/24 (pow.f64 re 4) (fma.f64 1/6 (pow.f64 re 3) re)))
(fma.f64 1/2 (*.f64 re re) (fma.f64 1/24 (pow.f64 re 4) (fma.f64 (pow.f64 re 3) 1/6 re)))
(-.f64 (exp.f64 re) 1)
(expm1.f64 re)
(-.f64 (exp.f64 re) 1)
(expm1.f64 re)
(-.f64 (exp.f64 re) 1)
(expm1.f64 re)
(-.f64 (exp.f64 re) 1)
(expm1.f64 re)
(-.f64 (exp.f64 re) 1)
(expm1.f64 re)
(-.f64 (exp.f64 re) 1)
(expm1.f64 re)
(-.f64 (exp.f64 re) 1)
(expm1.f64 re)
(-.f64 (exp.f64 re) 1)
(expm1.f64 re)
(+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2)))) (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (fma.f64 im im 2) (sin.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (fma.f64 im im 2) (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (fma.f64 im im 2) (sin.f64 re))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (fma.f64 im im 2) (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (fma.f64 im im 2) (sin.f64 re))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (*.f64 im im) 1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (*.f64 im im) 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 1)
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)) 1) (pow.f64 (sin.f64 re) 3)) (-.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) 1) (pow.f64 (sin.f64 re) 2)) (*.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (sin.f64 re) 2))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 im 6) 1/8) 1) (pow.f64 (sin.f64 re) 3)) (fma.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) 1) (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (sin.f64 re) 2) (*.f64 im (*.f64 im -1/2)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/2 (*.f64 im im))) (pow.f64 (sin.f64 re) 2))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/4 (pow.f64 im 4))))) (*.f64 (+.f64 (*.f64 (*.f64 im im) -1/2) 1) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/4 (pow.f64 im 4))))) (*.f64 (sin.f64 re) (+.f64 (*.f64 im (*.f64 im -1/2)) 1)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 im 6))) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4))
(/.f64 (+.f64 8 (pow.f64 im 6)) (/.f64 (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4) (*.f64 1/2 (sin.f64 re))))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)) (+.f64 8 (pow.f64 im 6)))
(*.f64 (/.f64 (+.f64 8 (pow.f64 im 6)) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4))))
(*.f64 (/.f64 (-.f64 4 (pow.f64 im 4)) (-.f64 2 (*.f64 im im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 2 (*.f64 im im))) (-.f64 4 (pow.f64 im 4)))
(/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4))
(/.f64 (+.f64 8 (pow.f64 im 6)) (/.f64 (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4) (*.f64 1/2 (sin.f64 re))))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)) (+.f64 8 (pow.f64 im 6)))
(*.f64 (/.f64 (+.f64 8 (pow.f64 im 6)) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) (*.f64 1/2 (sin.f64 re))) (-.f64 2 (*.f64 im im)))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4))))
(*.f64 (/.f64 (-.f64 4 (pow.f64 im 4)) (-.f64 2 (*.f64 im im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 2 (*.f64 im im))) (-.f64 4 (pow.f64 im 4)))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 3)
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3) 1/3)
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 2)
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 2))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (exp.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (exp.f64 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 im im 2) 3)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 im (*.f64 im (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (*.f64 im im))) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im))) 2))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 im im)) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (cbrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))) (cbrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (sqrt.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) im) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) im) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 1/2 (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) im) im (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (*.f64 im im))) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im))) 2))
(+.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 (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 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))) (log.f64 (sqrt.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 (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 (*.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 (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 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (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 -1/4 (/.f64 1 (*.f64 re (neg.f64 re))))
(/.f64 -1/4 (neg.f64 (*.f64 re 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) (/.f64 1 re))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(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/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 1/4 re)) -1)
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(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))
(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))
(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 (log.f64 (*.f64 1/4 (pow.f64 re -2))))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/4 (pow.f64 re -2))
(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))
(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 (cbrt.f64 re))
(cbrt.f64 re)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 re))) (cbrt.f64 (exp.f64 (cbrt.f64 re))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 re))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 re)))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 re)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 re))) 1)
(cbrt.f64 re)
(*.f64 (cbrt.f64 re) 1)
(cbrt.f64 re)
(*.f64 1 (cbrt.f64 re))
(cbrt.f64 re)
(*.f64 (cbrt.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 (cbrt.f64 re)) 2))
(cbrt.f64 re)
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 re)) 2) (cbrt.f64 (cbrt.f64 re)))
(cbrt.f64 re)
(*.f64 (pow.f64 re 1/6) (pow.f64 re 1/6))
(cbrt.f64 re)
(*.f64 (pow.f64 1 1/3) (cbrt.f64 re))
(cbrt.f64 re)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 re) 2) 1/3) (cbrt.f64 (cbrt.f64 re)))
(*.f64 (cbrt.f64 (cbrt.f64 re)) (cbrt.f64 (pow.f64 (cbrt.f64 re) 2)))
(*.f64 (pow.f64 (sqrt.f64 re) 1/3) (pow.f64 (sqrt.f64 re) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(pow.f64 re 1/3)
(cbrt.f64 re)
(pow.f64 (cbrt.f64 re) 1)
(cbrt.f64 re)
(pow.f64 (cbrt.f64 (cbrt.f64 re)) 3)
(cbrt.f64 re)
(pow.f64 (pow.f64 re 1/6) 2)
(cbrt.f64 re)
(sqrt.f64 (pow.f64 (cbrt.f64 re) 2))
(cbrt.f64 re)
(log.f64 (exp.f64 (cbrt.f64 re)))
(cbrt.f64 re)
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 re))))
(cbrt.f64 re)
(expm1.f64 (log1p.f64 (cbrt.f64 re)))
(cbrt.f64 re)
(exp.f64 (log.f64 (cbrt.f64 re)))
(cbrt.f64 re)
(exp.f64 (*.f64 (log.f64 re) 1/3))
(cbrt.f64 re)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 re)) 1))
(cbrt.f64 re)
(log1p.f64 (expm1.f64 (cbrt.f64 re)))
(cbrt.f64 re)
(+.f64 0 re)
re
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 re)) (cbrt.f64 (exp.f64 re)))) (log.f64 (cbrt.f64 (exp.f64 re))))
re
(+.f64 (log.f64 (sqrt.f64 (exp.f64 re))) (log.f64 (sqrt.f64 (exp.f64 re))))
re
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re)))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log1p.f64 (-.f64 (pow.f64 (expm1.f64 re) 2) (expm1.f64 re))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log1p.f64 (*.f64 (expm1.f64 re) (-.f64 (expm1.f64 re) 1))))
(-.f64 (log1p.f64 (pow.f64 (expm1.f64 re) 3)) (log1p.f64 (*.f64 (expm1.f64 re) (+.f64 (expm1.f64 re) -1))))
(-.f64 (exp.f64 (log1p.f64 re)) 1)
re
(-.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 re) 2))) (log.f64 (-.f64 1 (expm1.f64 re))))
(-.f64 (log1p.f64 (neg.f64 (pow.f64 (expm1.f64 re) 2))) (log1p.f64 (neg.f64 (expm1.f64 re))))
(*.f64 re 1)
re
(*.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2))
re
(*.f64 1 re)
re
(*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re))
re
(*.f64 (sqrt.f64 re) (sqrt.f64 re))
re
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re 4))) (cbrt.f64 re))
(*.f64 (cbrt.f64 re) (sqrt.f64 (cbrt.f64 (pow.f64 re 4))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) 1) (cbrt.f64 re))
re
(*.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 (cbrt.f64 (cbrt.f64 re)) 2)) (cbrt.f64 (cbrt.f64 re)))
re
(*.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 re 1/6)) (pow.f64 re 1/6))
re
(pow.f64 re 1)
re
(pow.f64 (*.f64 re re) 1/2)
re
(pow.f64 (cbrt.f64 re) 3)
re
(pow.f64 (pow.f64 re 3) 1/3)
re
(pow.f64 (sqrt.f64 re) 2)
re
(sqrt.f64 (*.f64 re re))
re
(fabs.f64 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
(+.f64 (exp.f64 re) -1)
(expm1.f64 re)
(+.f64 0 (expm1.f64 re))
(expm1.f64 re)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (expm1.f64 re))) (cbrt.f64 (exp.f64 (expm1.f64 re))))) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 re))))) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 re)))) (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 re)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 re)))))
(-.f64 (exp.f64 re) 1)
(expm1.f64 re)
(*.f64 (expm1.f64 re) 1)
(expm1.f64 re)
(*.f64 1 (expm1.f64 re))
(expm1.f64 re)
(*.f64 (cbrt.f64 (expm1.f64 re)) (pow.f64 (cbrt.f64 (expm1.f64 re)) 2))
(expm1.f64 re)
(*.f64 (pow.f64 (cbrt.f64 (expm1.f64 re)) 2) (cbrt.f64 (expm1.f64 re)))
(expm1.f64 re)
(*.f64 (sqrt.f64 (expm1.f64 re)) (sqrt.f64 (expm1.f64 re)))
(expm1.f64 re)
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 3) 1) (fma.f64 (exp.f64 re) (exp.f64 re) (+.f64 1 (*.f64 (exp.f64 re) 1))))
(/.f64 (+.f64 (pow.f64 (exp.f64 re) 3) -1) (fma.f64 (exp.f64 re) (exp.f64 re) (+.f64 (exp.f64 re) 1)))
(/.f64 (+.f64 -1 (pow.f64 (exp.f64 re) 3)) (+.f64 (+.f64 (exp.f64 re) 1) (exp.f64 (+.f64 re re))))
(/.f64 (+.f64 -1 (pow.f64 (exp.f64 re) 3)) (fma.f64 (exp.f64 re) (exp.f64 re) (+.f64 (exp.f64 re) 1)))
(/.f64 (fma.f64 (exp.f64 re) (exp.f64 re) -1) (+.f64 (exp.f64 re) 1))
(/.f64 (+.f64 -1 (exp.f64 (+.f64 re re))) (+.f64 (exp.f64 re) 1))
(/.f64 (+.f64 -1 (pow.f64 (exp.f64 re) 2)) (+.f64 (exp.f64 re) 1))
(pow.f64 (expm1.f64 re) 1)
(expm1.f64 re)
(pow.f64 (cbrt.f64 (expm1.f64 re)) 3)
(expm1.f64 re)
(pow.f64 (pow.f64 (expm1.f64 re) 3) 1/3)
(expm1.f64 re)
(pow.f64 (sqrt.f64 (expm1.f64 re)) 2)
(expm1.f64 re)
(sqrt.f64 (pow.f64 (expm1.f64 re) 2))
(expm1.f64 re)
(log.f64 (exp.f64 (expm1.f64 re)))
(expm1.f64 re)
(log.f64 (+.f64 1 (expm1.f64 (expm1.f64 re))))
(expm1.f64 re)
(cbrt.f64 (pow.f64 (expm1.f64 re) 3))
(expm1.f64 re)
(exp.f64 (log.f64 (expm1.f64 re)))
(expm1.f64 re)
(exp.f64 (*.f64 (log.f64 (expm1.f64 re)) 1))
(expm1.f64 re)
(log1p.f64 (expm1.f64 (expm1.f64 re)))
(expm1.f64 re)
(fma.f64 1 (exp.f64 re) -1)
(expm1.f64 re)
(fma.f64 (*.f64 (cbrt.f64 (exp.f64 re)) (cbrt.f64 (exp.f64 re))) (cbrt.f64 (exp.f64 re)) -1)
(expm1.f64 re)
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) -1)
(expm1.f64 re)

eval72.0ms (0.4%)

Compiler

Compiled 3201 to 1875 computations (41.4% saved)

prune85.0ms (0.5%)

Pruning

33 alts after pruning (24 fresh and 9 done)

PrunedKeptTotal
New2483251
Fresh02121
Picked055
Done044
Total24833281
Accurracy
100.0%
Counts
281 → 33
Alt Table
Click to see full alt table
StatusAccuracyProgram
29.7%
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
15.9%
(pow.f64 re -512)
4.5%
(/.f64 re (+.f64 re (-.f64 re re)))
2.3%
(/.f64 re -512)
9.5%
(/.f64 1/4 (*.f64 re re))
46.5%
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
54.9%
(+.f64 re (*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))
6.0%
(+.f64 re re)
10.8%
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
14.1%
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
48.6%
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
9.5%
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
84.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
41.3%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
45.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
46.2%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
73.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
35.2%
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
63.1%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
46.5%
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
5.1%
(*.f64 (*.f64 1/2 re) 262144)
6.2%
(*.f64 (*.f64 1/2 re) 3)
5.0%
(*.f64 (*.f64 1/2 re) 1/512)
29.2%
(*.f64 (sin.f64 re) 5159780353/5159780352)
2.6%
(*.f64 re -511)
63.1%
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
3.0%
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
2.1%
(sqrt.f64 re)
41.7%
(sin.f64 re)
32.6%
(log1p.f64 (expm1.f64 re))
4.0%
(cbrt.f64 re)
20.3%
re
29.7%
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
15.9%
(pow.f64 re -512)
4.5%
(/.f64 re (+.f64 re (-.f64 re re)))
2.3%
(/.f64 re -512)
9.5%
(/.f64 1/4 (*.f64 re re))
46.5%
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
54.9%
(+.f64 re (*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))
6.0%
(+.f64 re re)
10.8%
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
14.1%
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
48.6%
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
9.5%
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
84.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
41.3%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
45.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
46.2%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
73.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
35.2%
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
63.1%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
46.5%
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
5.1%
(*.f64 (*.f64 1/2 re) 262144)
6.2%
(*.f64 (*.f64 1/2 re) 3)
5.0%
(*.f64 (*.f64 1/2 re) 1/512)
29.2%
(*.f64 (sin.f64 re) 5159780353/5159780352)
2.6%
(*.f64 re -511)
63.1%
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
3.0%
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
2.1%
(sqrt.f64 re)
41.7%
(sin.f64 re)
32.6%
(log1p.f64 (expm1.f64 re))
4.0%
(cbrt.f64 re)
20.3%
re
Compiler

Compiled 1058 to 786 computations (25.7% saved)

localize645.0ms (3.8%)

Local Accuracy

Found 10 expressions with local accuracy:

NewAccuracyProgram
100.0%
(+.f64 2 (*.f64 im im))
100.0%
(+.f64 (+.f64 2 (*.f64 im im)) 1/144)
93.9%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 1/144))
100.0%
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))
100.0%
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
99.7%
(*.f64 (*.f64 re re) 1/60)
99.5%
(/.f64 1/4 (*.f64 re re))
99.6%
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
100.0%
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
100.0%
(/.f64 re (exp.f64 im))
Compiler

Compiled 125 to 58 computations (53.6% saved)

series9.0ms (0.1%)

Counts
8 → 112
Calls

33 calls:

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

rewrite117.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
614×add-sqr-sqrt
592×pow1
592×*-un-lft-identity
580×add-exp-log
580×add-log-exp
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
028182
1635162
Stop Event
node limit
Counts
8 → 233
Calls
Call 1
Inputs
(/.f64 re (exp.f64 im))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(*.f64 (*.f64 re re) 1/60)
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))
(*.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 (exp.f64 (log1p.f64 (/.f64 re (exp.f64 im)))) 1)
(*.f64 re (exp.f64 (neg.f64 im)))
(*.f64 1 (/.f64 re (exp.f64 im)))
(*.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (cbrt.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (cbrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) (sqrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (neg.f64 re) (/.f64 1 (neg.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 re (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 re (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) 1) (/.f64 (cbrt.f64 re) (exp.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) (sqrt.f64 (exp.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 (sqrt.f64 re) (exp.f64 im)))
(*.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 im))))
(pow.f64 (/.f64 re (exp.f64 im)) 1)
(pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 3)
(pow.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) 2)
(pow.f64 (/.f64 (exp.f64 im) re) -1)
(neg.f64 (/.f64 re (neg.f64 (exp.f64 im))))
(sqrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2))
(log.f64 (exp.f64 (/.f64 re (exp.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im)))))
(cbrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3))
(cbrt.f64 (/.f64 (pow.f64 re 3) (pow.f64 (exp.f64 im) 3)))
(expm1.f64 (log1p.f64 (/.f64 re (exp.f64 im))))
(exp.f64 (-.f64 (log.f64 re) im))
(exp.f64 (*.f64 (-.f64 (log.f64 re) im) 1))
(log1p.f64 (expm1.f64 (/.f64 re (exp.f64 im))))
(+.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im)))
(+.f64 (*.f64 (*.f64 re (exp.f64 im)) 1) (*.f64 (/.f64 re (exp.f64 im)) 1))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2) (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 re (exp.f64 im)) 3)) (+.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))))
(/.f64 (-.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))
(pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 1)
(pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 3)
(pow.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2)
(sqrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 2))
(log.f64 (exp.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))))
(cbrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3))
(expm1.f64 (log1p.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(exp.f64 (log.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(exp.f64 (*.f64 (log.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 1))
(log1p.f64 (expm1.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(/.f64 1/2 (*.f64 re (*.f64 re 2)))
(/.f64 1/2 (*.f64 (*.f64 re 2) re))
(/.f64 (/.f64 1/2 re) (*.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (*.f64 (neg.f64 re) (neg.f64 re)))
(/.f64 1/4 (neg.f64 (neg.f64 (*.f64 re re))))
(/.f64 1 (*.f64 (*.f64 re re) 4))
(/.f64 1 (*.f64 (*.f64 re 2) (*.f64 re 2)))
(/.f64 1 (/.f64 (*.f64 (*.f64 re re) 4) 1))
(/.f64 1 (/.f64 re (*.f64 (/.f64 1/2 re) 1/2)))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(/.f64 -1/4 (neg.f64 (*.f64 re re)))
(/.f64 -1/2 (*.f64 (*.f64 re 2) (neg.f64 re)))
(/.f64 -1/2 (*.f64 (neg.f64 re) (*.f64 re 2)))
(/.f64 (*.f64 (/.f64 1/2 re) 1/2) re)
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1 (neg.f64 (*.f64 (*.f64 re re) 4)))
(/.f64 (neg.f64 (*.f64 (/.f64 1/2 re) 1/2)) (neg.f64 re))
(/.f64 (neg.f64 (/.f64 1/4 re)) (neg.f64 re))
(pow.f64 (/.f64 1/2 re) 2)
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(pow.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 re)) 2) 3)
(pow.f64 (pow.f64 (/.f64 1/2 re) 6) 1/3)
(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/2 re) 6))
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 re)) 2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 re 1/60)))) 1)
(pow.f64 (*.f64 re (*.f64 re 1/60)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 re 1/60))) 3)
(pow.f64 (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)) 1/3)
(pow.f64 (*.f64 re (sqrt.f64 1/60)) 2)
(sqrt.f64 (*.f64 1/3600 (pow.f64 re 4)))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 re 1/60)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 re 1/60)))))
(cbrt.f64 (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 re 1/60))))
(exp.f64 (log.f64 (*.f64 re (*.f64 re 1/60))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 re 1/60))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 re 1/60))))
(-.f64 (exp.f64 (log1p.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))) 1)
(-.f64 (/.f64 1/144 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) (/.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(*.f64 1 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(*.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) (pow.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 2))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 2) (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(*.f64 (sqrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) (sqrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(*.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (/.f64 1 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12)))))
(*.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2)) (/.f64 1 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(/.f64 1 (/.f64 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))) (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3))))
(/.f64 1 (/.f64 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2))))
(/.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))))
(/.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2)) (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(/.f64 (neg.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3))) (neg.f64 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12)))))
(/.f64 (neg.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2))) (neg.f64 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3) 1/1728) (+.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) (-.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))))
(/.f64 (+.f64 (pow.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) 3) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3))) (+.f64 (*.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2)))) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (*.f64 re (*.f64 re 1/60))))))
(/.f64 (-.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) 1/144) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))
(/.f64 (-.f64 (*.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2)))) (*.f64 1/3600 (pow.f64 re 4))) (-.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (*.f64 re (*.f64 re 1/60))))
(pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1)
(pow.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 3)
(pow.f64 (pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 3) 1/3)
(pow.f64 (sqrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 2)
(sqrt.f64 (pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2))
(log.f64 (exp.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))))
(cbrt.f64 (pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 3))
(expm1.f64 (log1p.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(exp.f64 (log.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(exp.f64 (*.f64 (log.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 1))
(log1p.f64 (expm1.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(fma.f64 1 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12)
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2) (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1/12)
(fma.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) 1/12)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 1)
(-.f64 (/.f64 (/.f64 1/16 (pow.f64 re 4)) (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))) (/.f64 (*.f64 1/3600 (pow.f64 re 4)) (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))))
(*.f64 1 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) (pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2) (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(*.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))))
(*.f64 (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3))) (/.f64 1 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60)))))))
(*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4))) (/.f64 1 (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))))
(/.f64 1 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60))))) (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)))))
(/.f64 1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re))) (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4)))))
(/.f64 (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3))) (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60))))))
(/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4))) (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)))) (neg.f64 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60)))))))
(/.f64 (neg.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4)))) (neg.f64 (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))))
(/.f64 (+.f64 (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)) (pow.f64 (/.f64 1/2 re) 6)) (+.f64 (*.f64 1/3600 (pow.f64 re 4)) (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (*.f64 re (*.f64 re 1/60)) (*.f64 1/4 (pow.f64 re -2))))))
(/.f64 (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (/.f64 1/16 (pow.f64 re 4))) (-.f64 (*.f64 re (*.f64 re 1/60)) (*.f64 1/4 (pow.f64 re -2))))
(pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1)
(pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 3)
(pow.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3) 1/3)
(pow.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) 2)
(sqrt.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2))
(log.f64 (exp.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(cbrt.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3))
(expm1.f64 (log1p.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(exp.f64 (log.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(exp.f64 (*.f64 (log.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1))
(log1p.f64 (expm1.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 (/.f64 1/2 re) (/.f64 1/2 re) (*.f64 re (*.f64 re 1/60)))
(fma.f64 (*.f64 re re) 1/60 (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 1/60 (*.f64 re re) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 1/4 (pow.f64 re -2) (*.f64 re (*.f64 re 1/60)))
(fma.f64 1 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 1 (*.f64 re (*.f64 re 1/60)) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 (cbrt.f64 (*.f64 1/3600 (pow.f64 re 4))) (cbrt.f64 (*.f64 re (*.f64 re 1/60))) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))) (pow.f64 (cbrt.f64 (/.f64 1/2 re)) 2) (*.f64 re (*.f64 re 1/60)))
(fma.f64 (*.f64 re (sqrt.f64 1/60)) (*.f64 re (sqrt.f64 1/60)) (*.f64 1/4 (pow.f64 re -2)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) 1/288))
(+.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 1/288 (sin.f64 re)))
(+.f64 (*.f64 1/288 (sin.f64 re)) (*.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 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1) (*.f64 (*.f64 (sin.f64 re) 1/288) 1))
(+.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 1) (*.f64 (*.f64 1/288 (sin.f64 re)) 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 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (sin.f64 re) 1/288) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (-.f64 (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288)) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) 1/288)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 3) (pow.f64 (*.f64 1/288 (sin.f64 re)) 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 1/288 (sin.f64 re)) (*.f64 1/288 (sin.f64 re))) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 1/288 (sin.f64 re))))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.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 1/288 (sin.f64 re)) (*.f64 1/288 (sin.f64 re)))) (-.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 1/288 (sin.f64 re))))
(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 (exp.f64 (+.f64 (*.f64 im im) 289/144)) (*.f64 1/2 (sin.f64 re))))
(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 (*.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 1/288 (sin.f64 re)))
(-.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 1 (+.f64 (*.f64 im im) 289/144))
(*.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) (pow.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) 2))
(*.f64 (pow.f64 (cbrt.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 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (/.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 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)))
(/.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) 3) 1/2985984) (+.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 (*.f64 im im) 287/144))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)) (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 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (+.f64 1/20736 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (fma.f64 im im 2)))))
(/.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 (pow.f64 (cbrt.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)

simplify152.0ms (0.9%)

Algorithm
egg-herbie
Rules
1076×fma-neg
972×associate-*r*
790×associate-*l*
760×fma-def
716×log-prod
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
066010643
118319881
269899865
Stop Event
node limit
Counts
345 → 381
Calls
Call 1
Inputs
re
(+.f64 (*.f64 -1 (*.f64 re im)) re)
(+.f64 (*.f64 -1 (*.f64 re im)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)) (pow.f64 im 2))) re))
(+.f64 (*.f64 -1 (*.f64 re im)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)) (pow.f64 im 2))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 re) (+.f64 (*.f64 1/6 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re))))) (pow.f64 im 3))) re)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 2 re)
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(+.f64 (*.f64 re (pow.f64 im 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))) (*.f64 2 re)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/6 re) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 re) (*.f64 1/2 re))) (*.f64 -1 (+.f64 (*.f64 1/6 re) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))))) (pow.f64 im 4))) (+.f64 (*.f64 re (pow.f64 im 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))) (*.f64 2 re))))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) 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/60 (pow.f64 re 2))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 1/60 (pow.f64 re 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 1/60 (pow.f64 re 2))))
(*.f64 1/60 (pow.f64 re 2))
(+.f64 1/12 (*.f64 1/60 (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 1/60 (pow.f64 re 2))))
(*.f64 1/60 (pow.f64 re 2))
(+.f64 1/12 (*.f64 1/60 (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 1/60 (pow.f64 re 2))))
(/.f64 1/4 (pow.f64 re 2))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(*.f64 1/60 (pow.f64 re 2))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(*.f64 1/60 (pow.f64 re 2))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (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 (exp.f64 (log1p.f64 (/.f64 re (exp.f64 im)))) 1)
(*.f64 re (exp.f64 (neg.f64 im)))
(*.f64 1 (/.f64 re (exp.f64 im)))
(*.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (cbrt.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (cbrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) (sqrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (neg.f64 re) (/.f64 1 (neg.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 re (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 re (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) 1) (/.f64 (cbrt.f64 re) (exp.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) (sqrt.f64 (exp.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 (sqrt.f64 re) (exp.f64 im)))
(*.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 im))))
(pow.f64 (/.f64 re (exp.f64 im)) 1)
(pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 3)
(pow.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) 2)
(pow.f64 (/.f64 (exp.f64 im) re) -1)
(neg.f64 (/.f64 re (neg.f64 (exp.f64 im))))
(sqrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2))
(log.f64 (exp.f64 (/.f64 re (exp.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im)))))
(cbrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3))
(cbrt.f64 (/.f64 (pow.f64 re 3) (pow.f64 (exp.f64 im) 3)))
(expm1.f64 (log1p.f64 (/.f64 re (exp.f64 im))))
(exp.f64 (-.f64 (log.f64 re) im))
(exp.f64 (*.f64 (-.f64 (log.f64 re) im) 1))
(log1p.f64 (expm1.f64 (/.f64 re (exp.f64 im))))
(+.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im)))
(+.f64 (*.f64 (*.f64 re (exp.f64 im)) 1) (*.f64 (/.f64 re (exp.f64 im)) 1))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2) (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 re (exp.f64 im)) 3)) (+.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))))
(/.f64 (-.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))
(pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 1)
(pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 3)
(pow.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2)
(sqrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 2))
(log.f64 (exp.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))))
(cbrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3))
(expm1.f64 (log1p.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(exp.f64 (log.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(exp.f64 (*.f64 (log.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 1))
(log1p.f64 (expm1.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(/.f64 1/2 (*.f64 re (*.f64 re 2)))
(/.f64 1/2 (*.f64 (*.f64 re 2) re))
(/.f64 (/.f64 1/2 re) (*.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (*.f64 (neg.f64 re) (neg.f64 re)))
(/.f64 1/4 (neg.f64 (neg.f64 (*.f64 re re))))
(/.f64 1 (*.f64 (*.f64 re re) 4))
(/.f64 1 (*.f64 (*.f64 re 2) (*.f64 re 2)))
(/.f64 1 (/.f64 (*.f64 (*.f64 re re) 4) 1))
(/.f64 1 (/.f64 re (*.f64 (/.f64 1/2 re) 1/2)))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(/.f64 -1/4 (neg.f64 (*.f64 re re)))
(/.f64 -1/2 (*.f64 (*.f64 re 2) (neg.f64 re)))
(/.f64 -1/2 (*.f64 (neg.f64 re) (*.f64 re 2)))
(/.f64 (*.f64 (/.f64 1/2 re) 1/2) re)
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1 (neg.f64 (*.f64 (*.f64 re re) 4)))
(/.f64 (neg.f64 (*.f64 (/.f64 1/2 re) 1/2)) (neg.f64 re))
(/.f64 (neg.f64 (/.f64 1/4 re)) (neg.f64 re))
(pow.f64 (/.f64 1/2 re) 2)
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(pow.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 re)) 2) 3)
(pow.f64 (pow.f64 (/.f64 1/2 re) 6) 1/3)
(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/2 re) 6))
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 re)) 2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 re 1/60)))) 1)
(pow.f64 (*.f64 re (*.f64 re 1/60)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 re 1/60))) 3)
(pow.f64 (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)) 1/3)
(pow.f64 (*.f64 re (sqrt.f64 1/60)) 2)
(sqrt.f64 (*.f64 1/3600 (pow.f64 re 4)))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 re 1/60)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 re 1/60)))))
(cbrt.f64 (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 re 1/60))))
(exp.f64 (log.f64 (*.f64 re (*.f64 re 1/60))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 re 1/60))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 re 1/60))))
(-.f64 (exp.f64 (log1p.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))) 1)
(-.f64 (/.f64 1/144 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) (/.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(*.f64 1 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(*.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) (pow.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 2))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 2) (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(*.f64 (sqrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) (sqrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(*.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (/.f64 1 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12)))))
(*.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2)) (/.f64 1 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(/.f64 1 (/.f64 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))) (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3))))
(/.f64 1 (/.f64 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2))))
(/.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))))
(/.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2)) (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(/.f64 (neg.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3))) (neg.f64 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12)))))
(/.f64 (neg.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2))) (neg.f64 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3) 1/1728) (+.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) (-.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))))
(/.f64 (+.f64 (pow.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) 3) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3))) (+.f64 (*.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2)))) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (*.f64 re (*.f64 re 1/60))))))
(/.f64 (-.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) 1/144) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))
(/.f64 (-.f64 (*.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2)))) (*.f64 1/3600 (pow.f64 re 4))) (-.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (*.f64 re (*.f64 re 1/60))))
(pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1)
(pow.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 3)
(pow.f64 (pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 3) 1/3)
(pow.f64 (sqrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 2)
(sqrt.f64 (pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2))
(log.f64 (exp.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))))
(cbrt.f64 (pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 3))
(expm1.f64 (log1p.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(exp.f64 (log.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(exp.f64 (*.f64 (log.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 1))
(log1p.f64 (expm1.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(fma.f64 1 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12)
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2) (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1/12)
(fma.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) 1/12)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 1)
(-.f64 (/.f64 (/.f64 1/16 (pow.f64 re 4)) (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))) (/.f64 (*.f64 1/3600 (pow.f64 re 4)) (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))))
(*.f64 1 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) (pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2) (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(*.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))))
(*.f64 (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3))) (/.f64 1 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60)))))))
(*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4))) (/.f64 1 (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))))
(/.f64 1 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60))))) (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)))))
(/.f64 1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re))) (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4)))))
(/.f64 (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3))) (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60))))))
(/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4))) (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)))) (neg.f64 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60)))))))
(/.f64 (neg.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4)))) (neg.f64 (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))))
(/.f64 (+.f64 (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)) (pow.f64 (/.f64 1/2 re) 6)) (+.f64 (*.f64 1/3600 (pow.f64 re 4)) (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (*.f64 re (*.f64 re 1/60)) (*.f64 1/4 (pow.f64 re -2))))))
(/.f64 (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (/.f64 1/16 (pow.f64 re 4))) (-.f64 (*.f64 re (*.f64 re 1/60)) (*.f64 1/4 (pow.f64 re -2))))
(pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1)
(pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 3)
(pow.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3) 1/3)
(pow.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) 2)
(sqrt.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2))
(log.f64 (exp.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(cbrt.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3))
(expm1.f64 (log1p.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(exp.f64 (log.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(exp.f64 (*.f64 (log.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1))
(log1p.f64 (expm1.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 (/.f64 1/2 re) (/.f64 1/2 re) (*.f64 re (*.f64 re 1/60)))
(fma.f64 (*.f64 re re) 1/60 (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 1/60 (*.f64 re re) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 1/4 (pow.f64 re -2) (*.f64 re (*.f64 re 1/60)))
(fma.f64 1 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 1 (*.f64 re (*.f64 re 1/60)) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 (cbrt.f64 (*.f64 1/3600 (pow.f64 re 4))) (cbrt.f64 (*.f64 re (*.f64 re 1/60))) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))) (pow.f64 (cbrt.f64 (/.f64 1/2 re)) 2) (*.f64 re (*.f64 re 1/60)))
(fma.f64 (*.f64 re (sqrt.f64 1/60)) (*.f64 re (sqrt.f64 1/60)) (*.f64 1/4 (pow.f64 re -2)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) 1/288))
(+.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 1/288 (sin.f64 re)))
(+.f64 (*.f64 1/288 (sin.f64 re)) (*.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 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1) (*.f64 (*.f64 (sin.f64 re) 1/288) 1))
(+.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 1) (*.f64 (*.f64 1/288 (sin.f64 re)) 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 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (sin.f64 re) 1/288) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (-.f64 (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288)) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) 1/288)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 3) (pow.f64 (*.f64 1/288 (sin.f64 re)) 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 1/288 (sin.f64 re)) (*.f64 1/288 (sin.f64 re))) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 1/288 (sin.f64 re))))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.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 1/288 (sin.f64 re)) (*.f64 1/288 (sin.f64 re)))) (-.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 1/288 (sin.f64 re))))
(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 (exp.f64 (+.f64 (*.f64 im im) 289/144)) (*.f64 1/2 (sin.f64 re))))
(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 (*.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 1/288 (sin.f64 re)))
(-.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 1 (+.f64 (*.f64 im im) 289/144))
(*.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) (pow.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) 2))
(*.f64 (pow.f64 (cbrt.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 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (/.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 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)))
(/.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) 3) 1/2985984) (+.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 (*.f64 im im) 287/144))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)) (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 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (+.f64 1/20736 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (fma.f64 im im 2)))))
(/.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 (pow.f64 (cbrt.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
re
(+.f64 (*.f64 -1 (*.f64 re im)) re)
(fma.f64 -1 (*.f64 re im) re)
(fma.f64 (neg.f64 re) im re)
(+.f64 (*.f64 -1 (*.f64 re im)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)) (pow.f64 im 2))) re))
(fma.f64 -1 (*.f64 re im) (fma.f64 -1 (*.f64 (*.f64 im im) (*.f64 re -1/2)) re))
(-.f64 (fma.f64 (*.f64 re 1/2) (*.f64 im im) re) (*.f64 re im))
(+.f64 (*.f64 -1 (*.f64 re im)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)) (pow.f64 im 2))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 re) (+.f64 (*.f64 1/6 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re))))) (pow.f64 im 3))) re)))
(fma.f64 -1 (*.f64 re im) (fma.f64 -1 (*.f64 (*.f64 im im) (*.f64 re -1/2)) (fma.f64 -1 (*.f64 (fma.f64 -1/2 re (fma.f64 1/6 re (neg.f64 (*.f64 re -1/2)))) (pow.f64 im 3)) re)))
(-.f64 (fma.f64 (*.f64 re 1/2) (*.f64 im im) (-.f64 re (*.f64 (pow.f64 im 3) (+.f64 (*.f64 re 1/2) (*.f64 re -1/3))))) (*.f64 re im))
(-.f64 (fma.f64 (*.f64 re 1/2) (*.f64 im im) (-.f64 re (*.f64 (pow.f64 im 3) (fma.f64 re -1/3 (*.f64 re 1/2))))) (*.f64 re im))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 (neg.f64 re) (-.f64 (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1 (exp.f64 im) (/.f64 -1 (exp.f64 im))) (neg.f64 re))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 (neg.f64 re) (-.f64 (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1 (exp.f64 im) (/.f64 -1 (exp.f64 im))) (neg.f64 re))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 (neg.f64 re) (-.f64 (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1 (exp.f64 im) (/.f64 -1 (exp.f64 im))) (neg.f64 re))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 (neg.f64 re) (-.f64 (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 -1 (exp.f64 im) (/.f64 -1 (exp.f64 im))) (neg.f64 re))
(*.f64 2 re)
(*.f64 re 2)
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(fma.f64 re (*.f64 im im) (*.f64 re 2))
(*.f64 re (fma.f64 im im 2))
(+.f64 (*.f64 re (pow.f64 im 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))) (*.f64 2 re)))
(fma.f64 re (*.f64 im im) (fma.f64 -1 (*.f64 (pow.f64 im 3) (fma.f64 -1/2 re (neg.f64 (*.f64 re -1/2)))) (*.f64 re 2)))
(+.f64 (*.f64 re (fma.f64 im im 2)) (*.f64 (pow.f64 im 3) (*.f64 0 (*.f64 re -1/2))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/6 re) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 re) (*.f64 1/2 re))) (*.f64 -1 (+.f64 (*.f64 1/6 re) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))))) (pow.f64 im 4))) (+.f64 (*.f64 re (pow.f64 im 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))) (*.f64 2 re))))
(fma.f64 -1 (*.f64 (fma.f64 -1/6 re (fma.f64 -1/2 (*.f64 re -1/2) (neg.f64 (fma.f64 1/6 re (fma.f64 -1/2 re (neg.f64 (*.f64 re -1/2))))))) (pow.f64 im 4)) (fma.f64 re (*.f64 im im) (fma.f64 -1 (*.f64 (pow.f64 im 3) (fma.f64 -1/2 re (neg.f64 (*.f64 re -1/2)))) (*.f64 re 2))))
(-.f64 (+.f64 (*.f64 re (fma.f64 im im 2)) (*.f64 (pow.f64 im 3) (*.f64 0 (*.f64 re -1/2)))) (*.f64 (-.f64 (fma.f64 re -1/6 (*.f64 re 1/4)) (+.f64 (*.f64 re 1/2) (*.f64 re -1/3))) (pow.f64 im 4)))
(-.f64 (+.f64 (*.f64 re (fma.f64 im im 2)) (*.f64 (pow.f64 im 3) (*.f64 0 (*.f64 re -1/2)))) (*.f64 (-.f64 (fma.f64 re -1/6 (*.f64 re 1/4)) (fma.f64 re -1/3 (*.f64 re 1/2))) (pow.f64 im 4)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 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 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2))))
(+.f64 (+.f64 1/12 (/.f64 1/4 (*.f64 re re))) (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re))))
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2))))
(+.f64 (+.f64 1/12 (/.f64 1/4 (*.f64 re re))) (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re))))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(+.f64 1/12 (*.f64 1/60 (pow.f64 re 2)))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) 1/12)
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2))))
(+.f64 (+.f64 1/12 (/.f64 1/4 (*.f64 re re))) (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re))))
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2))))
(+.f64 (+.f64 1/12 (/.f64 1/4 (*.f64 re re))) (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re))))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(+.f64 1/12 (*.f64 1/60 (pow.f64 re 2)))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) 1/12)
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2))))
(+.f64 (+.f64 1/12 (/.f64 1/4 (*.f64 re re))) (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re))))
(+.f64 1/12 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2))))
(+.f64 (+.f64 1/12 (/.f64 1/4 (*.f64 re re))) (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re))))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re)))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re)))
(*.f64 1/60 (pow.f64 re 2))
(*.f64 re (*.f64 re 1/60))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))) (*.f64 1/60 (pow.f64 re 2)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 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 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 im im 289/144))))
(fma.f64 1/2 (*.f64 re (fma.f64 im im 289/144)) (*.f64 (pow.f64 re 3) (*.f64 -1/12 (fma.f64 im im 289/144))))
(+.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 -1/12 (*.f64 (pow.f64 re 3) (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 (pow.f64 re 5) (*.f64 1/240 (fma.f64 im im 289/144)))))
(+.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 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 im im 289/144))))))
(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 (pow.f64 re 5) (*.f64 1/240 (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 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 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 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 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 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 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 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 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)))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 (sin.f64 re) 289/288))
(fma.f64 1/2 (*.f64 im (*.f64 im (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)))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 (sin.f64 re) 289/288))
(fma.f64 1/2 (*.f64 im (*.f64 im (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)))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 (sin.f64 re) 289/288))
(fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (*.f64 (sin.f64 re) 289/288))
(*.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 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 (sin.f64 re) 289/288))
(fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (*.f64 (sin.f64 re) 289/288))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 (sin.f64 re) 289/288))
(fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (*.f64 (sin.f64 re) 289/288))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 (sin.f64 re) 289/288))
(fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (*.f64 (sin.f64 re) 289/288))
(*.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 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 (sin.f64 re) 289/288))
(fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (*.f64 (sin.f64 re) 289/288))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 (sin.f64 re) 289/288))
(fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (*.f64 (sin.f64 re) 289/288))
(+.f64 (*.f64 289/288 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 (sin.f64 re) 289/288))
(fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (*.f64 (sin.f64 re) 289/288))
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 (exp.f64 (log1p.f64 (/.f64 re (exp.f64 im)))) 1)
(/.f64 re (exp.f64 im))
(*.f64 re (exp.f64 (neg.f64 im)))
(/.f64 re (exp.f64 im))
(*.f64 1 (/.f64 re (exp.f64 im)))
(/.f64 re (exp.f64 im))
(*.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (cbrt.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (exp.f64 (neg.f64 im)) (cbrt.f64 re)))
(*.f64 (exp.f64 (neg.f64 im)) (*.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2))
(/.f64 re (exp.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (cbrt.f64 (/.f64 re (exp.f64 im))))
(/.f64 re (exp.f64 im))
(*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 (neg.f64 im))))
(/.f64 re (exp.f64 im))
(*.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) (sqrt.f64 (/.f64 re (exp.f64 im))))
(/.f64 re (exp.f64 im))
(*.f64 (neg.f64 re) (/.f64 1 (neg.f64 (exp.f64 im))))
(/.f64 re (exp.f64 im))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 re (cbrt.f64 (exp.f64 im))))
(/.f64 (/.f64 re (cbrt.f64 (exp.f64 im))) (pow.f64 (cbrt.f64 (exp.f64 im)) 2))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 re (sqrt.f64 (exp.f64 im))))
(/.f64 (/.f64 re (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) 1) (/.f64 (cbrt.f64 re) (exp.f64 im)))
(*.f64 (cbrt.f64 (*.f64 re re)) (/.f64 (cbrt.f64 re) (exp.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (/.f64 (cbrt.f64 (*.f64 re re)) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 re re)) (sqrt.f64 (exp.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 re re)) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im)))) (sqrt.f64 (exp.f64 im)))
(*.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 (sqrt.f64 re) (exp.f64 im)))
(/.f64 re (exp.f64 im))
(*.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 re (cbrt.f64 (exp.f64 im))))
(/.f64 (/.f64 re (cbrt.f64 (exp.f64 im))) (pow.f64 (cbrt.f64 (exp.f64 im)) 2))
(pow.f64 (/.f64 re (exp.f64 im)) 1)
(/.f64 re (exp.f64 im))
(pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 3)
(/.f64 re (exp.f64 im))
(pow.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3) 1/3)
(/.f64 re (exp.f64 im))
(pow.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) 2)
(/.f64 re (exp.f64 im))
(pow.f64 (/.f64 (exp.f64 im) re) -1)
(/.f64 re (exp.f64 im))
(neg.f64 (/.f64 re (neg.f64 (exp.f64 im))))
(/.f64 re (exp.f64 im))
(sqrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2))
(fabs.f64 (/.f64 re (exp.f64 im)))
(log.f64 (exp.f64 (/.f64 re (exp.f64 im))))
(/.f64 re (exp.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im)))))
(/.f64 re (exp.f64 im))
(cbrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3))
(/.f64 re (exp.f64 im))
(cbrt.f64 (/.f64 (pow.f64 re 3) (pow.f64 (exp.f64 im) 3)))
(/.f64 re (exp.f64 im))
(expm1.f64 (log1p.f64 (/.f64 re (exp.f64 im))))
(/.f64 re (exp.f64 im))
(exp.f64 (-.f64 (log.f64 re) im))
(/.f64 re (exp.f64 im))
(exp.f64 (*.f64 (-.f64 (log.f64 re) im) 1))
(/.f64 re (exp.f64 im))
(log1p.f64 (expm1.f64 (/.f64 re (exp.f64 im))))
(/.f64 re (exp.f64 im))
(+.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im)))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(+.f64 (*.f64 (*.f64 re (exp.f64 im)) 1) (*.f64 (/.f64 re (exp.f64 im)) 1))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 1 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2) (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 re (exp.f64 im)) 3)) (+.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))))
(/.f64 (+.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3) (pow.f64 (*.f64 re (exp.f64 im)) 3)) (fma.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im)) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 re (*.f64 (exp.f64 im) (/.f64 re (exp.f64 im)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3) (pow.f64 (*.f64 re (exp.f64 im)) 3)) (fma.f64 (*.f64 re re) (exp.f64 (+.f64 im im)) (*.f64 (/.f64 re (exp.f64 im)) (-.f64 (/.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))))))
(/.f64 (-.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))
(/.f64 (-.f64 (*.f64 (*.f64 re re) (*.f64 (exp.f64 im) (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))
(/.f64 (-.f64 (*.f64 (*.f64 re re) (exp.f64 (+.f64 im im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))
(pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 3)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(pow.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3) 1/3)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(pow.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(sqrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 2))
(fabs.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(log.f64 (exp.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(cbrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(expm1.f64 (log1p.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(exp.f64 (log.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(exp.f64 (*.f64 (log.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 1))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(log1p.f64 (expm1.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/2 (*.f64 re (*.f64 re 2)))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/2 (*.f64 (*.f64 re 2) re))
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/2 re) (*.f64 re 2))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (*.f64 (neg.f64 re) (neg.f64 re)))
(/.f64 1/4 (*.f64 re re))
(/.f64 1/4 (neg.f64 (neg.f64 (*.f64 re re))))
(/.f64 1/4 (*.f64 re re))
(/.f64 1 (*.f64 (*.f64 re re) 4))
(/.f64 1/4 (*.f64 re re))
(/.f64 1 (*.f64 (*.f64 re 2) (*.f64 re 2)))
(/.f64 1/4 (*.f64 re re))
(/.f64 1 (/.f64 (*.f64 (*.f64 re re) 4) 1))
(/.f64 1/4 (*.f64 re re))
(/.f64 1 (/.f64 re (*.f64 (/.f64 1/2 re) 1/2)))
(/.f64 1/4 (*.f64 re re))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(/.f64 1/4 (*.f64 re re))
(/.f64 -1/4 (neg.f64 (*.f64 re re)))
(/.f64 1/4 (*.f64 re re))
(/.f64 -1/2 (*.f64 (*.f64 re 2) (neg.f64 re)))
(/.f64 1/4 (*.f64 re re))
(/.f64 -1/2 (*.f64 (neg.f64 re) (*.f64 re 2)))
(/.f64 1/4 (*.f64 re re))
(/.f64 (*.f64 (/.f64 1/2 re) 1/2) re)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (*.f64 re re))
(/.f64 -1 (neg.f64 (*.f64 (*.f64 re re) 4)))
(/.f64 1/4 (*.f64 re re))
(/.f64 (neg.f64 (*.f64 (/.f64 1/2 re) 1/2)) (neg.f64 re))
(/.f64 1/4 (*.f64 re re))
(/.f64 (neg.f64 (/.f64 1/4 re)) (neg.f64 re))
(/.f64 1/4 (*.f64 re re))
(pow.f64 (/.f64 1/2 re) 2)
(/.f64 1/4 (*.f64 re re))
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(*.f64 1/4 (pow.f64 re -2))
(pow.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 re)) 2) 3)
(pow.f64 (pow.f64 (/.f64 1/2 re) 6) 1/3)
(cbrt.f64 (pow.f64 (/.f64 1/2 re) 6))
(pow.f64 (*.f64 (*.f64 re re) 4) -1)
(/.f64 1/4 (*.f64 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 (pow.f64 re -2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/4 (pow.f64 re -2)))))
(*.f64 1/4 (pow.f64 re -2))
(cbrt.f64 (pow.f64 (/.f64 1/2 re) 6))
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 1/4 (pow.f64 re -2))
(exp.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))))
(/.f64 1/4 (*.f64 re re))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 re)) 2))
(/.f64 1/4 (*.f64 re re))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1))
(/.f64 1/4 (*.f64 re re))
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 1/4 (pow.f64 re -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 re 1/60)))) 1)
(*.f64 re (*.f64 re 1/60))
(pow.f64 (*.f64 re (*.f64 re 1/60)) 1)
(*.f64 re (*.f64 re 1/60))
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 re 1/60))) 3)
(*.f64 re (*.f64 re 1/60))
(pow.f64 (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)) 1/3)
(cbrt.f64 (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)))
(cbrt.f64 (*.f64 1/216000 (pow.f64 re 6)))
(pow.f64 (*.f64 re (sqrt.f64 1/60)) 2)
(sqrt.f64 (*.f64 1/3600 (pow.f64 re 4)))
(sqrt.f64 (*.f64 (pow.f64 re 4) 1/3600))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 re 1/60)))
(*.f64 re (*.f64 re 1/60))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 re 1/60)))))
(*.f64 re (*.f64 re 1/60))
(cbrt.f64 (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)))
(cbrt.f64 (*.f64 1/216000 (pow.f64 re 6)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 re 1/60))))
(*.f64 re (*.f64 re 1/60))
(exp.f64 (log.f64 (*.f64 re (*.f64 re 1/60))))
(*.f64 re (*.f64 re 1/60))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 re 1/60))) 1))
(*.f64 re (*.f64 re 1/60))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 re 1/60))))
(*.f64 re (*.f64 re 1/60))
(-.f64 (exp.f64 (log1p.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))) 1)
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(-.f64 (/.f64 1/144 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) (/.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(/.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2)) (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(*.f64 1 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(*.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) (pow.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 2))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 2) (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(*.f64 (sqrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) (sqrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(*.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (/.f64 1 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12)))))
(*.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (/.f64 1 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) -1/12)))))
(/.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (fma.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 -1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1/144))
(/.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (fma.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) -1/12)) 1/144))
(*.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2)) (/.f64 1 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(/.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2)) (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(/.f64 1 (/.f64 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))) (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3))))
(*.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (/.f64 1 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) -1/12)))))
(/.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (fma.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 -1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1/144))
(/.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (fma.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) -1/12)) 1/144))
(/.f64 1 (/.f64 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2))))
(/.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2)) (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(/.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))))
(*.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (/.f64 1 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) -1/12)))))
(/.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (fma.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 -1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1/144))
(/.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (fma.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) -1/12)) 1/144))
(/.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2)) (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(/.f64 (neg.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3))) (neg.f64 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12)))))
(/.f64 (+.f64 -1/1728 (neg.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3))) (neg.f64 (+.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) -1/12)))))
(/.f64 (-.f64 -1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (-.f64 -1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 -1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))))
(/.f64 (-.f64 -1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (-.f64 -1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) (+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) -1/12)))))
(/.f64 (neg.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2))) (neg.f64 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) -1/144) (+.f64 -1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(/.f64 (+.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) -1/144) (+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3) 1/1728) (+.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) (-.f64 1/144 (*.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))))
(/.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (+.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) (-.f64 1/144 (*.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))))
(/.f64 (+.f64 1/1728 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3)) (-.f64 1/144 (-.f64 (*.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2))))
(/.f64 (+.f64 (pow.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) 3) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3))) (+.f64 (*.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2)))) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (*.f64 re (*.f64 re 1/60))))))
(/.f64 (+.f64 (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)) (pow.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) 3)) (fma.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (-.f64 (*.f64 (pow.f64 re 4) 1/3600) (*.f64 (*.f64 re (*.f64 re 1/60)) (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2)))))))
(/.f64 (fma.f64 1/216000 (pow.f64 re 6) (pow.f64 (fma.f64 1/4 (pow.f64 re -2) 1/12) 3)) (fma.f64 (fma.f64 1/4 (pow.f64 re -2) 1/12) (fma.f64 1/4 (pow.f64 re -2) 1/12) (fma.f64 (pow.f64 re 4) 1/3600 (*.f64 (fma.f64 1/4 (pow.f64 re -2) 1/12) (*.f64 re (*.f64 re -1/60))))))
(/.f64 (-.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) 1/144) (-.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12))
(/.f64 (neg.f64 (-.f64 1/144 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2))) (neg.f64 (-.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) -1/144) (+.f64 -1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(/.f64 (+.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2) -1/144) (+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) -1/12)))
(/.f64 (-.f64 (*.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2)))) (*.f64 1/3600 (pow.f64 re 4))) (-.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (*.f64 re (*.f64 re 1/60))))
(/.f64 (+.f64 (*.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2)))) (*.f64 -1/3600 (pow.f64 re 4))) (-.f64 (+.f64 1/12 (*.f64 1/4 (pow.f64 re -2))) (*.f64 re (*.f64 re 1/60))))
(/.f64 (fma.f64 (fma.f64 1/4 (pow.f64 re -2) 1/12) (fma.f64 1/4 (pow.f64 re -2) 1/12) (*.f64 (pow.f64 re 4) -1/3600)) (+.f64 (fma.f64 1/4 (pow.f64 re -2) 1/12) (*.f64 re (*.f64 re -1/60))))
(pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1)
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(pow.f64 (cbrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 3)
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(pow.f64 (pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 3) 1/3)
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(pow.f64 (sqrt.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 2)
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(sqrt.f64 (pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2))
(fabs.f64 (+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12)))
(log.f64 (exp.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(log.f64 (+.f64 1 (expm1.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(cbrt.f64 (pow.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 3))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(expm1.f64 (log1p.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(exp.f64 (log.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(exp.f64 (*.f64 (log.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 1))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(log1p.f64 (expm1.f64 (+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(fma.f64 1 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1/12)
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2) (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1/12)
(+.f64 1/12 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 re 1/60)) (fma.f64 1/4 (pow.f64 re -2) 1/12))
(fma.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) 1/12)
(+.f64 (pow.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) 2) 1/12)
(+.f64 1/12 (pow.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) 2))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))) 1)
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(-.f64 (/.f64 (/.f64 1/16 (pow.f64 re 4)) (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))) (/.f64 (*.f64 1/3600 (pow.f64 re 4)) (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))))
(/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (pow.f64 re 4) 1/3600)) (fma.f64 1/4 (pow.f64 re -2) (*.f64 (*.f64 re re) -1/60)))
(/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (pow.f64 re 4) -1/3600)) (fma.f64 1/4 (pow.f64 re -2) (*.f64 re (*.f64 re -1/60))))
(*.f64 1 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(*.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) (pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 2) (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(*.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))))
(pow.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) 2)
(*.f64 (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3))) (/.f64 1 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60)))))))
(*.f64 (fma.f64 1/216000 (pow.f64 (*.f64 re re) 3) (pow.f64 (/.f64 1/2 re) 6)) (/.f64 1 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 (pow.f64 re 4) 1/3600) (*.f64 re (*.f64 (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))))
(/.f64 (fma.f64 1/216000 (pow.f64 re 6) (pow.f64 (/.f64 1/2 re) 6)) (-.f64 (fma.f64 (pow.f64 re 4) 1/3600 (/.f64 1/16 (pow.f64 re 4))) (*.f64 (pow.f64 re -2) (*.f64 (*.f64 re re) 1/240))))
(/.f64 (fma.f64 1/216000 (pow.f64 re 6) (pow.f64 (/.f64 1/2 re) 6)) (-.f64 (/.f64 1/16 (pow.f64 re 4)) (fma.f64 (pow.f64 re -2) (*.f64 (*.f64 re re) 1/240) (*.f64 (pow.f64 re 4) -1/3600))))
(*.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4))) (/.f64 1 (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))))
(/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (pow.f64 re 4) 1/3600)) (fma.f64 1/4 (pow.f64 re -2) (*.f64 (*.f64 re re) -1/60)))
(/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (pow.f64 re 4) -1/3600)) (fma.f64 1/4 (pow.f64 re -2) (*.f64 re (*.f64 re -1/60))))
(/.f64 1 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60))))) (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)))))
(*.f64 (fma.f64 1/216000 (pow.f64 (*.f64 re re) 3) (pow.f64 (/.f64 1/2 re) 6)) (/.f64 1 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 (pow.f64 re 4) 1/3600) (*.f64 re (*.f64 (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))))
(/.f64 (fma.f64 1/216000 (pow.f64 re 6) (pow.f64 (/.f64 1/2 re) 6)) (-.f64 (fma.f64 (pow.f64 re 4) 1/3600 (/.f64 1/16 (pow.f64 re 4))) (*.f64 (pow.f64 re -2) (*.f64 (*.f64 re re) 1/240))))
(/.f64 (fma.f64 1/216000 (pow.f64 re 6) (pow.f64 (/.f64 1/2 re) 6)) (-.f64 (/.f64 1/16 (pow.f64 re 4)) (fma.f64 (pow.f64 re -2) (*.f64 (*.f64 re re) 1/240) (*.f64 (pow.f64 re 4) -1/3600))))
(/.f64 1 (/.f64 (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re))) (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4)))))
(/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (pow.f64 re 4) 1/3600)) (fma.f64 1/4 (pow.f64 re -2) (*.f64 (*.f64 re re) -1/60)))
(/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (pow.f64 re 4) -1/3600)) (fma.f64 1/4 (pow.f64 re -2) (*.f64 re (*.f64 re -1/60))))
(/.f64 (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3))) (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60))))))
(*.f64 (fma.f64 1/216000 (pow.f64 (*.f64 re re) 3) (pow.f64 (/.f64 1/2 re) 6)) (/.f64 1 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 (pow.f64 re 4) 1/3600) (*.f64 re (*.f64 (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))))
(/.f64 (fma.f64 1/216000 (pow.f64 re 6) (pow.f64 (/.f64 1/2 re) 6)) (-.f64 (fma.f64 (pow.f64 re 4) 1/3600 (/.f64 1/16 (pow.f64 re 4))) (*.f64 (pow.f64 re -2) (*.f64 (*.f64 re re) 1/240))))
(/.f64 (fma.f64 1/216000 (pow.f64 re 6) (pow.f64 (/.f64 1/2 re) 6)) (-.f64 (/.f64 1/16 (pow.f64 re 4)) (fma.f64 (pow.f64 re -2) (*.f64 (*.f64 re re) 1/240) (*.f64 (pow.f64 re 4) -1/3600))))
(/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4))) (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re))))
(/.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (pow.f64 re 4) 1/3600)) (fma.f64 1/4 (pow.f64 re -2) (*.f64 (*.f64 re re) -1/60)))
(/.f64 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (pow.f64 re 4) -1/3600)) (fma.f64 1/4 (pow.f64 re -2) (*.f64 re (*.f64 re -1/60))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 1/2 re) 6) (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)))) (neg.f64 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (*.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60)))))))
(/.f64 (neg.f64 (fma.f64 1/216000 (pow.f64 (*.f64 re re) 3) (pow.f64 (/.f64 1/2 re) 6))) (neg.f64 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 (pow.f64 re 4) 1/3600) (*.f64 re (*.f64 (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))))
(*.f64 1 (/.f64 (fma.f64 1/216000 (pow.f64 re 6) (pow.f64 (/.f64 1/2 re) 6)) (-.f64 (fma.f64 (pow.f64 re 4) 1/3600 (/.f64 1/16 (pow.f64 re 4))) (*.f64 (pow.f64 re -2) (*.f64 (*.f64 re re) 1/240)))))
(*.f64 1 (/.f64 (fma.f64 1/216000 (pow.f64 re 6) (pow.f64 (/.f64 1/2 re) 6)) (-.f64 (/.f64 1/16 (pow.f64 re 4)) (fma.f64 (pow.f64 re -2) (*.f64 (*.f64 re re) 1/240) (*.f64 (pow.f64 re 4) -1/3600)))))
(/.f64 (neg.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 1/3600 (pow.f64 re 4)))) (neg.f64 (+.f64 (*.f64 1/4 (pow.f64 re -2)) (*.f64 -1/60 (*.f64 re re)))))
(/.f64 (neg.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (pow.f64 re 4) 1/3600))) (neg.f64 (fma.f64 1/4 (pow.f64 re -2) (*.f64 (*.f64 re re) -1/60))))
(/.f64 (fma.f64 (pow.f64 re 4) 1/3600 (/.f64 -1/16 (pow.f64 re 4))) (fma.f64 re (*.f64 re 1/60) (*.f64 (pow.f64 re -2) -1/4)))
(/.f64 (+.f64 (*.f64 1/216000 (pow.f64 (*.f64 re re) 3)) (pow.f64 (/.f64 1/2 re) 6)) (+.f64 (*.f64 1/3600 (pow.f64 re 4)) (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (*.f64 re (*.f64 re 1/60)) (*.f64 1/4 (pow.f64 re -2))))))
(*.f64 (fma.f64 1/216000 (pow.f64 (*.f64 re re) 3) (pow.f64 (/.f64 1/2 re) 6)) (/.f64 1 (+.f64 (/.f64 1/16 (pow.f64 re 4)) (-.f64 (*.f64 (pow.f64 re 4) 1/3600) (*.f64 re (*.f64 (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))))
(/.f64 (fma.f64 1/216000 (pow.f64 re 6) (pow.f64 (/.f64 1/2 re) 6)) (-.f64 (fma.f64 (pow.f64 re 4) 1/3600 (/.f64 1/16 (pow.f64 re 4))) (*.f64 (pow.f64 re -2) (*.f64 (*.f64 re re) 1/240))))
(/.f64 (fma.f64 1/216000 (pow.f64 re 6) (pow.f64 (/.f64 1/2 re) 6)) (-.f64 (/.f64 1/16 (pow.f64 re 4)) (fma.f64 (pow.f64 re -2) (*.f64 (*.f64 re re) 1/240) (*.f64 (pow.f64 re 4) -1/3600))))
(/.f64 (-.f64 (*.f64 1/3600 (pow.f64 re 4)) (/.f64 1/16 (pow.f64 re 4))) (-.f64 (*.f64 re (*.f64 re 1/60)) (*.f64 1/4 (pow.f64 re -2))))
(/.f64 (neg.f64 (-.f64 (/.f64 1/16 (pow.f64 re 4)) (*.f64 (pow.f64 re 4) 1/3600))) (neg.f64 (fma.f64 1/4 (pow.f64 re -2) (*.f64 (*.f64 re re) -1/60))))
(/.f64 (fma.f64 (pow.f64 re 4) 1/3600 (/.f64 -1/16 (pow.f64 re 4))) (fma.f64 re (*.f64 re 1/60) (*.f64 (pow.f64 re -2) -1/4)))
(pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 1)
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(pow.f64 (cbrt.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 3)
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(pow.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3) 1/3)
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(pow.f64 (hypot.f64 (/.f64 1/2 re) (*.f64 re (sqrt.f64 1/60))) 2)
(sqrt.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 2))
(fabs.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))
(log.f64 (exp.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))))))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(cbrt.f64 (pow.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2))) 3))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(expm1.f64 (log1p.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(exp.f64 (log.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(exp.f64 (*.f64 (log.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))) 1))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(log1p.f64 (expm1.f64 (fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 (/.f64 1/2 re) (/.f64 1/2 re) (*.f64 re (*.f64 re 1/60)))
(+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (/.f64 1/4 (*.f64 re re)))
(fma.f64 (*.f64 re re) 1/60 (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 1/60 (*.f64 re re) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 1/4 (pow.f64 re -2) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 1 (*.f64 1/4 (pow.f64 re -2)) (*.f64 re (*.f64 re 1/60)))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 1 (*.f64 re (*.f64 re 1/60)) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 re (*.f64 re 1/60) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 (cbrt.f64 (*.f64 1/3600 (pow.f64 re 4))) (cbrt.f64 (*.f64 re (*.f64 re 1/60))) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 4) 1/3600)) (cbrt.f64 (*.f64 re (*.f64 re 1/60))) (*.f64 1/4 (pow.f64 re -2)))
(fma.f64 (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))) (pow.f64 (cbrt.f64 (/.f64 1/2 re)) 2) (*.f64 re (*.f64 re 1/60)))
(fma.f64 (*.f64 re (sqrt.f64 1/60)) (*.f64 re (sqrt.f64 1/60)) (*.f64 1/4 (pow.f64 re -2)))
(+.f64 (pow.f64 (*.f64 re (sqrt.f64 1/60)) 2) (*.f64 1/4 (pow.f64 re -2)))
(+.f64 (*.f64 1/4 (pow.f64 re -2)) (pow.f64 (*.f64 re (sqrt.f64 1/60)) 2))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) 1/288))
(*.f64 (sin.f64 re) (+.f64 1/288 (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (fma.f64 im im 2) 1/288))
(+.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (sin.f64 re) (+.f64 1/288 (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (fma.f64 im im 2) 1/288))
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 1/288 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 1/288 (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (fma.f64 im im 2) 1/288))
(+.f64 (*.f64 1/288 (sin.f64 re)) (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))))
(*.f64 (sin.f64 re) (+.f64 1/288 (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (sin.f64 re) (fma.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 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 im im 1/144)))
(fma.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 1/144)) (sin.f64 re))
(+.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im 1/144) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 im im 1/144)))
(fma.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 1/144)) (sin.f64 re))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1) (*.f64 (*.f64 (sin.f64 re) 1/288) 1))
(*.f64 (sin.f64 re) (+.f64 1/288 (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (fma.f64 im im 2) 1/288))
(+.f64 (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 1) (*.f64 (*.f64 1/288 (sin.f64 re)) 1))
(*.f64 (sin.f64 re) (+.f64 1/288 (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (sin.f64 re) (fma.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 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (sin.f64 re) 1/288) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (-.f64 (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288)) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) 1/288)))))
(/.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 re) 3) 1/23887872) (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) 1/288) (-.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))) (*.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (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)) (fma.f64 (sin.f64 re) (*.f64 (*.f64 1/4 (pow.f64 (fma.f64 im im 2) 2)) (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/288 (*.f64 (sin.f64 re) (-.f64 1/288 (*.f64 1/2 (fma.f64 im im 2))))))))
(/.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (+.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) 1/8) 1/23887872)) (fma.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (+.f64 (*.f64 1/4 (pow.f64 (fma.f64 im im 2) 2)) 1/82944) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) (*.f64 (sin.f64 re) -1/288))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) 3) (pow.f64 (*.f64 1/288 (sin.f64 re)) 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 1/288 (sin.f64 re)) (*.f64 1/288 (sin.f64 re))) (*.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 1/288 (sin.f64 re))))))
(/.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 re) 3) 1/23887872) (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) 1/288) (-.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))) (*.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (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)) (fma.f64 (sin.f64 re) (*.f64 (*.f64 1/4 (pow.f64 (fma.f64 im im 2) 2)) (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/288 (*.f64 (sin.f64 re) (-.f64 1/288 (*.f64 1/2 (fma.f64 im im 2))))))))
(/.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (+.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) 1/8) 1/23887872)) (fma.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (+.f64 (*.f64 1/4 (pow.f64 (fma.f64 im im 2) 2)) 1/82944) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) (*.f64 (sin.f64 re) -1/288))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (sin.f64 re) 1/288) (*.f64 (sin.f64 re) 1/288))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) 1/288)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1/288 (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (sin.f64 re) (-.f64 (*.f64 1/2 (fma.f64 im im 2)) 1/288))) (*.f64 (sin.f64 re) (-.f64 (*.f64 1/2 (fma.f64 im im 2)) 1/288)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (*.f64 1/4 (pow.f64 (fma.f64 im im 2) 2)) 1/82944)) (*.f64 (sin.f64 re) (fma.f64 1/2 (fma.f64 im im 2) -1/288)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (fma.f64 1/4 (pow.f64 (fma.f64 im im 2) 2) -1/82944)) (*.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 1/288 (sin.f64 re)) (*.f64 1/288 (sin.f64 re)))) (-.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 1/288 (sin.f64 re))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1/288 (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (sin.f64 re) (-.f64 (*.f64 1/2 (fma.f64 im im 2)) 1/288))) (*.f64 (sin.f64 re) (-.f64 (*.f64 1/2 (fma.f64 im im 2)) 1/288)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (*.f64 1/4 (pow.f64 (fma.f64 im im 2) 2)) 1/82944)) (*.f64 (sin.f64 re) (fma.f64 1/2 (fma.f64 im im 2) -1/288)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (fma.f64 1/4 (pow.f64 (fma.f64 im im 2) 2) -1/82944)) (*.f64 (sin.f64 re) (fma.f64 1/2 (fma.f64 im im 2) -1/288)))
(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)))
(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)))
(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)))
(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)))
(sqrt.f64 (pow.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) (fma.f64 im im 289/144))) 2))
(fabs.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 289/144))))
(log.f64 (pow.f64 (exp.f64 (+.f64 (*.f64 im im) 289/144)) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (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)))
(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)))
(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)))
(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)))
(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)))
(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)))
(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)))
(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)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (sin.f64 re) 1/288))
(*.f64 (sin.f64 re) (+.f64 1/288 (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (fma.f64 im im 2) 1/288))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 1/288 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 1/288 (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (sin.f64 re) (fma.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 1 (+.f64 (*.f64 im im) 289/144))
(fma.f64 im im 289/144)
(*.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) (pow.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) 2))
(fma.f64 im im 289/144)
(*.f64 (pow.f64 (cbrt.f64 (+.f64 (*.f64 im im) 289/144)) 2) (cbrt.f64 (+.f64 (*.f64 im im) 289/144)))
(fma.f64 im im 289/144)
(*.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 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (/.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) 3) 1/2985984) (/.f64 1 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 1/144 (fma.f64 im im 2))))))
(/.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) 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 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)))
(*.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (/.f64 1 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 1/144 (fma.f64 im im 2))))))
(/.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 (/.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 (pow.f64 (fma.f64 im im 2) 3) 1/2985984) (+.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) 3) 1/2985984) (/.f64 1 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 1/144 (fma.f64 im im 2))))))
(/.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) 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 (pow.f64 (fma.f64 im im 2) 3) 1/2985984)) (neg.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 (fma.f64 im im 2) 1/144)))))
(/.f64 (+.f64 (neg.f64 (pow.f64 (fma.f64 im im 2) 3)) -1/2985984) (neg.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 1/144 (fma.f64 im im 2))))))
(/.f64 (-.f64 -1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (neg.f64 (+.f64 1/20736 (*.f64 (fma.f64 im im 2) (-.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 (neg.f64 (pow.f64 (fma.f64 im im 2) 2)) 1/20736) (neg.f64 (fma.f64 im im 287/144)))
(/.f64 (-.f64 1/20736 (pow.f64 (fma.f64 im im 2) 2)) (-.f64 -287/144 (*.f64 im im)))
(/.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 1/2985984 (pow.f64 (fma.f64 im im 2) 3)) (+.f64 1/20736 (-.f64 (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) 3) 1/2985984) (/.f64 1 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (-.f64 1/20736 (*.f64 1/144 (fma.f64 im im 2))))))
(/.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 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)
(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))
(sqrt.f64 (pow.f64 (fma.f64 im im 289/144) 2))
(fabs.f64 (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)
(+.f64 2 (fma.f64 im im 1/144))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (cbrt.f64 (fma.f64 im im 2)) 1/144)
(fma.f64 1 (fma.f64 im im 2) 1/144)
(+.f64 2 (fma.f64 im im 1/144))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (fma.f64 im im 2)) 1/144)
(fma.f64 1 (fma.f64 im im 2) 1/144)
(+.f64 2 (fma.f64 im im 1/144))

eval192.0ms (1.1%)

Compiler

Compiled 7742 to 5117 computations (33.9% saved)

prune95.0ms (0.6%)

Pruning

35 alts after pruning (24 fresh and 11 done)

PrunedKeptTotal
New4077414
Fresh21719
Picked325
Done099
Total41235447
Accurracy
100.0%
Counts
447 → 35
Alt Table
Click to see full alt table
StatusAccuracyProgram
29.7%
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
15.9%
(pow.f64 re -512)
9.5%
(/.f64 (/.f64 1/4 re) re)
4.5%
(/.f64 re (+.f64 re (-.f64 re re)))
2.3%
(/.f64 re -512)
9.5%
(/.f64 1/4 (*.f64 re re))
46.5%
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
6.0%
(+.f64 re re)
10.8%
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
14.1%
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
7.1%
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
48.6%
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
84.7%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
41.3%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
46.2%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
73.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
35.2%
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
63.1%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
46.5%
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
5.1%
(*.f64 (*.f64 1/2 re) 262144)
6.2%
(*.f64 (*.f64 1/2 re) 3)
5.0%
(*.f64 (*.f64 1/2 re) 1/512)
14.1%
(*.f64 (sin.f64 re) 289/288)
34.1%
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
2.6%
(*.f64 re -511)
40.7%
(*.f64 1/2 (fma.f64 re (exp.f64 im) re))
63.1%
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
29.7%
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
3.0%
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
2.1%
(sqrt.f64 re)
41.7%
(sin.f64 re)
32.6%
(log1p.f64 (expm1.f64 re))
4.0%
(cbrt.f64 re)
20.3%
re
Compiler

Compiled 662 to 427 computations (35.5% saved)

regimes128.0ms (0.8%)

Counts
45 → 1
Calls
Call 1
Inputs
re
(*.f64 re -511)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 3)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(cbrt.f64 re)
(sin.f64 re)
(sqrt.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 (sin.f64 re) 289/288)
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.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/144))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
(log1p.f64 (expm1.f64 re))
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/2 (fma.f64 re (exp.f64 im) re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 re (*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(+.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))))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Calls

6 calls:

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

Compiled 388 to 225 computations (42% saved)

regimes474.0ms (2.8%)

Counts
42 → 3
Calls
Call 1
Inputs
re
(*.f64 re -511)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 3)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(cbrt.f64 re)
(sin.f64 re)
(sqrt.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 (sin.f64 re) 289/288)
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.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/144))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
(log1p.f64 (expm1.f64 re))
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/2 (fma.f64 re (exp.f64 im) re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 re (*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
Calls

4 calls:

210.0ms
(*.f64 1/2 (sin.f64 re))
97.0ms
im
90.0ms
(sin.f64 re)
67.0ms
re
Results
AccuracySegmentsBranch
91.9%3re
94.2%5im
91.9%3(*.f64 1/2 (sin.f64 re))
91.9%3(sin.f64 re)
Compiler

Compiled 323 to 187 computations (42.1% saved)

regimes231.0ms (1.4%)

Counts
41 → 3
Calls
Call 1
Inputs
re
(*.f64 re -511)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 3)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(cbrt.f64 re)
(sin.f64 re)
(sqrt.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 (sin.f64 re) 289/288)
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.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/144))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
(log1p.f64 (expm1.f64 re))
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/2 (fma.f64 re (exp.f64 im) re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 re (*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))
(*.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 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
Calls

3 calls:

92.0ms
(*.f64 1/2 (sin.f64 re))
75.0ms
(sin.f64 re)
54.0ms
re
Results
AccuracySegmentsBranch
91.9%3re
91.9%3(*.f64 1/2 (sin.f64 re))
91.9%3(sin.f64 re)
Compiler

Compiled 310 to 182 computations (41.3% saved)

regimes334.0ms (2%)

Counts
40 → 5
Calls
Call 1
Inputs
re
(*.f64 re -511)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 3)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(cbrt.f64 re)
(sin.f64 re)
(sqrt.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 (sin.f64 re) 289/288)
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.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/144))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
(log1p.f64 (expm1.f64 re))
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/2 (fma.f64 re (exp.f64 im) re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 re (*.f64 re (fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
(+.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 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
Calls

4 calls:

103.0ms
im
100.0ms
re
65.0ms
(sin.f64 re)
56.0ms
(*.f64 1/2 (sin.f64 re))
Results
AccuracySegmentsBranch
94.2%5im
87.7%3re
87.7%3(*.f64 1/2 (sin.f64 re))
87.7%3(sin.f64 re)
Compiler

Compiled 297 to 174 computations (41.4% saved)

regimes119.0ms (0.7%)

Counts
37 → 5
Calls
Call 1
Inputs
re
(*.f64 re -511)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 3)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(cbrt.f64 re)
(sin.f64 re)
(sqrt.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 (sin.f64 re) 289/288)
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.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/144))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
(log1p.f64 (expm1.f64 re))
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/2 (fma.f64 re (exp.f64 im) re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
(+.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 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
Calls

1 calls:

109.0ms
im
Results
AccuracySegmentsBranch
91.4%5im
Compiler

Compiled 242 to 138 computations (43% saved)

regimes99.0ms (0.6%)

Counts
36 → 5
Calls
Call 1
Inputs
re
(*.f64 re -511)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 3)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(cbrt.f64 re)
(sin.f64 re)
(sqrt.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 (sin.f64 re) 289/288)
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.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/144))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
(log1p.f64 (expm1.f64 re))
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/2 (fma.f64 re (exp.f64 im) re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
(*.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 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
Calls

1 calls:

91.0ms
im
Results
AccuracySegmentsBranch
91.4%5im
Compiler

Compiled 231 to 134 computations (42% saved)

regimes87.0ms (0.5%)

Counts
35 → 5
Calls
Call 1
Inputs
re
(*.f64 re -511)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 3)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(cbrt.f64 re)
(sin.f64 re)
(sqrt.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 (sin.f64 re) 289/288)
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.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/144))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
(log1p.f64 (expm1.f64 re))
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/2 (fma.f64 re (exp.f64 im) re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
Outputs
(*.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 (*.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 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
Calls

1 calls:

78.0ms
im
Results
AccuracySegmentsBranch
91.4%5im
Compiler

Compiled 220 to 129 computations (41.4% saved)

regimes328.0ms (2%)

Counts
34 → 5
Calls
Call 1
Inputs
re
(*.f64 re -511)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 3)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(cbrt.f64 re)
(sin.f64 re)
(sqrt.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 (sin.f64 re) 289/288)
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.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/144))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
(log1p.f64 (expm1.f64 re))
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 1/2 (fma.f64 re (exp.f64 im) re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 1/2 (fma.f64 re (exp.f64 im) re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
Calls

4 calls:

76.0ms
(sin.f64 re)
76.0ms
(*.f64 1/2 (sin.f64 re))
73.0ms
im
45.0ms
re
Results
AccuracySegmentsBranch
75.5%3re
77.3%5(*.f64 1/2 (sin.f64 re))
77.3%5(sin.f64 re)
90.1%5im
Compiler

Compiled 223 to 133 computations (40.4% saved)

regimes131.0ms (0.8%)

Counts
32 → 5
Calls
Call 1
Inputs
re
(*.f64 re -511)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 3)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(cbrt.f64 re)
(sin.f64 re)
(sqrt.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 (sin.f64 re) 289/288)
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.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/144))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
(log1p.f64 (expm1.f64 re))
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(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 im im))
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512)
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
Calls

1 calls:

124.0ms
im
Results
AccuracySegmentsBranch
84.7%5im
Compiler

Compiled 194 to 114 computations (41.2% saved)

regimes76.0ms (0.5%)

Counts
31 → 5
Calls
Call 1
Inputs
re
(*.f64 re -511)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 3)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2))
(+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60)))
(cbrt.f64 re)
(sin.f64 re)
(sqrt.f64 re)
(pow.f64 re -512)
(*.f64 (sin.f64 re) 5159780353/5159780352)
(*.f64 (sin.f64 re) 289/288)
(*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))))
(*.f64 re (*.f64 1/2 (fma.f64 im im 289/144)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(*.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/144))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) 13/12))
(log1p.f64 (expm1.f64 re))
(sqrt.f64 (*.f64 (sin.f64 re) 1/5159780352))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(pow.f64 re -512)
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(pow.f64 re -512)
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
Calls

1 calls:

68.0ms
im
Results
AccuracySegmentsBranch
79.3%5im
Compiler

Compiled 188 to 110 computations (41.5% saved)

regimes109.0ms (0.6%)

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

1 calls:

102.0ms
im
Results
AccuracySegmentsBranch
78.8%5im
Compiler

Compiled 140 to 82 computations (41.4% saved)

regimes221.0ms (1.3%)

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

3 calls:

80.0ms
(sin.f64 re)
75.0ms
im
62.0ms
re
Results
AccuracySegmentsBranch
60.7%4(sin.f64 re)
61.4%4re
75.9%6im
Compiler

Compiled 139 to 84 computations (39.6% saved)

regimes59.0ms (0.4%)

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

1 calls:

55.0ms
im
Results
AccuracySegmentsBranch
72.5%5im
Compiler

Compiled 116 to 70 computations (39.7% saved)

regimes50.0ms (0.3%)

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

1 calls:

44.0ms
im
Results
AccuracySegmentsBranch
71.5%5im
Compiler

Compiled 105 to 64 computations (39% saved)

regimes68.0ms (0.4%)

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

2 calls:

47.0ms
im
17.0ms
re
Results
AccuracySegmentsBranch
48.1%2re
50.6%5im
Compiler

Compiled 104 to 64 computations (38.5% saved)

regimes33.0ms (0.2%)

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

1 calls:

14.0ms
re
Results
AccuracySegmentsBranch
48.1%2re
Compiler

Compiled 77 to 50 computations (35.1% saved)

regimes64.0ms (0.4%)

Counts
13 → 3
Calls
Call 1
Inputs
re
(*.f64 re -511)
(+.f64 re re)
(/.f64 re -512)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 3)
(*.f64 (*.f64 1/2 re) 262144)
(/.f64 1/4 (*.f64 re re))
(/.f64 (/.f64 1/4 re) re)
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
(/.f64 re (+.f64 re (-.f64 re re)))
Outputs
(+.f64 1/12 (*.f64 re (*.f64 re 1/60)))
re
(+.f64 1/12 (/.f64 1/4 (*.f64 re re)))
Calls

2 calls:

36.0ms
re
23.0ms
im
Results
AccuracySegmentsBranch
27.4%3im
27.7%5re
Compiler

Compiled 71 to 46 computations (35.2% saved)

regimes25.0ms (0.1%)

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

1 calls:

22.0ms
im
Results
AccuracySegmentsBranch
27.4%3im
Compiler

Compiled 54 to 37 computations (31.5% saved)

regimes21.0ms (0.1%)

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

1 calls:

18.0ms
im
Results
AccuracySegmentsBranch
27.3%3im
Compiler

Compiled 47 to 32 computations (31.9% saved)

regimes19.0ms (0.1%)

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

1 calls:

17.0ms
im
Results
AccuracySegmentsBranch
27.3%3im
Compiler

Compiled 35 to 24 computations (31.4% saved)

regimes13.0ms (0.1%)

Accuracy

Total -12.2b remaining (-23.9%)

Threshold costs -12.2b (-23.9%)

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

2 calls:

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

Compiled 33 to 23 computations (30.3% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3739397069179219e-33
2.1656869130852077e-27
0.0ms
-0.0006798018838992487
-5.791764475198564e-6
Compiler

Compiled 19 to 15 computations (21.1% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3739397069179219e-33
2.1656869130852077e-27
0.0ms
-0.0006798018838992487
-5.791764475198564e-6
Compiler

Compiled 19 to 15 computations (21.1% saved)

bsearch155.0ms (0.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
49.0ms
1.5409704454998715e+58
2.4841478749126574e+64
0.0ms
33.10618058351306
33.629359423182486
47.0ms
-0.00043615227888932107
-3.3538562760536264e-12
59.0ms
-2.681813170172762e+86
-1.2493408266192756e+79
Results
40.0ms72×body1024infinite
39.0ms105×body512infinite
24.0ms111×body256infinite
19.0ms88×body256valid
19.0ms34×body1024valid
7.0ms22×body512valid
Compiler

Compiled 820 to 582 computations (29% saved)

bsearch132.0ms (0.8%)

Algorithm
binary-search
Stop Event
predicate-same
narrow-enough
narrow-enough
predicate-same
Steps
TimeLeftRight
62.0ms
1.1278556025744774e+140
6.695916353368902e+159
0.0ms
33.10618058351306
33.629359423182486
59.0ms
-0.00043615227888932107
-3.3538562760536264e-12
11.0ms
-6.851861283826501e+188
-3.720765265812653e+188
Results
43.0ms110×body512infinite
34.0ms34×body1024valid
28.0ms50×body1024infinite
17.0ms91×body256valid
6.0ms19×body512valid
Compiler

Compiled 512 to 356 computations (30.5% saved)

bsearch162.0ms (1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
74.0ms
1.1278556025744774e+140
6.695916353368902e+159
0.0ms
33.10618058351306
33.629359423182486
48.0ms
-0.00043615227888932107
-3.3538562760536264e-12
38.0ms
-6.851861283826501e+188
-3.720765265812653e+188
Results
60.0ms101×body1024infinite
48.0ms139×body512infinite
21.0ms35×body1024valid
19.0ms92×body256valid
5.0ms17×body512valid
Compiler

Compiled 626 to 452 computations (27.8% saved)

bsearch181.0ms (1.1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
82.0ms
1.1278556025744774e+140
6.695916353368902e+159
0.0ms
33.10618058351306
33.629359423182486
48.0ms
-0.00043615227888932107
-3.3538562760536264e-12
50.0ms
-6.851861283826501e+188
-3.720765265812653e+188
Results
69.0ms104×body1024infinite
59.0ms136×body512infinite
22.0ms37×body1024valid
18.0ms89×body256valid
6.0ms18×body512valid
Compiler

Compiled 613 to 465 computations (24.1% saved)

bsearch177.0ms (1.1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
83.0ms
1.1278556025744774e+140
6.695916353368902e+159
0.0ms
33.10618058351306
33.629359423182486
51.0ms
-70191592814965890.0
-101089.42408135346
42.0ms
-1.450072272471186e+159
-9.542861034408769e+158
Results
87.0ms146×body1024infinite
64.0ms148×body512infinite
20.0ms106×body256infinite
Compiler

Compiled 550 to 424 computations (22.9% saved)

bsearch174.0ms (1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
41.0ms
1.3360362998931424e+139
1.1278556025744774e+140
33.0ms
325.238351157552
2399.8848712297618
56.0ms
-70191592814965890.0
-101089.42408135346
43.0ms
-1.450072272471186e+159
-9.542861034408769e+158
Results
76.0ms122×body1024infinite
39.0ms103×body512infinite
24.0ms106×body256infinite
14.0ms16×body1024valid
10.0ms55×body256valid
4.0ms14×body512valid
Compiler

Compiled 571 to 463 computations (18.9% saved)

bsearch140.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
42.0ms
1.3360362998931424e+139
1.1278556025744774e+140
35.0ms
2.366884950990163e+56
1.5409704454998715e+58
48.0ms
-70191592814965890.0
-101089.42408135346
15.0ms
-4.779707532713811e+129
-4.3366324407983536e+129
Results
55.0ms139×body512infinite
41.0ms189×body256infinite
39.0ms72×body1024infinite
Compiler

Compiled 478 to 374 computations (21.8% saved)

bsearch177.0ms (1.1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
46.0ms
1.3360362998931424e+139
1.1278556025744774e+140
57.0ms
2.366884950990163e+56
1.5409704454998715e+58
62.0ms
-70191592814965890.0
-101089.42408135346
12.0ms
-4.779707532713811e+129
-4.3366324407983536e+129
Results
70.0ms140×body512infinite
66.0ms103×body1024infinite
36.0ms157×body256infinite
Compiler

Compiled 342 to 272 computations (20.5% saved)

bsearch250.0ms (1.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
62.0ms
1.3360362998931424e+139
1.1278556025744774e+140
41.0ms
2.366884950990163e+56
1.5409704454998715e+58
84.0ms
-70191592814965890.0
-101089.42408135346
13.0ms
-4.779707532713811e+129
-4.3366324407983536e+129
50.0ms
-6.851861283826501e+188
-3.720765265812653e+188
Results
107.0ms149×body1024infinite
74.0ms146×body512infinite
63.0ms169×body256infinite
Compiler

Compiled 436 to 342 computations (21.6% saved)

bsearch173.0ms (1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
44.0ms
1.3360362998931424e+139
1.1278556025744774e+140
57.0ms
2.366884950990163e+56
1.5409704454998715e+58
60.0ms
-70191592814965890.0
-101089.42408135346
12.0ms
-4.779707532713811e+129
-4.3366324407983536e+129
Results
62.0ms142×body512infinite
57.0ms79×body1024infinite
49.0ms179×body256infinite
Compiler

Compiled 350 to 280 computations (20% saved)

bsearch535.0ms (3.2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
111.0ms
4.042354177532866e+116
1.1250590218397357e+137
38.0ms
325.238351157552
2399.8848712297618
366.0ms
-70191592814965890.0
-101089.42408135346
20.0ms
-4.779707532713811e+129
-4.3366324407983536e+129
Results
113.0ms195×body512infinite
43.0ms88×body1024infinite
19.0ms97×body256infinite
17.0ms18×body1024valid
10.0ms51×body256valid
5.0ms15×body512valid
Compiler

Compiled 719 to 515 computations (28.4% saved)

bsearch42.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
42.0ms
-8.693944702106965e+249
-5.0988143091640806e+249
Results
30.0ms41×body1024infinite
11.0ms23×body1024valid
Compiler

Compiled 107 to 79 computations (26.2% saved)

bsearch37.0ms (0.2%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
37.0ms
-8.693944702106965e+249
-5.0988143091640806e+249
Results
23.0ms39×body1024infinite
12.0ms25×body1024valid
Compiler

Compiled 107 to 83 computations (22.4% saved)

bsearch81.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
38.0ms
2.366884950990163e+56
1.5409704454998715e+58
43.0ms
-2.3134789088041608e+21
-3158425808720242000.0
Results
38.0ms162×body256infinite
24.0ms43×body1024infinite
15.0ms35×body512infinite
Compiler

Compiled 229 to 180 computations (21.4% saved)

bsearch80.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
35.0ms
2.366884950990163e+56
1.5409704454998715e+58
44.0ms
-2.3134789088041608e+21
-3158425808720242000.0
Results
32.0ms49×body1024infinite
30.0ms149×body256infinite
14.0ms42×body512infinite
Compiler

Compiled 215 to 166 computations (22.8% saved)

bsearch115.0ms (0.7%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
53.0ms
2.366884950990163e+56
1.5409704454998715e+58
63.0ms
-70191592814965890.0
-101089.42408135346
Results
45.0ms65×body1024infinite
37.0ms45×body512infinite
30.0ms162×body256infinite
Compiler

Compiled 223 to 168 computations (24.7% saved)

bsearch92.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
35.0ms
2.366884950990163e+56
1.5409704454998715e+58
57.0ms
-70191592814965890.0
-101089.42408135346
Results
44.0ms179×body256infinite
27.0ms54×body1024infinite
13.0ms39×body512infinite
Compiler

Compiled 223 to 168 computations (24.7% saved)

simplify46.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01842221
12312221
22332221
32342221
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 (sin.f64 re) -1152921504606847/2305843009213693952) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))) (if (<=.f64 (sin.f64 re) 1461501637330903/730750818665451459101842416358141509827966271488) (*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))))
(if (<=.f64 (sin.f64 re) -1152921504606847/2305843009213693952) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))) (if (<=.f64 (sin.f64 re) 1461501637330903/730750818665451459101842416358141509827966271488) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))))
(if (<=.f64 im -12500000000000000003326233088545909567175300147650101137266497181686219864539136) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))) (if (<=.f64 im 67/2) (+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im 24500000000000001326176166263629328383407475840020802006734077952) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))))))
(if (<=.f64 im -500000000000000011546545651348935774464919112425849637715282289077421094839728844432880898433975380555391192719129287098299595056567936753438014858326845092856015715723317824379483334901760) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))) (if (<=.f64 im 67/2) (+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im 15000000000000001298496038999574854037221349022080675856012921172039509217266793356799400692677585977189403561424740135192327629840926310196001356373819392) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -379999999999999984042334547714737782543086423478926721150479629577656040671888312479266972156634572190457200342233759234940549641377697997476387861653281273815956433760404754867730119655424) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))) (if (<=.f64 im 67/2) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 13400000000000000108070028307055478569440359747784548072949571521098607764837373000563319432383120946048115065876068384406384079583813935540697222675955712) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -379999999999999984042334547714737782543086423478926721150479629577656040671888312479266972156634572190457200342233759234940549641377697997476387861653281273815956433760404754867730119655424) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 67/2) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 13400000000000000108070028307055478569440359747784548072949571521098607764837373000563319432383120946048115065876068384406384079583813935540697222675955712) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -960000000000000032802134112951431461315414099534995242234173289022223912975299546496652180926939006460970753177650630237128925826216473525501509944392500117504) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -102000) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (if (<=.f64 im 67/2) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 13400000000000000108070028307055478569440359747784548072949571521098607764837373000563319432383120946048115065876068384406384079583813935540697222675955712) (*.f64 1/2 (fma.f64 re (exp.f64 im) re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -960000000000000032802134112951431461315414099534995242234173289022223912975299546496652180926939006460970753177650630237128925826216473525501509944392500117504) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -102000) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (if (<=.f64 im 600) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 109999999999999991713564435588067087554095837709678569595070183531400223635188364570535902465445790541828657611400340657009517519342814625792) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -4700000000000000083970436774470195308926965917880833607707392611884110516961564518837354502815249602548139261930253860408825741312) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -102000) (pow.f64 re -512) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 109999999999999991713564435588067087554095837709678569595070183531400223635188364570535902465445790541828657611400340657009517519342814625792) (pow.f64 re -512) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -4700000000000000083970436774470195308926965917880833607707392611884110516961564518837354502815249602548139261930253860408825741312) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -102000) (pow.f64 re -512) (if (<=.f64 im 1949999999999999841650420423224919886971061392141782614016) (sin.f64 re) (if (<=.f64 im 109999999999999991713564435588067087554095837709678569595070183531400223635188364570535902465445790541828657611400340657009517519342814625792) (pow.f64 re -512) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -600000000000000013855854781618722929357902934911019565258338746892905313807674613319457078120770456666469431262955144517959514067881524104125617829992214111427218858867981389255380001882112) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))) (if (<=.f64 im -4399999999999999869025482318682314691979286709592621861046605474607216931047563569519428835097198503373437527738345950134709256192) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im))) (if (<=.f64 im -102000) (pow.f64 re -512) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) (sin.f64 re) (if (<=.f64 im 105000000000000009397867780478754628860874091762698586484435056435699409286211897001772259267713490758517591959791419364078999741802431381504) (pow.f64 re -512) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))))))
(if (<=.f64 im -4599999999999999807103336349652989205991072326870107790696821532450944592759536055284911720361260635040601939674015594449599463424) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im))) (if (<=.f64 im -102000) (pow.f64 re -512) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) (sin.f64 re) (if (<=.f64 im 32000000000000001050929999654557634527584402123507574256394029640279904220761215857408042100087277205886384153098317938516751700294767738880) (pow.f64 re -512) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))))))
(if (<=.f64 im -4700000000000000083970436774470195308926965917880833607707392611884110516961564518837354502815249602548139261930253860408825741312) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im))) (if (<=.f64 im -102000) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (if (<=.f64 im 460) (sin.f64 re) (if (<=.f64 im 1899999999999999972327333632004304047419423895363707418142974243735732644611264355624252868765167271849158031839611959902208) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))))))
(if (<=.f64 re -6000000000000000321470261757251190741601754709052641715245551381779712473178245071006372260448178287875963768937882105055960988359834270730417737238439343393660586871328523988545420007465373138420158244493609528939524838515649583749176120699730788352) (+.f64 1/12 (*.f64 re (*.f64 re 1/60))) (+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2)))
(if (<=.f64 re -6000000000000000321470261757251190741601754709052641715245551381779712473178245071006372260448178287875963768937882105055960988359834270730417737238439343393660586871328523988545420007465373138420158244493609528939524838515649583749176120699730788352) (+.f64 1/12 (*.f64 re (*.f64 re 1/60))) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im))))
(if (<=.f64 im -3200000000000000000) (+.f64 1/12 (*.f64 re (*.f64 re 1/60))) (if (<=.f64 im 680000000000000001515327703142799366334704674293791326208) re (+.f64 1/12 (/.f64 1/4 (*.f64 re re)))))
(if (<=.f64 im -8000000000000000000) (+.f64 1/12 (*.f64 re (*.f64 re 1/60))) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) re (/.f64 (/.f64 1/4 re) re)))
(if (<=.f64 im -122000) (/.f64 1/4 (*.f64 re re)) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) re (/.f64 (/.f64 1/4 re) re)))
(if (<=.f64 im -105000) (/.f64 1/4 (*.f64 re re)) (if (<=.f64 im 400000000000000036761134032573512952336137838862738128896) re (/.f64 1/4 (*.f64 re re))))
re
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 (sin.f64 re) -1152921504606847/2305843009213693952) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))) (if (<=.f64 (sin.f64 re) 1461501637330903/730750818665451459101842416358141509827966271488) (*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))))
(if (or (<=.f64 (sin.f64 re) -1152921504606847/2305843009213693952) (not (<=.f64 (sin.f64 re) 1461501637330903/730750818665451459101842416358141509827966271488))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))) (*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(if (<=.f64 (sin.f64 re) -1152921504606847/2305843009213693952) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))) (if (<=.f64 (sin.f64 re) 1461501637330903/730750818665451459101842416358141509827966271488) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))))
(if (or (<=.f64 (sin.f64 re) -1152921504606847/2305843009213693952) (not (<=.f64 (sin.f64 re) 1461501637330903/730750818665451459101842416358141509827966271488))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im)))))
(if (<=.f64 im -12500000000000000003326233088545909567175300147650101137266497181686219864539136) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))) (if (<=.f64 im 67/2) (+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im 24500000000000001326176166263629328383407475840020802006734077952) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))))))
(if (<=.f64 im -12500000000000000003326233088545909567175300147650101137266497181686219864539136) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im)))) (if (<=.f64 im 67/2) (+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im 24500000000000001326176166263629328383407475840020802006734077952) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 1/2 re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))))))
(if (<=.f64 im -500000000000000011546545651348935774464919112425849637715282289077421094839728844432880898433975380555391192719129287098299595056567936753438014858326845092856015715723317824379483334901760) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))) (if (<=.f64 im 67/2) (+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im 15000000000000001298496038999574854037221349022080675856012921172039509217266793356799400692677585977189403561424740135192327629840926310196001356373819392) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -500000000000000011546545651348935774464919112425849637715282289077421094839728844432880898433975380555391192719129287098299595056567936753438014858326845092856015715723317824379483334901760) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im)))) (if (<=.f64 im 67/2) (+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (if (<=.f64 im 15000000000000001298496038999574854037221349022080675856012921172039509217266793356799400692677585977189403561424740135192327629840926310196001356373819392) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 1/2 re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -379999999999999984042334547714737782543086423478926721150479629577656040671888312479266972156634572190457200342233759234940549641377697997476387861653281273815956433760404754867730119655424) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))) (if (<=.f64 im 67/2) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 13400000000000000108070028307055478569440359747784548072949571521098607764837373000563319432383120946048115065876068384406384079583813935540697222675955712) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -379999999999999984042334547714737782543086423478926721150479629577656040671888312479266972156634572190457200342233759234940549641377697997476387861653281273815956433760404754867730119655424) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im)))) (if (<=.f64 im 67/2) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 13400000000000000108070028307055478569440359747784548072949571521098607764837373000563319432383120946048115065876068384406384079583813935540697222675955712) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 1/2 re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -379999999999999984042334547714737782543086423478926721150479629577656040671888312479266972156634572190457200342233759234940549641377697997476387861653281273815956433760404754867730119655424) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (if (<=.f64 im 67/2) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 13400000000000000108070028307055478569440359747784548072949571521098607764837373000563319432383120946048115065876068384406384079583813935540697222675955712) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -379999999999999984042334547714737782543086423478926721150479629577656040671888312479266972156634572190457200342233759234940549641377697997476387861653281273815956433760404754867730119655424) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -7932099951695107/18446744073709551616) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 1/2 re)) (if (<=.f64 im 67/2) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 13400000000000000108070028307055478569440359747784548072949571521098607764837373000563319432383120946048115065876068384406384079583813935540697222675955712) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 1/2 re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -960000000000000032802134112951431461315414099534995242234173289022223912975299546496652180926939006460970753177650630237128925826216473525501509944392500117504) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -102000) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (if (<=.f64 im 67/2) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 13400000000000000108070028307055478569440359747784548072949571521098607764837373000563319432383120946048115065876068384406384079583813935540697222675955712) (*.f64 1/2 (fma.f64 re (exp.f64 im) re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -960000000000000032802134112951431461315414099534995242234173289022223912975299546496652180926939006460970753177650630237128925826216473525501509944392500117504) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -102000) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (if (<=.f64 im 600) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 109999999999999991713564435588067087554095837709678569595070183531400223635188364570535902465445790541828657611400340657009517519342814625792) (pow.f64 (*.f64 (sin.f64 re) 1/5159780352) -512) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -4700000000000000083970436774470195308926965917880833607707392611884110516961564518837354502815249602548139261930253860408825741312) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -102000) (pow.f64 re -512) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im))) (if (<=.f64 im 109999999999999991713564435588067087554095837709678569595070183531400223635188364570535902465445790541828657611400340657009517519342814625792) (pow.f64 re -512) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -4700000000000000083970436774470195308926965917880833607707392611884110516961564518837354502815249602548139261930253860408825741312) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (if (<=.f64 im -102000) (pow.f64 re -512) (if (<=.f64 im 1949999999999999841650420423224919886971061392141782614016) (sin.f64 re) (if (<=.f64 im 109999999999999991713564435588067087554095837709678569595070183531400223635188364570535902465445790541828657611400340657009517519342814625792) (pow.f64 re -512) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))
(if (<=.f64 im -600000000000000013855854781618722929357902934911019565258338746892905313807674613319457078120770456666469431262955144517959514067881524104125617829992214111427218858867981389255380001882112) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))) (if (<=.f64 im -4399999999999999869025482318682314691979286709592621861046605474607216931047563569519428835097198503373437527738345950134709256192) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im))) (if (<=.f64 im -102000) (pow.f64 re -512) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) (sin.f64 re) (if (<=.f64 im 105000000000000009397867780478754628860874091762698586484435056435699409286211897001772259267713490758517591959791419364078999741802431381504) (pow.f64 re -512) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))))))
(if (<=.f64 im -600000000000000013855854781618722929357902934911019565258338746892905313807674613319457078120770456666469431262955144517959514067881524104125617829992214111427218858867981389255380001882112) (*.f64 1/2 (*.f64 im (*.f64 (sin.f64 re) im))) (if (<=.f64 im -4399999999999999869025482318682314691979286709592621861046605474607216931047563569519428835097198503373437527738345950134709256192) (*.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/2 re)) (if (<=.f64 im -102000) (pow.f64 re -512) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) (sin.f64 re) (if (<=.f64 im 105000000000000009397867780478754628860874091762698586484435056435699409286211897001772259267713490758517591959791419364078999741802431381504) (pow.f64 re -512) (*.f64 1/2 (*.f64 im (*.f64 (sin.f64 re) im))))))))
(if (<=.f64 im -4599999999999999807103336349652989205991072326870107790696821532450944592759536055284911720361260635040601939674015594449599463424) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im))) (if (<=.f64 im -102000) (pow.f64 re -512) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) (sin.f64 re) (if (<=.f64 im 32000000000000001050929999654557634527584402123507574256394029640279904220761215857408042100087277205886384153098317938516751700294767738880) (pow.f64 re -512) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))))))
(if (<=.f64 im -4599999999999999807103336349652989205991072326870107790696821532450944592759536055284911720361260635040601939674015594449599463424) (*.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/2 re)) (if (<=.f64 im -102000) (pow.f64 re -512) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) (sin.f64 re) (if (<=.f64 im 32000000000000001050929999654557634527584402123507574256394029640279904220761215857408042100087277205886384153098317938516751700294767738880) (pow.f64 re -512) (*.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/2 re))))))
(if (<=.f64 im -4700000000000000083970436774470195308926965917880833607707392611884110516961564518837354502815249602548139261930253860408825741312) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im))) (if (<=.f64 im -102000) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (if (<=.f64 im 460) (sin.f64 re) (if (<=.f64 im 1899999999999999972327333632004304047419423895363707418142974243735732644611264355624252868765167271849158031839611959902208) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im)))))))
(if (<=.f64 im -4700000000000000083970436774470195308926965917880833607707392611884110516961564518837354502815249602548139261930253860408825741312) (*.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/2 re)) (if (<=.f64 im -102000) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (if (<=.f64 im 460) (sin.f64 re) (if (<=.f64 im 1899999999999999972327333632004304047419423895363707418142974243735732644611264355624252868765167271849158031839611959902208) (+.f64 1/12 (+.f64 (/.f64 1/4 (*.f64 re re)) (*.f64 (*.f64 re re) 1/60))) (*.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/2 re))))))
(if (<=.f64 re -6000000000000000321470261757251190741601754709052641715245551381779712473178245071006372260448178287875963768937882105055960988359834270730417737238439343393660586871328523988545420007465373138420158244493609528939524838515649583749176120699730788352) (+.f64 1/12 (*.f64 re (*.f64 re 1/60))) (+.f64 re (*.f64 (*.f64 re (*.f64 im im)) 1/2)))
(if (<=.f64 re -6000000000000000321470261757251190741601754709052641715245551381779712473178245071006372260448178287875963768937882105055960988359834270730417737238439343393660586871328523988545420007465373138420158244493609528939524838515649583749176120699730788352) (+.f64 1/12 (*.f64 re (*.f64 re 1/60))) (+.f64 re (*.f64 1/2 (*.f64 re (*.f64 im im)))))
(if (<=.f64 re -6000000000000000321470261757251190741601754709052641715245551381779712473178245071006372260448178287875963768937882105055960988359834270730417737238439343393660586871328523988545420007465373138420158244493609528939524838515649583749176120699730788352) (+.f64 1/12 (*.f64 re (*.f64 re 1/60))) (*.f64 (*.f64 1/2 re) (+.f64 2 (*.f64 im im))))
(if (<=.f64 re -6000000000000000321470261757251190741601754709052641715245551381779712473178245071006372260448178287875963768937882105055960988359834270730417737238439343393660586871328523988545420007465373138420158244493609528939524838515649583749176120699730788352) (+.f64 1/12 (*.f64 re (*.f64 re 1/60))) (*.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/2 re)))
(if (<=.f64 im -3200000000000000000) (+.f64 1/12 (*.f64 re (*.f64 re 1/60))) (if (<=.f64 im 680000000000000001515327703142799366334704674293791326208) re (+.f64 1/12 (/.f64 1/4 (*.f64 re re)))))
(if (<=.f64 im -8000000000000000000) (+.f64 1/12 (*.f64 re (*.f64 re 1/60))) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) re (/.f64 (/.f64 1/4 re) re)))
(if (<=.f64 im -122000) (/.f64 1/4 (*.f64 re re)) (if (<=.f64 im 240000000000000013345451826368083106739292753064376664064) re (/.f64 (/.f64 1/4 re) re)))
(if (<=.f64 im -105000) (/.f64 1/4 (*.f64 re re)) (if (<=.f64 im 400000000000000036761134032573512952336137838862738128896) re (/.f64 1/4 (*.f64 re re))))
(if (or (<=.f64 im -105000) (not (<=.f64 im 400000000000000036761134032573512952336137838862738128896))) (/.f64 1/4 (*.f64 re re)) re)
re
Compiler

Compiled 866 to 550 computations (36.5% saved)

soundness2.3s (14%)

Rules
1568×unswap-sqr
1550×log-prod
1418×associate-*r*
1418×associate-*r*
1418×associate-*r*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01435
13035
27435
314133
418933
525633
643833
7110433
8315833
9354033
10403133
11567033
12665033
01141482
13251390
210251390
351771390
01354
127354
2427754
03317199
17636947
221136477
373236477
01853
136049
2444849
028182
1635162
03317199
17636947
221136477
373236477
066010643
118319881
269899865
03317199
17636947
221136477
373236477
03317199
17636947
221136477
373236477
03317199
17636947
221136477
373236477
032245
1702245
01141482
13251390
210251390
351771390
032245
1702245
066010643
118319881
269899865
01141482
13251390
210251390
351771390
03317199
17636947
221136477
373236477
032245
1702245
03317199
17636947
221136477
373236477
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
Compiler

Compiled 491 to 320 computations (34.8% saved)

end400.0ms (2.4%)

Compiler

Compiled 1680 to 924 computations (45% saved)

Profiling

Loading profile data...