Details

Time bar (total: 9.4s)

analyze171.0ms (1.8%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
50%50%50%0.1%0%0%0%5
50%50%50%0.1%0%0%0%6
55.2%50%40.6%0.1%9.4%0%0%7
56.1%50%39%0.1%10.9%0%0%8
59.8%50%33.6%0.1%16.4%0%0%9
60.7%50%32.4%0.1%17.6%0%0%10
62.9%50%29.5%0.1%20.5%0%0%11
63.4%50%28.8%0.1%21.2%0%0%12
Compiler

Compiled 15 to 12 computations (20% saved)

sample4.2s (45%)

Results
1.4s2059×body1024valid
1.0s1964×body1024infinite
867.0ms5247×body256valid
344.0ms939×body512infinite
317.0ms944×body512valid
304.0ms1602×body256infinite
8.0msbody2048valid
Bogosity

preprocess92.0ms (1%)

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)

simplify92.0ms (1%)

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

Useful iterations: 3 (0.0ms)

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

eval1.0ms (0%)

Compiler

Compiled 47 to 25 computations (46.8% saved)

prune1.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)))
Compiler

Compiled 13 to 10 computations (23.1% saved)

localize14.0ms (0.1%)

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 35 to 13 computations (62.9% saved)

series5.0ms (0.1%)

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

rewrite35.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

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

simplify74.0ms (0.8%)

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

Useful iterations: 1 (0.0ms)

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

eval17.0ms (0.2%)

Compiler

Compiled 914 to 485 computations (46.9% saved)

prune12.0ms (0.1%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New62567
Fresh000
Picked011
Done000
Total62668
Accurracy
100.0%
Counts
68 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.6%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
98.8%
(*.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)))
98.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
53.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
97.4%
(sin.f64 re)
Compiler

Compiled 131 to 96 computations (26.7% saved)

localize24.0ms (0.3%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
99.9%
(*.f64 (pow.f64 im 4) 1/12)
Compiler

Compiled 57 to 35 computations (38.6% saved)

series6.0ms (0.1%)

Counts
2 → 36
Calls

9 calls:

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

rewrite99.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1626×log-prod
1094×fma-def
622×expm1-udef
614×log1p-udef
462×fma-neg
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01760
137252
2478352
Stop Event
node limit
Counts
2 → 91
Calls
Call 1
Inputs
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
Outputs
(+.f64 0 (*.f64 (pow.f64 im 4) 1/12))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))) (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12))) 1)
(pow.f64 (*.f64 (pow.f64 im 4) 1/12) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) 3)
(pow.f64 (*.f64 1/1728 (pow.f64 (pow.f64 im 4) 3)) 1/3)
(pow.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) 2)
(sqrt.f64 (*.f64 1/144 (pow.f64 im 8)))
(log.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))))
(cbrt.f64 (*.f64 1/1728 (pow.f64 (pow.f64 im 4) 3)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12)))
(exp.f64 (fma.f64 4 (log.f64 im) (log.f64 1/12)))
(exp.f64 (*.f64 (fma.f64 4 (log.f64 im) (log.f64 1/12)) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))))
(+.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1) (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 3)) (fma.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 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (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 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8)))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8))) (*.f64 1/2 (sin.f64 re))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (exp.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (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 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(fma.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/12 (*.f64 (pow.f64 im 4) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) 1/12) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 1 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.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))) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.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 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.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))) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.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 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1 (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sin.f64 re)) 1/2 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (fma.f64 im im 2) (sin.f64 re)) 1/2 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 4)) 1/12 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1/12) (pow.f64 im 4) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8)))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (fma.f64 im im 2) 1/2) (sin.f64 re) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (fma.f64 im im 2) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (fma.f64 im im 2) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) 1/2) (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))

simplify80.0ms (0.9%)

Algorithm
egg-herbie
Rules
780×times-frac
622×unswap-sqr
594×associate-*r*
506×associate-*l*
474×associate-/l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02775569
17555049
228484747
Stop Event
node limit
Counts
127 → 142
Calls
Call 1
Inputs
(*.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))
(*.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 0 (*.f64 (pow.f64 im 4) 1/12))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))) (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12))) 1)
(pow.f64 (*.f64 (pow.f64 im 4) 1/12) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) 3)
(pow.f64 (*.f64 1/1728 (pow.f64 (pow.f64 im 4) 3)) 1/3)
(pow.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) 2)
(sqrt.f64 (*.f64 1/144 (pow.f64 im 8)))
(log.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))))
(cbrt.f64 (*.f64 1/1728 (pow.f64 (pow.f64 im 4) 3)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12)))
(exp.f64 (fma.f64 4 (log.f64 im) (log.f64 1/12)))
(exp.f64 (*.f64 (fma.f64 4 (log.f64 im) (log.f64 1/12)) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))))
(+.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1) (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 3)) (fma.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 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (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 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8)))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8))) (*.f64 1/2 (sin.f64 re))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (exp.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (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 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(fma.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/12 (*.f64 (pow.f64 im 4) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) 1/12) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 1 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.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))) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.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 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.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))) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.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 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1 (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sin.f64 re)) 1/2 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (fma.f64 im im 2) (sin.f64 re)) 1/2 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 4)) 1/12 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1/12) (pow.f64 im 4) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8)))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (fma.f64 im im 2) 1/2) (sin.f64 re) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (fma.f64 im im 2) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (fma.f64 im im 2) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) 1/2) (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
Outputs
(*.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))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))
(*.f64 1/2 (*.f64 re (fma.f64 1/12 (pow.f64 im 4) (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 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))))
(fma.f64 1/2 (*.f64 re (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re))))
(fma.f64 1/240 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 5)) (fma.f64 -1/12 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))))))
(fma.f64 1/240 (*.f64 (pow.f64 re 5) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (fma.f64 1/2 (*.f64 re (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))))
(fma.f64 1/240 (*.f64 (pow.f64 re 5) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3)))))
(+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 7))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))) re)))))
(fma.f64 -1/10080 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 7)) (fma.f64 1/240 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 5)) (fma.f64 -1/12 (*.f64 (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))))))
(fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (fma.f64 1/2 (*.f64 re (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))))))
(+.f64 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3)))) (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/240) (*.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 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (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)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (sin.f64 re)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (sin.f64 re)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 0 (*.f64 (pow.f64 im 4) 1/12))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))) (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(*.f64 1/12 (pow.f64 im 4))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12))) 1)
(*.f64 1/12 (pow.f64 im 4))
(pow.f64 (*.f64 (pow.f64 im 4) 1/12) 1)
(*.f64 1/12 (pow.f64 im 4))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) 3)
(*.f64 1/12 (pow.f64 im 4))
(pow.f64 (*.f64 1/1728 (pow.f64 (pow.f64 im 4) 3)) 1/3)
(*.f64 1/12 (pow.f64 im 4))
(pow.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) 2)
(*.f64 1/12 (pow.f64 im 4))
(sqrt.f64 (*.f64 1/144 (pow.f64 im 8)))
(fabs.f64 (*.f64 1/12 (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))
(*.f64 1/12 (pow.f64 im 4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 1/12 (pow.f64 im 4))
(cbrt.f64 (*.f64 1/1728 (pow.f64 (pow.f64 im 4) 3)))
(*.f64 1/12 (pow.f64 im 4))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 1/12 (pow.f64 im 4))
(exp.f64 (fma.f64 4 (log.f64 im) (log.f64 1/12)))
(*.f64 1/12 (pow.f64 im 4))
(exp.f64 (*.f64 (fma.f64 4 (log.f64 im) (log.f64 1/12)) 1))
(*.f64 1/12 (pow.f64 im 4))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1) (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) 1)
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 3)) (fma.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 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re))) 3)) (fma.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 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re))) (-.f64 (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)) 3)) (fma.f64 (sin.f64 re) (*.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 2) 1/4) (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)) (*.f64 (sin.f64 re) (-.f64 (*.f64 (pow.f64 im 4) 1/24) (*.f64 1/2 (fma.f64 im im 2)))))))
(/.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) (fma.f64 (sin.f64 re) (*.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 2) 1/4) (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)) (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/24 (*.f64 (fma.f64 im im 2) -1/2))))))
(/.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 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (*.f64 (fma.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re))))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))))
(/.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 2) 1/4) (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 8) -1/144) (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) 1/4))) (*.f64 (sin.f64 re) (-.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) 1/24))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) 2)
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (-.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(*.f64 (/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (-.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8)))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 -1/144 (pow.f64 im 8))) (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)) (*.f64 1/2 (sin.f64 re))))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)))
(*.f64 (/.f64 1/2 (/.f64 (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)) (sin.f64 re))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)))
(/.f64 (*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (-.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(*.f64 (/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (-.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8))) (*.f64 1/2 (sin.f64 re))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 -1/144 (pow.f64 im 8))) (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)) (*.f64 1/2 (sin.f64 re))))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)))
(*.f64 (/.f64 1/2 (/.f64 (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)) (sin.f64 re))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 3)
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3) 1/3)
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 2)
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 2))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 re)) 1/2) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (exp.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 1/12 (*.f64 (pow.f64 im 4) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) 1/12) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 1 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.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))) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.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))) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (sin.f64 re) (*.f64 1/2 (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))))) (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (fma.f64 im im 2) (*.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))))))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1 (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 1))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sin.f64 re)) 1/2 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (sin.f64 re)) 1/2 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 4)) 1/12 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1/12) (pow.f64 im 4) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8)))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (sin.f64 re) (*.f64 1/2 (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))))) (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (fma.f64 im im 2) (*.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) 1/2) (sin.f64 re) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) 1/2) (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))

localize3.0ms (0%)

Compiler

Compiled 5 to 3 computations (40% saved)

localize14.0ms (0.1%)

Local Accuracy

Found 1 expressions with local accuracy:

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

Compiled 30 to 15 computations (50% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 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)))
0.0ms
re
@-inf
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
0.0ms
im
@inf
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
0.0ms
im
@0
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))

rewrite70.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1162×log-prod
804×pow-prod-down
664×prod-diff
558×pow-prod-up
518×pow-exp
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01229
125525
2322625
Stop Event
node limit
Counts
1 → 77
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
Outputs
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) (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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 2)) (-.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(/.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 (*.f64 1/4 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)) 2)) 1/2)
(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 (*.f64 1/4 (pow.f64 (*.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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(log.f64 (*.f64 (exp.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (exp.f64 (sin.f64 re))))
(log.f64 (*.f64 (exp.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 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))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 2))
(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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) (sin.f64 re))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (cbrt.f64 (pow.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 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (sin.f64 re))
(fma.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (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 2 (sin.f64 re)) 1/2 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 1/2 (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re) (sin.f64 re))
(fma.f64 (pow.f64 (*.f64 im (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))
(fma.f64 (*.f64 2 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2))) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 2 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2))) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))

simplify111.0ms (1.2%)

Algorithm
egg-herbie
Rules
1248×fma-def
588×log-prod
560×distribute-lft-in
548×distribute-rgt-in
510×*-commutative
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02153313
15533271
214393181
351913097
Stop Event
node limit
Counts
101 → 134
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 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) (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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 2)) (-.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(/.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 (*.f64 1/4 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)) 2)) 1/2)
(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 (*.f64 1/4 (pow.f64 (*.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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(log.f64 (*.f64 (exp.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (exp.f64 (sin.f64 re))))
(log.f64 (*.f64 (exp.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 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))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 2))
(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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) (sin.f64 re))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (cbrt.f64 (pow.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 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (sin.f64 re))
(fma.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (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 2 (sin.f64 re)) 1/2 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (*.f64 (*.f64 im im) (sin.f64 re)) 1/2 (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re) (sin.f64 re))
(fma.f64 (pow.f64 (*.f64 im (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))
(fma.f64 (*.f64 2 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2))) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 2 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2))) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))))
(fma.f64 1/2 (*.f64 (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/240 (*.f64 (fma.f64 im im 2) (pow.f64 re 5)) (*.f64 (fma.f64 im im 2) (*.f64 (pow.f64 re 3) -1/12))))
(fma.f64 1/2 (*.f64 (fma.f64 im im 2) re) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/240 (pow.f64 re 5)))))
(*.f64 (fma.f64 im im 2) (+.f64 (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))) (*.f64 1/240 (pow.f64 re 5))))
(+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))))
(fma.f64 -1/10080 (*.f64 (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/240 (*.f64 (fma.f64 im im 2) (pow.f64 re 5)) (*.f64 (fma.f64 im im 2) (*.f64 (pow.f64 re 3) -1/12)))))
(+.f64 (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3)))) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 (fma.f64 im im 2) (+.f64 (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.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) (fma.f64 1/2 (*.f64 im im) 1))
(*.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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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) (fma.f64 1/2 (*.f64 im im) 1))
(+.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) (fma.f64 1/2 (*.f64 im im) 1))
(+.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) (fma.f64 1/2 (*.f64 im im) 1))
(*.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 im im)))
(*.f64 1/2 (*.f64 im (*.f64 im (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) (fma.f64 1/2 (*.f64 im im) 1))
(+.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) (fma.f64 1/2 (*.f64 im im) 1))
(+.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) (fma.f64 1/2 (*.f64 im im) 1))
(*.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 im im)))
(*.f64 1/2 (*.f64 im (*.f64 im (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) (fma.f64 1/2 (*.f64 im im) 1))
(+.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) (fma.f64 1/2 (*.f64 im im) 1))
(+.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) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.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 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (*.f64 im im) 1)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.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 (*.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) (fma.f64 1/2 (*.f64 im im) 1))
(-.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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 3))) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))))
(/.f64 (fma.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 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 (fma.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 3) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) (*.f64 (sin.f64 re) (-.f64 (*.f64 1/2 (*.f64 im im)) 1)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (fma.f64 (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 2)) (-.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (pow.f64 im 4))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 im 4)) -1/4)) (*.f64 (sin.f64 re) (-.f64 1 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) 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 1/2 (*.f64 (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)) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)) (+.f64 8 (pow.f64 im 6)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 8 (pow.f64 im 6)) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)))
(/.f64 (sin.f64 re) (/.f64 (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4) (+.f64 4 (*.f64 1/2 (pow.f64 im 6)))))
(/.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 1/2 (sin.f64 re)) (-.f64 2 (*.f64 im im))) (-.f64 4 (pow.f64 im 4)))
(*.f64 (/.f64 1/2 (-.f64 2 (*.f64 im im))) (*.f64 (sin.f64 re) (-.f64 4 (pow.f64 im 4))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (-.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 1/2 (*.f64 (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)) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)) (+.f64 8 (pow.f64 im 6)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 8 (pow.f64 im 6)) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)))
(/.f64 (sin.f64 re) (/.f64 (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4) (+.f64 4 (*.f64 1/2 (pow.f64 im 6)))))
(/.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 1/2 (sin.f64 re)) (-.f64 2 (*.f64 im im))) (-.f64 4 (pow.f64 im 4)))
(*.f64 (/.f64 1/2 (-.f64 2 (*.f64 im im))) (*.f64 (sin.f64 re) (-.f64 4 (pow.f64 im 4))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (-.f64 4 (pow.f64 im 4)) (-.f64 2 (*.f64 im im))))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(pow.f64 (*.f64 1/4 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)) 2)) 1/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) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(sqrt.f64 (*.f64 1/4 (pow.f64 (*.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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (exp.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(log.f64 (*.f64 (exp.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(log.f64 (*.f64 (exp.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (+.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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (*.f64 (log.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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (*.f64 (log.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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (*.f64 (log.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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sin.f64 re) 1 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 1 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 1 (*.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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 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 (cbrt.f64 (pow.f64 im 4)) (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (*.f64 im im))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 1/2 (*.f64 (sin.f64 re) (cbrt.f64 (*.f64 im im)))) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im)))))
(fma.f64 (cbrt.f64 (pow.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 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 (*.f64 im im) (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)) (*.f64 (*.f64 im im) (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)) (*.f64 im (*.f64 im (cbrt.f64 (*.f64 1/2 (sin.f64 re))))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 2 (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 2 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4))) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (*.f64 2 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))))))
(fma.f64 2 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 2 (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 2 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4))) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (*.f64 2 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))))))
(fma.f64 2 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 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))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) (cbrt.f64 (*.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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (sqrt.f64 (*.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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (*.f64 im (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) 2) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (pow.f64 (*.f64 im (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) 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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(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))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 1/2 (*.f64 (sin.f64 re) (cbrt.f64 (*.f64 im im)))) (sin.f64 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im)))))
(fma.f64 (*.f64 2 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2))) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 2 (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 2 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4))) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (*.f64 2 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))))))
(fma.f64 2 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
(fma.f64 (*.f64 2 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2))) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 2 (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 2 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4))) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (*.f64 2 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))))))
(fma.f64 2 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)) (cbrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re)))))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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) (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))

localize12.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
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))))
Compiler

Compiled 31 to 12 computations (61.3% saved)

series3.0ms (0%)

Counts
2 → 32
Calls

9 calls:

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

rewrite33.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
266×add-sqr-sqrt
254×pow1
254×*-un-lft-identity
250×add-exp-log
248×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

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

simplify55.0ms (0.6%)

Algorithm
egg-herbie
Rules
1474×associate-*r*
1100×distribute-lft-in
904×distribute-rgt-in
622×associate-+l+
364×fma-def
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0881839
11811839
23961723
313581723
474311723
Stop Event
unsound
Counts
67 → 49
Calls
Call 1
Inputs
(*.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 re re)
(-.f64 (exp.f64 (log1p.f64 re)) -2)
(/.f64 re -2)
(/.f64 re (+.f64 re (-.f64 re re)))
(/.f64 (-.f64 re re) (-.f64 re re))
(pow.f64 re -2)
(pow.f64 re 1/3)
(sqrt.f64 re)
(fabs.f64 re)
(log.f64 (exp.f64 re))
(log.f64 (+.f64 -2 (expm1.f64 re)))
(cbrt.f64 re)
(expm1.f64 (log1p.f64 re))
(exp.f64 (log.f64 re))
(exp.f64 (*.f64 (log.f64 re) -2))
(log1p.f64 (expm1.f64 re))
(fma.f64 re -2 re)
(fma.f64 -2 re re)
-2
-1
0
1/512
1/64
1/16
1/8
1/4
1/2
1
3/2
2
3
4
8
9
27
Outputs
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
re
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 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 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 (*.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 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
2
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 re re)
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(-.f64 (exp.f64 (log1p.f64 re)) -2)
(+.f64 (exp.f64 (log1p.f64 re)) 2)
(+.f64 2 (exp.f64 (log1p.f64 re)))
(/.f64 re -2)
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(/.f64 (-.f64 re re) (-.f64 re re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(pow.f64 re -2)
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(pow.f64 re 1/3)
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(sqrt.f64 re)
(fabs.f64 re)
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(log.f64 (exp.f64 re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(log.f64 (+.f64 -2 (expm1.f64 re)))
(cbrt.f64 re)
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(expm1.f64 (log1p.f64 re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(exp.f64 (log.f64 re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(exp.f64 (*.f64 (log.f64 re) -2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(log1p.f64 (expm1.f64 re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(fma.f64 re -2 re)
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(fma.f64 -2 re re)
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
-2
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
-1
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
0
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
1/512
1/64
1/16
1/8
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
1/4
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
1/2
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
1
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
3/2
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
2
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
3
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
4
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
8
9
27

localize11.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 33 to 14 computations (57.6% saved)

series11.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

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

rewrite121.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1148×log-prod
780×pow-prod-down
652×fma-def
548×pow-prod-up
520×pow-exp
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01156
123152
2303152
Stop Event
node limit
Counts
2 → 91
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
Outputs
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (*.f64 im im))) (sin.f64 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (*.f64 im im))) (sin.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (*.f64 im im))) (sin.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (*.f64 im im))) (sin.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))) 1)
(pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 6) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 (*.f64 im im))) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 6))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 6)) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re))))) 2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)))) 1)
(-.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))) (/.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(*.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)) 1)
(*.f64 1 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)))
(*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))))
(*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))) (sqrt.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(*.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4)) (/.f64 1 (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)) (fma.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (sin.f64 re) 3))))
(/.f64 1 (/.f64 (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4))))
(/.f64 (fma.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (fma.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (sin.f64 re) 3)) (fma.f64 (pow.f64 im 4) (*.f64 (pow.f64 (sin.f64 re) 2) 1/4) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4)) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (sin.f64 re) 3))) (neg.f64 (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4))) (neg.f64 (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4) (pow.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (sin.f64 re)))
(pow.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))) 2)
(pow.f64 (/.f64 (fma.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)) (pow.f64 (sin.f64 re) 2)) (fma.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (sin.f64 re) 3))) -1)
(pow.f64 (/.f64 (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) (-.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4))) -1)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)))))
(log.f64 (*.f64 (exp.f64 (sin.f64 re)) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (pow.f64 (sqrt.f64 (exp.f64 (*.f64 im im))) (sin.f64 re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))))
(log.f64 (*.f64 (pow.f64 (sqrt.f64 (exp.f64 (*.f64 im im))) (sin.f64 re)) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))) (exp.f64 (sin.f64 re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))))
(exp.f64 (log.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)))) 2))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im) (sin.f64 re))
(fma.f64 im (*.f64 1/2 (*.f64 (sin.f64 re) im)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)) (sin.f64 re))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) 1 (sin.f64 re))
(fma.f64 1 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 (cbrt.f64 im) im) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 4)) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))) (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))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(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 (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 1/2 (*.f64 (sin.f64 re) im)) im (sin.f64 re))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2 (sin.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (cbrt.f64 im) im)) (cbrt.f64 (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im im) 1/2) (sin.f64 re) (sin.f64 re))
(fma.f64 (pow.f64 (*.f64 im (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 (*.f64 (sin.f64 re) im)) 1) im (sin.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 im) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (sqrt.f64 im)) (sqrt.f64 im) (sin.f64 re))

simplify146.0ms (1.6%)

Algorithm
egg-herbie
Rules
1552×fma-neg
726×*-commutative
678×distribute-lft-in
656×distribute-rgt-in
576×unswap-sqr
Iterations

Useful iterations: 3 (0.0ms)

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

eval319.0ms (3.4%)

Compiler

Compiled 9175 to 5416 computations (41% saved)

prune145.0ms (1.5%)

Pruning

18 alts after pruning (12 fresh and 6 done)

PrunedKeptTotal
New45712469
Fresh000
Picked011
Done055
Total45718475
Accurracy
100.0%
Counts
475 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
8.3%
(/.f64 re (+.f64 re (-.f64 re re)))
3.4%
(/.f64 re -2)
98.6%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
52.1%
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
11.1%
(+.f64 re re)
98.8%
(*.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)))
98.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
53.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
9.6%
(*.f64 (*.f64 1/2 re) 27)
10.4%
(*.f64 (*.f64 1/2 re) 1/2)
8.5%
(*.f64 (*.f64 1/2 re) 1/512)
52.1%
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
53.0%
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
4.7%
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
97.4%
(sin.f64 re)
5.4%
(cbrt.f64 re)
51.7%
re
Compiler

Compiled 251 to 183 computations (27.1% saved)

localize10.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
100.0%
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
100.0%
(/.f64 re (exp.f64 im))
Compiler

Compiled 29 to 8 computations (72.4% saved)

series5.0ms (0.1%)

Counts
2 → 28
Calls

12 calls:

TimeVariablePointExpression
1.0ms
re
@0
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
1.0ms
re
@-inf
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
0.0ms
im
@0
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
0.0ms
re
@inf
(/.f64 re (exp.f64 im))
0.0ms
re
@0
(/.f64 re (exp.f64 im))

rewrite84.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1820×pow1
1664×add-exp-log
1664×log1p-expm1-u
1664×expm1-log1p-u
1624×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0934
117934
2223534
Stop Event
node limit
Counts
2 → 53
Calls
Call 1
Inputs
(/.f64 re (exp.f64 im))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
Outputs
(-.f64 (+.f64 1 (/.f64 re (exp.f64 im))) 1)
(*.f64 re (exp.f64 (neg.f64 im)))
(*.f64 (/.f64 re (exp.f64 im)) 1)
(*.f64 1 (/.f64 re (exp.f64 im)))
(*.f64 (pow.f64 (cbrt.f64 re) 2) (*.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 (exp.f64 (neg.f64 im)) re)
(*.f64 (/.f64 1 (cbrt.f64 (exp.f64 (+.f64 im im)))) (/.f64 re (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 re (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1) (/.f64 (cbrt.f64 re) (exp.f64 im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (exp.f64 (+.f64 im im)))) (cbrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (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) (cbrt.f64 (exp.f64 (+.f64 im im)))) (/.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))))
(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))
(log1p.f64 (expm1.f64 (/.f64 re (exp.f64 im))))
(+.f64 (/.f64 re (exp.f64 im)) (*.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 re (exp.f64 im)))
(-.f64 (+.f64 1 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 1)
(*.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)))))
(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)))))
(log1p.f64 (expm1.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))

simplify64.0ms (0.7%)

Algorithm
egg-herbie
Rules
750×unswap-sqr
632×distribute-lft-in
612×distribute-rgt-in
530×associate-*r/
496×fma-neg
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01862361
14982021
219691791
Stop Event
node limit
Counts
81 → 99
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 (+.f64 1 (/.f64 re (exp.f64 im))) 1)
(*.f64 re (exp.f64 (neg.f64 im)))
(*.f64 (/.f64 re (exp.f64 im)) 1)
(*.f64 1 (/.f64 re (exp.f64 im)))
(*.f64 (pow.f64 (cbrt.f64 re) 2) (*.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 (exp.f64 (neg.f64 im)) re)
(*.f64 (/.f64 1 (cbrt.f64 (exp.f64 (+.f64 im im)))) (/.f64 re (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 re (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1) (/.f64 (cbrt.f64 re) (exp.f64 im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (exp.f64 (+.f64 im im)))) (cbrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (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) (cbrt.f64 (exp.f64 (+.f64 im im)))) (/.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))))
(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))
(log1p.f64 (expm1.f64 (/.f64 re (exp.f64 im))))
(+.f64 (/.f64 re (exp.f64 im)) (*.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 re (exp.f64 im)))
(-.f64 (+.f64 1 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 1)
(*.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)))))
(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)))))
(log1p.f64 (expm1.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
Outputs
re
(+.f64 (*.f64 -1 (*.f64 re im)) re)
(fma.f64 -1 (*.f64 re im) re)
(-.f64 re (*.f64 re im))
(*.f64 re (-.f64 1 im))
(+.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 re (*.f64 re (+.f64 im (*.f64 -1/2 (*.f64 im 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/6) (pow.f64 im 3) re) (*.f64 re (+.f64 im (*.f64 -1/2 (*.f64 im 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 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 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 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 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.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 (+.f64 2 (*.f64 im im)))
(+.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)))
(fma.f64 re (*.f64 im im) (fma.f64 re 2 (*.f64 (pow.f64 im 3) (*.f64 0 (*.f64 re -1/2)))))
(fma.f64 re (*.f64 im im) (fma.f64 re 2 (*.f64 (pow.f64 im 3) 0)))
(+.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 (fma.f64 re (*.f64 im im) (fma.f64 re 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 (fma.f64 re (*.f64 im im) (fma.f64 re 2 (*.f64 (pow.f64 im 3) 0))) (*.f64 (pow.f64 im 4) (fma.f64 re -1/6 (*.f64 re 1/12))))
(+.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 (+.f64 1 (/.f64 re (exp.f64 im))) 1)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 re (exp.f64 (neg.f64 im)))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (/.f64 re (exp.f64 im)) 1)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 1 (/.f64 re (exp.f64 im)))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (exp.f64 (neg.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (cbrt.f64 (/.f64 re (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 (neg.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) (sqrt.f64 (/.f64 re (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (neg.f64 re) (/.f64 1 (neg.f64 (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (exp.f64 (neg.f64 im)) re)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (/.f64 1 (cbrt.f64 (exp.f64 (+.f64 im im)))) (/.f64 re (cbrt.f64 (exp.f64 im))))
(/.f64 (*.f64 1 (/.f64 re (cbrt.f64 (exp.f64 im)))) (cbrt.f64 (exp.f64 (+.f64 im im))))
(/.f64 (/.f64 re (cbrt.f64 (exp.f64 im))) (cbrt.f64 (pow.f64 (exp.f64 2) im)))
(/.f64 (/.f64 re (cbrt.f64 (exp.f64 im))) (cbrt.f64 (pow.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 (pow.f64 (cbrt.f64 re) 2) 1) (/.f64 (cbrt.f64 re) (exp.f64 im)))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (exp.f64 (+.f64 im im)))) (cbrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (/.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (/.f64 re (exp.f64 im)))) (cbrt.f64 (pow.f64 (exp.f64 2) im)))
(/.f64 (pow.f64 (cbrt.f64 re) 2) (/.f64 (cbrt.f64 (pow.f64 (exp.f64 im) 2)) (cbrt.f64 (/.f64 re (exp.f64 im)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 (exp.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im))))
(*.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 (sqrt.f64 re) 1) (/.f64 (sqrt.f64 re) (exp.f64 im)))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 (+.f64 im im)))) (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 im))))
(/.f64 (*.f64 1 (/.f64 re (cbrt.f64 (exp.f64 im)))) (cbrt.f64 (exp.f64 (+.f64 im im))))
(/.f64 (/.f64 re (cbrt.f64 (exp.f64 im))) (cbrt.f64 (pow.f64 (exp.f64 2) im)))
(/.f64 (/.f64 re (cbrt.f64 (exp.f64 im))) (cbrt.f64 (pow.f64 (exp.f64 im) 2)))
(pow.f64 (/.f64 re (exp.f64 im)) 1)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 3)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(pow.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(pow.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) 2)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(pow.f64 (/.f64 (exp.f64 im) re) -1)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(neg.f64 (/.f64 re (neg.f64 (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(sqrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(log.f64 (exp.f64 (/.f64 re (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(cbrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(cbrt.f64 (/.f64 (pow.f64 re 3) (pow.f64 (exp.f64 im) 3)))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(expm1.f64 (log1p.f64 (/.f64 re (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(exp.f64 (-.f64 (log.f64 re) im))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(log1p.f64 (expm1.f64 (/.f64 re (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.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 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 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 1 (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 (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 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 (/.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 re (*.f64 (pow.f64 (exp.f64 2) im) re) (*.f64 (/.f64 re (exp.f64 im)) (-.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)) (+.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (-.f64 (exp.f64 im) (exp.f64 (neg.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) (exp.f64 (+.f64 im im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))
(/.f64 (-.f64 (*.f64 re (*.f64 (pow.f64 (exp.f64 2) im) re)) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))
(/.f64 (-.f64 (*.f64 re (*.f64 (pow.f64 (exp.f64 im) 2) re)) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (*.f64 re (-.f64 (exp.f64 im) (exp.f64 (neg.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))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(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)))
(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)))
(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)))

localize3.0ms (0%)

Compiler

Compiled 6 to 3 computations (50% saved)

localize5.0ms (0.1%)

Compiler

Compiled 13 to 10 computations (23.1% saved)

localize23.0ms (0.2%)

Compiler

Compiled 13 to 10 computations (23.1% saved)

localize9.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 30 to 16 computations (46.7% saved)

series3.0ms (0%)

Counts
2 → 36
Calls

9 calls:

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

rewrite123.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1030×prod-diff
942×log-prod
776×prod-exp
738×fma-def
654×pow-prod-down
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01038
120934
2265534
Stop Event
node limit
Counts
2 → 103
Calls
Call 1
Inputs
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(*.f64 1/2 (*.f64 im im))
Outputs
(+.f64 re (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(+.f64 0 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 1)
(/.f64 (+.f64 (pow.f64 re 3) (*.f64 (*.f64 1/8 (pow.f64 im 6)) (pow.f64 re 3))) (fma.f64 re re (-.f64 (pow.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 2) (*.f64 re (*.f64 (*.f64 re 1/2) (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 2)) (-.f64 re (*.f64 (*.f64 re 1/2) (*.f64 im im))))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (*.f64 re (-.f64 1 (*.f64 1/4 (pow.f64 im 4)))) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) 1) re) (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 1 (*.f64 1/4 (pow.f64 im 4))) re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 3)
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 2))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 re)) (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im) re)))
(log.f64 (*.f64 (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im) re) (+.f64 1 (expm1.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 3))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))
(exp.f64 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 2))
(exp.f64 (+.f64 (log.f64 re) (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (log1p.f64 (*.f64 1/2 (*.f64 im im)))))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1)))
(exp.f64 (+.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) (*.f64 (log.f64 re) 1)))
(exp.f64 (+.f64 (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1) (log.f64 re)))
(exp.f64 (+.f64 (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1) (*.f64 (log.f64 re) 1)))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))
(fma.f64 re 1 (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 re 1 (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 re (*.f64 1/2 (*.f64 im im)) re)
(fma.f64 1 re (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 1 re (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 1 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(fma.f64 1/2 (*.f64 (*.f64 im im) re) re)
(fma.f64 (*.f64 im im) (*.f64 1/2 re) re)
(fma.f64 (*.f64 1/2 (*.f64 im im)) re re)
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) re) re)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) 1) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) 1) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (*.f64 1/2 (*.f64 im im))) re)
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 1/2)) re) re)
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) 1) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) 1) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (*.f64 1/2 (*.f64 im im))) re)
(fma.f64 (*.f64 1/2 im) (*.f64 im re) re)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im))) 2) (cbrt.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im))) re)
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) re)
(fma.f64 (pow.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 re)) 2) (cbrt.f64 re) re)
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 re) re)
(fma.f64 (*.f64 re 1/2) (*.f64 im im) re)
(fma.f64 (*.f64 re (*.f64 im im)) 1/2 re)
(fma.f64 (*.f64 re (cbrt.f64 (*.f64 1/4 (pow.f64 im 4)))) (cbrt.f64 (*.f64 1/2 (*.f64 im im))) re)
(fma.f64 (*.f64 re (*.f64 im (sqrt.f64 1/2))) (*.f64 im (sqrt.f64 1/2)) re)
(fma.f64 (*.f64 re (*.f64 1/2 im)) im re)
(+.f64 0 (*.f64 1/2 (*.f64 im im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))))
(-.f64 (fma.f64 1/2 (*.f64 im im) 1) 1)
(pow.f64 (*.f64 1/2 (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) 3)
(pow.f64 (*.f64 1/4 (pow.f64 im 4)) 1/2)
(pow.f64 (*.f64 1/8 (pow.f64 im 6)) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))))
(cbrt.f64 (*.f64 1/8 (pow.f64 im 6)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im im))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) 3))
(exp.f64 (*.f64 (log.f64 (*.f64 1/8 (pow.f64 im 6))) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 1/2))) 2))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 1/2 im))))
(exp.f64 (+.f64 (log.f64 (*.f64 1/2 im)) (*.f64 (log.f64 im) 1)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im im))))
(fma.f64 1 (fma.f64 1/2 (*.f64 im im) 1) -1)
(fma.f64 (fma.f64 1/2 (*.f64 im im) 1) 1 -1)
(fma.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2) -1)
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) -1)
(fma.f64 (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))) -1)
(fma.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (/.f64 1 (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 -1/2 (*.f64 im im))))) -1)
(fma.f64 (-.f64 1 (*.f64 1/4 (pow.f64 im 4))) (/.f64 1 (+.f64 1 (*.f64 -1/2 (*.f64 im im)))) -1)

simplify87.0ms (0.9%)

Algorithm
egg-herbie
Rules
1236×fma-def
994×fma-neg
700×prod-exp
670×log-prod
610×*-commutative
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02583141
16173053
215602967
356882963
Stop Event
node limit
Counts
139 → 143
Calls
Call 1
Inputs
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
re
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 re (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(+.f64 re (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(+.f64 0 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 1)
(/.f64 (+.f64 (pow.f64 re 3) (*.f64 (*.f64 1/8 (pow.f64 im 6)) (pow.f64 re 3))) (fma.f64 re re (-.f64 (pow.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 2) (*.f64 re (*.f64 (*.f64 re 1/2) (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 2)) (-.f64 re (*.f64 (*.f64 re 1/2) (*.f64 im im))))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (*.f64 re (-.f64 1 (*.f64 1/4 (pow.f64 im 4)))) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) 1) re) (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 1 (*.f64 1/4 (pow.f64 im 4))) re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 3)
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 2))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 re)) (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im) re)))
(log.f64 (*.f64 (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im) re) (+.f64 1 (expm1.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 3))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))
(exp.f64 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 2))
(exp.f64 (+.f64 (log.f64 re) (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (log1p.f64 (*.f64 1/2 (*.f64 im im)))))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1)))
(exp.f64 (+.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) (*.f64 (log.f64 re) 1)))
(exp.f64 (+.f64 (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1) (log.f64 re)))
(exp.f64 (+.f64 (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1) (*.f64 (log.f64 re) 1)))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))
(fma.f64 re 1 (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 re 1 (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 re (*.f64 1/2 (*.f64 im im)) re)
(fma.f64 1 re (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 1 re (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 1 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(fma.f64 1/2 (*.f64 (*.f64 im im) re) re)
(fma.f64 (*.f64 im im) (*.f64 1/2 re) re)
(fma.f64 (*.f64 1/2 (*.f64 im im)) re re)
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) re) re)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) 1) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) 1) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (*.f64 1/2 (*.f64 im im))) re)
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 1/2)) re) re)
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) 1) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) 1) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (*.f64 1/2 (*.f64 im im))) re)
(fma.f64 (*.f64 1/2 im) (*.f64 im re) re)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im))) 2) (cbrt.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im))) re)
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) re)
(fma.f64 (pow.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 re)) 2) (cbrt.f64 re) re)
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 re) re)
(fma.f64 (*.f64 re 1/2) (*.f64 im im) re)
(fma.f64 (*.f64 re (*.f64 im im)) 1/2 re)
(fma.f64 (*.f64 re (cbrt.f64 (*.f64 1/4 (pow.f64 im 4)))) (cbrt.f64 (*.f64 1/2 (*.f64 im im))) re)
(fma.f64 (*.f64 re (*.f64 im (sqrt.f64 1/2))) (*.f64 im (sqrt.f64 1/2)) re)
(fma.f64 (*.f64 re (*.f64 1/2 im)) im re)
(+.f64 0 (*.f64 1/2 (*.f64 im im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))))
(-.f64 (fma.f64 1/2 (*.f64 im im) 1) 1)
(pow.f64 (*.f64 1/2 (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) 3)
(pow.f64 (*.f64 1/4 (pow.f64 im 4)) 1/2)
(pow.f64 (*.f64 1/8 (pow.f64 im 6)) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))))
(cbrt.f64 (*.f64 1/8 (pow.f64 im 6)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im im))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) 3))
(exp.f64 (*.f64 (log.f64 (*.f64 1/8 (pow.f64 im 6))) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 1/2))) 2))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 1/2 im))))
(exp.f64 (+.f64 (log.f64 (*.f64 1/2 im)) (*.f64 (log.f64 im) 1)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im im))))
(fma.f64 1 (fma.f64 1/2 (*.f64 im im) 1) -1)
(fma.f64 (fma.f64 1/2 (*.f64 im im) 1) 1 -1)
(fma.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2) -1)
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) -1)
(fma.f64 (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))) -1)
(fma.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (/.f64 1 (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 -1/2 (*.f64 im im))))) -1)
(fma.f64 (-.f64 1 (*.f64 1/4 (pow.f64 im 4))) (/.f64 1 (+.f64 1 (*.f64 -1/2 (*.f64 im im)))) -1)
Outputs
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
re
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(+.f64 re (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 re (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 0 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))))
(*.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))) 3)
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 1)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(/.f64 (+.f64 (pow.f64 re 3) (*.f64 (*.f64 1/8 (pow.f64 im 6)) (pow.f64 re 3))) (fma.f64 re re (-.f64 (pow.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 2) (*.f64 re (*.f64 (*.f64 re 1/2) (*.f64 im im))))))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (pow.f64 re 3)) (fma.f64 re re (-.f64 (pow.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) 2) (*.f64 (*.f64 re (*.f64 1/2 re)) (*.f64 im im)))))
(/.f64 (*.f64 (pow.f64 re 3) (fma.f64 1/8 (pow.f64 im 6) 1)) (fma.f64 re re (*.f64 (*.f64 im (*.f64 1/2 (*.f64 im re))) (-.f64 (*.f64 im (*.f64 1/2 (*.f64 im re))) re))))
(/.f64 (*.f64 (pow.f64 re 3) (fma.f64 1/8 (pow.f64 im 6) 1)) (fma.f64 re re (*.f64 (*.f64 re re) (-.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (*.f64 (pow.f64 re 3) (fma.f64 1/8 (pow.f64 im 6) 1)) (fma.f64 re re (*.f64 (*.f64 re re) (fma.f64 im (*.f64 im -1/2) (*.f64 1/4 (pow.f64 im 4))))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 2)) (-.f64 re (*.f64 (*.f64 re 1/2) (*.f64 im im))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) 2)) (-.f64 re (*.f64 1/2 (*.f64 re (*.f64 im im)))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (*.f64 im (*.f64 1/2 (*.f64 im re))) 2)) (-.f64 re (*.f64 im (*.f64 1/2 (*.f64 im re)))))
(/.f64 (fma.f64 re re (*.f64 (*.f64 re re) (*.f64 (pow.f64 im 4) -1/4))) (*.f64 re (fma.f64 im (*.f64 im -1/2) 1)))
(/.f64 (fma.f64 re re (*.f64 -1/4 (*.f64 (*.f64 re re) (pow.f64 im 4)))) (*.f64 re (fma.f64 im (*.f64 im -1/2) 1)))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 (*.f64 im im) -1/2))))
(*.f64 (/.f64 re (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 im (*.f64 im -1/2))))) (fma.f64 1/8 (pow.f64 im 6) 1))
(*.f64 re (/.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (fma.f64 1/4 (pow.f64 im 4) (fma.f64 im (*.f64 im -1/2) 1))))
(/.f64 (*.f64 re (-.f64 1 (*.f64 1/4 (pow.f64 im 4)))) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(/.f64 re (/.f64 (+.f64 1 (*.f64 (*.f64 im im) -1/2)) (+.f64 1 (*.f64 -1/4 (pow.f64 im 4)))))
(*.f64 (/.f64 re (fma.f64 (*.f64 im im) -1/2 1)) (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (fma.f64 im (*.f64 im -1/2) 1)))
(*.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 re (fma.f64 im (*.f64 im -1/2) 1)))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) 1) re) (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 (*.f64 im im) -1/2))))
(*.f64 (/.f64 re (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 im (*.f64 im -1/2))))) (fma.f64 1/8 (pow.f64 im 6) 1))
(*.f64 re (/.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (fma.f64 1/4 (pow.f64 im 4) (fma.f64 im (*.f64 im -1/2) 1))))
(/.f64 (*.f64 (-.f64 1 (*.f64 1/4 (pow.f64 im 4))) re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(/.f64 re (/.f64 (+.f64 1 (*.f64 (*.f64 im im) -1/2)) (+.f64 1 (*.f64 -1/4 (pow.f64 im 4)))))
(*.f64 (/.f64 re (fma.f64 (*.f64 im im) -1/2 1)) (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (fma.f64 im (*.f64 im -1/2) 1)))
(*.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 re (fma.f64 im (*.f64 im -1/2) 1)))
(pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 1)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 3)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 2) 1/2)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 3) 1/3)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 2)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 2))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(log.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 re)) (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im) re)))
(+.f64 (log1p.f64 (expm1.f64 re)) (*.f64 re (*.f64 im (log.f64 (sqrt.f64 (exp.f64 im))))))
(fma.f64 re (*.f64 im (log.f64 (sqrt.f64 (exp.f64 im)))) re)
(log.f64 (*.f64 (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im) re) (+.f64 1 (expm1.f64 re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 re)) (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im) re)))
(+.f64 (log1p.f64 (expm1.f64 re)) (*.f64 re (*.f64 im (log.f64 (sqrt.f64 (exp.f64 im))))))
(fma.f64 re (*.f64 im (log.f64 (sqrt.f64 (exp.f64 im)))) re)
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 3))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 1) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 3))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 1/3))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 2))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (+.f64 (log.f64 re) (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (log1p.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (+.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) (*.f64 (log.f64 re) 1)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (+.f64 (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1) (log.f64 re)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (+.f64 (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1) (*.f64 (log.f64 re) 1)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 re 1 (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 re 1 (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 re (*.f64 1/2 (*.f64 im im)) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 1 re (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 1 re (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 1 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 1/2 (*.f64 (*.f64 im im) re) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 im im) (*.f64 1/2 re) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 1/2 (*.f64 im im)) re re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) re) re)
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 re (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) re)
(fma.f64 re (*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) re)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) 2) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) 1) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) 1) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (*.f64 1/2 (*.f64 im im))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 1/2)) re) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) 1) (*.f64 (*.f64 re 1/2) (*.f64 im im)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) 1) (*.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (*.f64 1/2 (*.f64 im im))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 1/2 im) (*.f64 im re) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im))) 2) (cbrt.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (*.f64 (*.f64 im (sqrt.f64 1/2)) (cbrt.f64 re)) 2) (cbrt.f64 re) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 re) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 re 1/2) (*.f64 im im) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 re (*.f64 im im)) 1/2 re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 re (cbrt.f64 (*.f64 1/4 (pow.f64 im 4)))) (cbrt.f64 (*.f64 1/2 (*.f64 im im))) re)
(fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (*.f64 re (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) re)
(fma.f64 re (*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 im 4))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) re)
(fma.f64 (*.f64 re (*.f64 im (sqrt.f64 1/2))) (*.f64 im (sqrt.f64 1/2)) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 re (*.f64 1/2 im)) im re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 0 (*.f64 1/2 (*.f64 im im)))
(*.f64 1/2 (*.f64 im im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im)) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))))
(*.f64 im (log.f64 (sqrt.f64 (exp.f64 im))))
(-.f64 (fma.f64 1/2 (*.f64 im im) 1) 1)
(*.f64 1/2 (*.f64 im im))
(pow.f64 (*.f64 1/2 (*.f64 im im)) 1)
(*.f64 1/2 (*.f64 im im))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) 3)
(*.f64 1/2 (*.f64 im im))
(pow.f64 (*.f64 1/4 (pow.f64 im 4)) 1/2)
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(pow.f64 (*.f64 1/8 (pow.f64 im 6)) 1/3)
(*.f64 1/2 (*.f64 im im))
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(*.f64 1/2 (*.f64 im im))
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) im))))
(*.f64 im (log.f64 (sqrt.f64 (exp.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 1/2 (*.f64 im im))
(cbrt.f64 (*.f64 1/8 (pow.f64 im 6)))
(*.f64 1/2 (*.f64 im im))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 1/2 (*.f64 im im))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))) 1))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 1))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 1) 1))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) 3))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (*.f64 1/8 (pow.f64 im 6))) 1/3))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 im im))) 3) 1/3))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 1/2))) 2))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 1/2 im))))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (+.f64 (log.f64 (*.f64 1/2 im)) (*.f64 (log.f64 im) 1)))
(*.f64 1/2 (*.f64 im im))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 1/2 (*.f64 im im))
(fma.f64 1 (fma.f64 1/2 (*.f64 im im) 1) -1)
(*.f64 1/2 (*.f64 im im))
(fma.f64 (fma.f64 1/2 (*.f64 im im) 1) 1 -1)
(*.f64 1/2 (*.f64 im im))
(fma.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2) -1)
(*.f64 1/2 (*.f64 im im))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) -1)
(*.f64 1/2 (*.f64 im im))
(fma.f64 (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))) -1)
(fma.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (/.f64 1 (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 -1/2 (*.f64 im im))))) -1)
(fma.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (/.f64 1 (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 (*.f64 im im) -1/2)))) -1)
(fma.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (/.f64 1 (+.f64 1 (fma.f64 1/4 (pow.f64 im 4) (*.f64 im (*.f64 im -1/2))))) -1)
(+.f64 -1 (/.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (fma.f64 1/4 (pow.f64 im 4) (fma.f64 im (*.f64 im -1/2) 1))))
(fma.f64 (-.f64 1 (*.f64 1/4 (pow.f64 im 4))) (/.f64 1 (+.f64 1 (*.f64 -1/2 (*.f64 im im)))) -1)
(fma.f64 (+.f64 1 (*.f64 -1/4 (pow.f64 im 4))) (/.f64 1 (+.f64 1 (*.f64 (*.f64 im im) -1/2))) -1)
(fma.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (/.f64 1 (fma.f64 (*.f64 im im) -1/2 1)) -1)
(+.f64 -1 (/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (fma.f64 im (*.f64 im -1/2) 1)))

eval71.0ms (0.8%)

Compiler

Compiled 3865 to 2103 computations (45.6% saved)

prune93.0ms (1%)

Pruning

23 alts after pruning (13 fresh and 10 done)

PrunedKeptTotal
New2357242
Fresh167
Picked011
Done1910
Total23723260
Accurracy
100.0%
Counts
260 → 23
Alt Table
Click to see full alt table
StatusAccuracyProgram
30.0%
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (*.f64 im (*.f64 1/2 (*.f64 im re))) 2)) (-.f64 re (*.f64 im (*.f64 1/2 (*.f64 im re)))))
52.1%
(/.f64 (*.f64 (-.f64 1 (*.f64 1/4 (pow.f64 im 4))) re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
52.1%
(/.f64 re (/.f64 (+.f64 1 (*.f64 (*.f64 im im) -1/2)) (+.f64 1 (*.f64 -1/4 (pow.f64 im 4)))))
8.3%
(/.f64 re (+.f64 re (-.f64 re re)))
3.4%
(/.f64 re -2)
52.1%
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
98.6%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
11.1%
(+.f64 re re)
98.8%
(*.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)))
98.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
53.0%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
9.6%
(*.f64 (*.f64 1/2 re) 27)
10.4%
(*.f64 (*.f64 1/2 re) 1/2)
8.5%
(*.f64 (*.f64 1/2 re) 1/512)
52.1%
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
4.7%
(*.f64 im (*.f64 1/2 (*.f64 im re)))
53.0%
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
4.7%
(*.f64 1/2 (*.f64 re (*.f64 im im)))
4.7%
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
97.4%
(sin.f64 re)
5.4%
(cbrt.f64 re)
51.7%
re
Compiler

Compiled 385 to 274 computations (28.8% saved)

localize10.0ms (0.1%)

Local Accuracy

Found 3 expressions with local accuracy:

NewAccuracyProgram
100.0%
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
100.0%
(/.f64 re (exp.f64 im))
100.0%
(*.f64 (exp.f64 im) re)
Compiler

Compiled 35 to 9 computations (74.3% saved)

series2.0ms (0%)

Counts
2 → 20
Calls

12 calls:

TimeVariablePointExpression
0.0ms
re
@inf
(*.f64 (exp.f64 im) re)
0.0ms
im
@-inf
(*.f64 (exp.f64 im) re)
0.0ms
im
@0
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
0.0ms
im
@0
(*.f64 (exp.f64 im) re)
0.0ms
re
@-inf
(*.f64 (exp.f64 im) re)

rewrite111.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1012×log-prod
730×fma-def
688×prod-exp
678×pow-prod-down
484×pow-prod-up
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0938
119034
2267628
Stop Event
node limit
Counts
2 → 100
Calls
Call 1
Inputs
(*.f64 (exp.f64 im) re)
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
Outputs
(+.f64 0 (*.f64 (exp.f64 im) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 im) re))) 1)
(pow.f64 (*.f64 (exp.f64 im) re) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 im) re)) 2)
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2))
(log.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re))))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 im) re)))
(exp.f64 (+.f64 im (log.f64 re)))
(exp.f64 (*.f64 (+.f64 im (log.f64 re)) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 im (log.f64 re)) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 im (log.f64 re))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 im (log.f64 re))) 1/3))
(exp.f64 (*.f64 (*.f64 (+.f64 im (log.f64 re)) 3) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 im (log.f64 re))) 2))
(exp.f64 (+.f64 im (*.f64 (log.f64 re) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) im))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 im) re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))) 1)
(-.f64 (/.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (/.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(*.f64 re (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 1)
(*.f64 1 (*.f64 re (*.f64 2 (cosh.f64 im))))
(*.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) (pow.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 2) (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(*.f64 (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(*.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3)) (/.f64 1 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2))))
(*.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2)) (/.f64 1 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3))))
(/.f64 1 (/.f64 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2))))
(/.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3)) (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)))
(/.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3)) (+.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (/.f64 (*.f64 (exp.f64 im) re) (/.f64 (exp.f64 im) re)))))
(/.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2)) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3))) (neg.f64 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2))) (neg.f64 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))))
(pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3))) -1)
(pow.f64 (/.f64 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2))) -1)
(sqrt.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 2))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 2 (cosh.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))))
(log.f64 (*.f64 (pow.f64 (exp.f64 (exp.f64 im)) re) (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re))) (exp.f64 (/.f64 re (exp.f64 im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re))) (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im))))))
(log.f64 (*.f64 (exp.f64 (/.f64 re (exp.f64 im))) (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im)))) (pow.f64 (exp.f64 (exp.f64 im)) re)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im)))) (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re)))))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 3))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(exp.f64 (log.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))) 2))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(fma.f64 re (exp.f64 (neg.f64 im)) (*.f64 (exp.f64 im) re))
(fma.f64 (*.f64 (exp.f64 im) re) 1 (/.f64 re (exp.f64 im)))
(fma.f64 (/.f64 re (exp.f64 im)) 1 (*.f64 (exp.f64 im) re))
(fma.f64 1 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im)))
(fma.f64 1 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(fma.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (*.f64 (exp.f64 im) re))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (cbrt.f64 (/.f64 re (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (*.f64 (cbrt.f64 (exp.f64 im)) re) (/.f64 re (exp.f64 im)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (exp.f64 im)) (/.f64 re (exp.f64 im)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) 2) (/.f64 re (exp.f64 im)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) 2) (cbrt.f64 (*.f64 (exp.f64 im) re)) (/.f64 re (exp.f64 im)))
(fma.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) (sqrt.f64 (/.f64 re (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sqrt.f64 (exp.f64 im)) re) (/.f64 re (exp.f64 im)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 im)) (/.f64 re (exp.f64 im)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (sqrt.f64 (*.f64 (exp.f64 im) re)) (sqrt.f64 (*.f64 (exp.f64 im) re)) (/.f64 re (exp.f64 im)))
(fma.f64 (neg.f64 re) (/.f64 1 (neg.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (exp.f64 (neg.f64 im)) re (*.f64 (exp.f64 im) re))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) -2) (/.f64 re (cbrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (pow.f64 (exp.f64 im) -1/2) (/.f64 re (sqrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1) (/.f64 (cbrt.f64 re) (exp.f64 im)) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (/.f64 re (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 (exp.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 (sqrt.f64 re) (exp.f64 im)) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (*.f64 (exp.f64 im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (/.f64 re (exp.f64 im)))
(fma.f64 (*.f64 (exp.f64 im) (sqrt.f64 re)) (sqrt.f64 re) (/.f64 re (exp.f64 im)))
(fma.f64 (*.f64 re (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (exp.f64 im)) (/.f64 re (exp.f64 im)))
(fma.f64 (*.f64 re (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)) (/.f64 re (exp.f64 im)))

simplify81.0ms (0.9%)

Algorithm
egg-herbie
Rules
1478×times-frac
1010×distribute-lft-in
1002×distribute-rgt-in
566×unswap-sqr
386×cancel-sign-sub-inv
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02883614
17613418
226053364
Stop Event
node limit
Counts
120 → 140
Calls
Call 1
Inputs
re
(+.f64 re (*.f64 re im))
(+.f64 re (+.f64 (*.f64 1/2 (*.f64 re (pow.f64 im 2))) (*.f64 re im)))
(+.f64 re (+.f64 (*.f64 1/6 (*.f64 re (pow.f64 im 3))) (+.f64 (*.f64 1/2 (*.f64 re (pow.f64 im 2))) (*.f64 re im))))
(*.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 0 (*.f64 (exp.f64 im) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 im) re))) 1)
(pow.f64 (*.f64 (exp.f64 im) re) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 im) re)) 2)
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2))
(log.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re))))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 im) re)))
(exp.f64 (+.f64 im (log.f64 re)))
(exp.f64 (*.f64 (+.f64 im (log.f64 re)) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 im (log.f64 re)) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 im (log.f64 re))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 im (log.f64 re))) 1/3))
(exp.f64 (*.f64 (*.f64 (+.f64 im (log.f64 re)) 3) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 im (log.f64 re))) 2))
(exp.f64 (+.f64 im (*.f64 (log.f64 re) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) im))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 im) re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))) 1)
(-.f64 (/.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (/.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(*.f64 re (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 1)
(*.f64 1 (*.f64 re (*.f64 2 (cosh.f64 im))))
(*.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) (pow.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 2) (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(*.f64 (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(*.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3)) (/.f64 1 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2))))
(*.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2)) (/.f64 1 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3))))
(/.f64 1 (/.f64 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2))))
(/.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3)) (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)))
(/.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3)) (+.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (/.f64 (*.f64 (exp.f64 im) re) (/.f64 (exp.f64 im) re)))))
(/.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2)) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3))) (neg.f64 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2))) (neg.f64 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))))
(pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3))) -1)
(pow.f64 (/.f64 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2))) -1)
(sqrt.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 2))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 2 (cosh.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))))
(log.f64 (*.f64 (pow.f64 (exp.f64 (exp.f64 im)) re) (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re))) (exp.f64 (/.f64 re (exp.f64 im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re))) (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im))))))
(log.f64 (*.f64 (exp.f64 (/.f64 re (exp.f64 im))) (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im)))) (pow.f64 (exp.f64 (exp.f64 im)) re)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im)))) (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re)))))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 3))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(exp.f64 (log.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))) 2))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(fma.f64 re (exp.f64 (neg.f64 im)) (*.f64 (exp.f64 im) re))
(fma.f64 (*.f64 (exp.f64 im) re) 1 (/.f64 re (exp.f64 im)))
(fma.f64 (/.f64 re (exp.f64 im)) 1 (*.f64 (exp.f64 im) re))
(fma.f64 1 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im)))
(fma.f64 1 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(fma.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (*.f64 (exp.f64 im) re))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (cbrt.f64 (/.f64 re (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (*.f64 (cbrt.f64 (exp.f64 im)) re) (/.f64 re (exp.f64 im)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (exp.f64 im)) (/.f64 re (exp.f64 im)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) 2) (/.f64 re (exp.f64 im)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) 2) (cbrt.f64 (*.f64 (exp.f64 im) re)) (/.f64 re (exp.f64 im)))
(fma.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) (sqrt.f64 (/.f64 re (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sqrt.f64 (exp.f64 im)) re) (/.f64 re (exp.f64 im)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 im)) (/.f64 re (exp.f64 im)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (sqrt.f64 (*.f64 (exp.f64 im) re)) (sqrt.f64 (*.f64 (exp.f64 im) re)) (/.f64 re (exp.f64 im)))
(fma.f64 (neg.f64 re) (/.f64 1 (neg.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (exp.f64 (neg.f64 im)) re (*.f64 (exp.f64 im) re))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) -2) (/.f64 re (cbrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (pow.f64 (exp.f64 im) -1/2) (/.f64 re (sqrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1) (/.f64 (cbrt.f64 re) (exp.f64 im)) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (/.f64 re (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 (exp.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 (sqrt.f64 re) (exp.f64 im)) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (*.f64 (exp.f64 im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (/.f64 re (exp.f64 im)))
(fma.f64 (*.f64 (exp.f64 im) (sqrt.f64 re)) (sqrt.f64 re) (/.f64 re (exp.f64 im)))
(fma.f64 (*.f64 re (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (exp.f64 im)) (/.f64 re (exp.f64 im)))
(fma.f64 (*.f64 re (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)) (/.f64 re (exp.f64 im)))
Outputs
re
(+.f64 re (*.f64 re im))
(fma.f64 re im re)
(+.f64 re (+.f64 (*.f64 1/2 (*.f64 re (pow.f64 im 2))) (*.f64 re im)))
(+.f64 re (fma.f64 1/2 (*.f64 re (*.f64 im im)) (*.f64 re im)))
(+.f64 re (fma.f64 re im (*.f64 re (*.f64 1/2 (*.f64 im im)))))
(+.f64 re (fma.f64 1/2 (*.f64 im (*.f64 re im)) (*.f64 re im)))
(+.f64 re (+.f64 (*.f64 1/6 (*.f64 re (pow.f64 im 3))) (+.f64 (*.f64 1/2 (*.f64 re (pow.f64 im 2))) (*.f64 re im))))
(+.f64 re (fma.f64 1/6 (*.f64 re (pow.f64 im 3)) (fma.f64 1/2 (*.f64 re (*.f64 im im)) (*.f64 re im))))
(+.f64 re (fma.f64 1/6 (*.f64 re (pow.f64 im 3)) (fma.f64 re im (*.f64 re (*.f64 1/2 (*.f64 im im))))))
(+.f64 re (fma.f64 1/6 (*.f64 re (pow.f64 im 3)) (fma.f64 1/2 (*.f64 im (*.f64 re im)) (*.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 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 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 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 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(*.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 (+.f64 (*.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)))
(fma.f64 re (*.f64 im im) (fma.f64 re 2 (*.f64 (pow.f64 im 3) (*.f64 0 (*.f64 re -1/2)))))
(fma.f64 re (*.f64 im im) (fma.f64 re 2 (*.f64 (pow.f64 im 3) 0)))
(+.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))))
(fma.f64 (neg.f64 (-.f64 (fma.f64 re -1/6 (*.f64 re 1/4)) (+.f64 (*.f64 re 1/2) (*.f64 re -1/3)))) (pow.f64 im 4) (fma.f64 re (*.f64 im im) (fma.f64 re 2 (*.f64 (pow.f64 im 3) (*.f64 0 (*.f64 re -1/2))))))
(-.f64 (fma.f64 re (*.f64 im im) (fma.f64 re 2 (*.f64 (pow.f64 im 3) 0))) (*.f64 (pow.f64 im 4) (fma.f64 re -1/6 (fma.f64 re -1/6 (*.f64 re 1/4)))))
(+.f64 0 (*.f64 (exp.f64 im) re))
(*.f64 re (exp.f64 im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(*.f64 re (exp.f64 im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 im) re))) 1)
(*.f64 re (exp.f64 im))
(pow.f64 (*.f64 (exp.f64 im) re) 1)
(*.f64 re (exp.f64 im))
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) 3)
(*.f64 re (exp.f64 im))
(pow.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) 1/2)
(*.f64 re (exp.f64 im))
(pow.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3) 1/3)
(*.f64 re (exp.f64 im))
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 im) re)) 2)
(*.f64 re (exp.f64 im))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2))
(*.f64 re (exp.f64 im))
(log.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))
(*.f64 re (exp.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re))))
(*.f64 re (exp.f64 im))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3))
(*.f64 re (exp.f64 im))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 im) re)))
(*.f64 re (exp.f64 im))
(exp.f64 (+.f64 im (log.f64 re)))
(*.f64 re (exp.f64 im))
(exp.f64 (*.f64 (+.f64 im (log.f64 re)) 1))
(*.f64 re (exp.f64 im))
(exp.f64 (*.f64 (*.f64 (+.f64 im (log.f64 re)) 1) 1))
(*.f64 re (exp.f64 im))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 im (log.f64 re))) 3))
(*.f64 re (exp.f64 im))
(exp.f64 (*.f64 (*.f64 3 (+.f64 im (log.f64 re))) 1/3))
(*.f64 re (exp.f64 im))
(exp.f64 (*.f64 (*.f64 (+.f64 im (log.f64 re)) 3) 1/3))
(*.f64 re (exp.f64 im))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 im (log.f64 re))) 2))
(*.f64 re (exp.f64 im))
(exp.f64 (+.f64 im (*.f64 (log.f64 re) 1)))
(*.f64 re (exp.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) im))
(*.f64 re (exp.f64 im))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 im) re)))
(*.f64 re (exp.f64 im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))) 1)
(*.f64 re (*.f64 2 (cosh.f64 im)))
(-.f64 (/.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (/.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 re (exp.f64 im)) 2)) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(*.f64 re (+.f64 (exp.f64 (neg.f64 im)) (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 re (*.f64 2 (cosh.f64 im))) 1)
(*.f64 re (*.f64 2 (cosh.f64 im)))
(*.f64 1 (*.f64 re (*.f64 2 (cosh.f64 im))))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(*.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) (pow.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 2))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 2) (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(*.f64 (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(*.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3)) (/.f64 1 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (/.f64 1 (fma.f64 (*.f64 re (exp.f64 im)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (fma.f64 (*.f64 re (exp.f64 im)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)))
(*.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2)) (/.f64 1 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 re (exp.f64 im)) 2)) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3))))
(*.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (/.f64 1 (fma.f64 (*.f64 re (exp.f64 im)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (fma.f64 (*.f64 re (exp.f64 im)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)))
(/.f64 1 (/.f64 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2))))
(/.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 re (exp.f64 im)) 2)) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3)) (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (/.f64 1 (fma.f64 (*.f64 re (exp.f64 im)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (fma.f64 (*.f64 re (exp.f64 im)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)))
(/.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3)) (+.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (/.f64 (*.f64 (exp.f64 im) re) (/.f64 (exp.f64 im) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 2) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 (/.f64 (*.f64 re (exp.f64 im)) (exp.f64 im)) re))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 2) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 re (/.f64 (exp.f64 im) (/.f64 (exp.f64 im) re))))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 2) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 re (/.f64 re 1)))))
(/.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2)) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 re (exp.f64 im)) 2)) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3))) (neg.f64 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (/.f64 1 (fma.f64 (*.f64 re (exp.f64 im)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (fma.f64 (*.f64 re (exp.f64 im)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2))) (neg.f64 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 re (exp.f64 im)) 2)) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))))
(/.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 re (exp.f64 im)) 2)) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 1)
(*.f64 re (*.f64 2 (cosh.f64 im)))
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 3)
(*.f64 re (*.f64 2 (cosh.f64 im)))
(pow.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 2) 1/2)
(*.f64 re (*.f64 2 (cosh.f64 im)))
(pow.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 3) 1/3)
(*.f64 re (*.f64 2 (cosh.f64 im)))
(pow.f64 (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 2)
(*.f64 re (*.f64 2 (cosh.f64 im)))
(pow.f64 (/.f64 (fma.f64 (*.f64 (exp.f64 im) re) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (+.f64 (pow.f64 (/.f64 (exp.f64 im) re) -3) (pow.f64 (*.f64 (exp.f64 im) re) 3))) -1)
(*.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (/.f64 1 (fma.f64 (*.f64 re (exp.f64 im)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 (exp.f64 im) re) -3)) (fma.f64 (*.f64 re (exp.f64 im)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)))
(pow.f64 (/.f64 (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 (exp.f64 im) re) 2))) -1)
(/.f64 (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (pow.f64 (*.f64 re (exp.f64 im)) 2)) (*.f64 re (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(sqrt.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 2))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 2 (cosh.f64 im))))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(log.f64 (*.f64 (pow.f64 (exp.f64 (exp.f64 im)) re) (+.f64 1 (expm1.f64 (/.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 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re))) (exp.f64 (/.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 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 im) re))) (+.f64 1 (expm1.f64 (/.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 (exp.f64 (/.f64 re (exp.f64 im))) (+.f64 1 (expm1.f64 (*.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)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im)))) (pow.f64 (exp.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)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 re (exp.f64 im)))) (+.f64 1 (expm1.f64 (*.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)))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 3))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(exp.f64 (log.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 1))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))) 1) 1))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))) 3))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 3)) 1/3))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re (*.f64 2 (cosh.f64 im))))) 2))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 2 (cosh.f64 im)))))
(*.f64 re (*.f64 2 (cosh.f64 im)))
(fma.f64 (exp.f64 im) re (/.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)))
(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 (neg.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)))
(fma.f64 (*.f64 (exp.f64 im) re) 1 (/.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)))
(fma.f64 (/.f64 re (exp.f64 im)) 1 (*.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)))
(fma.f64 1 (*.f64 (exp.f64 im) re) (/.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)))
(fma.f64 1 (/.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)))
(fma.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (*.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)))
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (cbrt.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)))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (*.f64 (cbrt.f64 (exp.f64 im)) re) (/.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)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.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)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (exp.f64 (neg.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)))
(fma.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) (pow.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) 2) (/.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)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) 2) (cbrt.f64 (*.f64 (exp.f64 im) re)) (/.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)))
(fma.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) (sqrt.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)))
(fma.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sqrt.f64 (exp.f64 im)) re) (/.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)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.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)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 (neg.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)))
(fma.f64 (sqrt.f64 (*.f64 (exp.f64 im) re)) (sqrt.f64 (*.f64 (exp.f64 im) re)) (/.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)))
(fma.f64 (neg.f64 re) (/.f64 1 (neg.f64 (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)))
(fma.f64 (exp.f64 (neg.f64 im)) re (*.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)))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) -2) (/.f64 re (cbrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) -2) (/.f64 re (cbrt.f64 (exp.f64 im))) (*.f64 re (exp.f64 im)))
(fma.f64 (pow.f64 (exp.f64 im) -1/2) (/.f64 re (sqrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (pow.f64 (exp.f64 im) -1/2) (/.f64 re (sqrt.f64 (exp.f64 im))) (*.f64 re (exp.f64 im)))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1) (/.f64 (cbrt.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)))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (/.f64 re (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (/.f64 re (exp.f64 im))) (*.f64 re (exp.f64 im)))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 (exp.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 (exp.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im))) (*.f64 re (exp.f64 im)))
(fma.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 (sqrt.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)))
(fma.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 im))) (*.f64 (exp.f64 im) re))
(fma.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 im))) (*.f64 re (exp.f64 im)))
(fma.f64 (*.f64 (exp.f64 im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (/.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)))
(fma.f64 (*.f64 (exp.f64 im) (sqrt.f64 re)) (sqrt.f64 re) (/.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)))
(fma.f64 (*.f64 re (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (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)))
(fma.f64 (*.f64 re (sqrt.f64 (exp.f64 im))) (sqrt.f64 (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)))

localize3.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

localize6.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 1/2 (*.f64 re (*.f64 im im)))
87.4%
(*.f64 re (*.f64 im im))
Compiler

Compiled 20 to 7 computations (65% saved)

series6.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

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

rewrite58.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1490×pow1
1370×add-exp-log
1370×log1p-expm1-u
1370×expm1-log1p-u
1340×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
116332
2192032
Stop Event
node limit
Counts
2 → 22
Calls
Call 1
Inputs
(*.f64 re (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
Outputs
(-.f64 (+.f64 1 (*.f64 re (*.f64 im im))) 1)
(pow.f64 (*.f64 re (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 im im))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 re)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 im im))))
(exp.f64 (log.f64 (*.f64 re (*.f64 im im))))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 im im))))
(-.f64 (+.f64 1 (*.f64 (*.f64 re im) (*.f64 im 1/2))) 1)
(pow.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2)) 3) 1/3)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 2)
(sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)) 1/4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))))
(exp.f64 (log.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))))

simplify121.0ms (1.3%)

Algorithm
egg-herbie
Rules
2354×log-prod
1956×fma-def
1450×fma-neg
1318×hypot-def
760×unswap-sqr
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0661120
11661120
26971120
326071120
464211120
Stop Event
node limit
Counts
70 → 28
Calls
Call 1
Inputs
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(-.f64 (+.f64 1 (*.f64 re (*.f64 im im))) 1)
(pow.f64 (*.f64 re (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 im im))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 re)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 im im))))
(exp.f64 (log.f64 (*.f64 re (*.f64 im im))))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 im im))))
(-.f64 (+.f64 1 (*.f64 (*.f64 re im) (*.f64 im 1/2))) 1)
(pow.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2)) 3) 1/3)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 2)
(sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)) 1/4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))))
(exp.f64 (log.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))))
Outputs
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(-.f64 (+.f64 1 (*.f64 re (*.f64 im im))) 1)
(*.f64 re (*.f64 im im))
(pow.f64 (*.f64 re (*.f64 im im)) 1)
(*.f64 re (*.f64 im im))
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 im im))) 3)
(*.f64 re (*.f64 im im))
(pow.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3) 1/3)
(*.f64 re (*.f64 im im))
(pow.f64 (*.f64 im (sqrt.f64 re)) 2)
(*.f64 re (*.f64 im im))
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)))
(*.f64 re (*.f64 im im))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))
(*.f64 re (*.f64 im im))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3))
(*.f64 re (*.f64 im im))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im im))
(exp.f64 (log.f64 (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im im))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im im))
(-.f64 (+.f64 1 (*.f64 (*.f64 re im) (*.f64 im 1/2))) 1)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(pow.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2)) 1)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))) 3)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(pow.f64 (pow.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2)) 3) 1/3)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 2)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)) 1/4))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2)) 3))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(exp.f64 (log.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 re im) (*.f64 im 1/2))))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))

localize6.0ms (0.1%)

Compiler

Compiled 18 to 5 computations (72.2% saved)

localize3.0ms (0%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
99.1%
(cbrt.f64 re)
Compiler

Compiled 5 to 3 computations (40% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
0.0ms
re
@-inf
(cbrt.f64 re)
0.0ms
re
@0
(cbrt.f64 re)
0.0ms
re
@inf
(cbrt.f64 re)

rewrite48.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
688×pow1
664×add-sqr-sqrt
648×*-un-lft-identity
636×add-exp-log
636×log1p-expm1-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045
1765
28815
Stop Event
node limit
Counts
1 → 39
Calls
Call 1
Inputs
(cbrt.f64 re)
Outputs
(+.f64 0 (cbrt.f64 re))
(+.f64 (+.f64 1 (cbrt.f64 re)) -1)
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cbrt.f64 re)) 2))) (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 (+.f64 1 (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 re 1/4) (pow.f64 re 1/12))
(*.f64 (pow.f64 re 1/12) (pow.f64 re 1/4))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 re (cbrt.f64 re)) 2))) (cbrt.f64 (cbrt.f64 (cbrt.f64 re))))
(*.f64 (cbrt.f64 (pow.f64 re 5/6)) (pow.f64 (cbrt.f64 re) 1/6))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 re)) 5)) (pow.f64 (cbrt.f64 re) 1/6))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 re (cbrt.f64 re)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (cbrt.f64 re))))
(*.f64 (pow.f64 (pow.f64 re 5/6) 1/3) (pow.f64 (cbrt.f64 re) 1/6))
(/.f64 (-.f64 (pow.f64 (+.f64 1 (cbrt.f64 re)) 3) 1) (+.f64 (*.f64 (+.f64 1 (cbrt.f64 re)) (+.f64 1 (cbrt.f64 re))) (+.f64 1 (*.f64 (+.f64 1 (cbrt.f64 re)) 1))))
(/.f64 (-.f64 (*.f64 (+.f64 1 (cbrt.f64 re)) (+.f64 1 (cbrt.f64 re))) 1) (+.f64 (+.f64 1 (cbrt.f64 re)) 1))
(pow.f64 re 1/3)
(pow.f64 (cbrt.f64 re) 1)
(pow.f64 (pow.f64 (cbrt.f64 re) 2) 1/2)
(pow.f64 (cbrt.f64 (cbrt.f64 re)) 3)
(pow.f64 (*.f64 re re) 1/6)
(pow.f64 (pow.f64 re 3) 1/9)
(pow.f64 (sqrt.f64 re) 2/3)
(pow.f64 (pow.f64 re 1/6) 2)
(pow.f64 (exp.f64 1/3) (log.f64 re))
(pow.f64 (E.f64) (log.f64 (cbrt.f64 re)))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 re)))) (sqrt.f64 (log.f64 (cbrt.f64 re))))
(pow.f64 (exp.f64 (cbrt.f64 (pow.f64 (log.f64 (cbrt.f64 re)) 2))) (cbrt.f64 (log.f64 (cbrt.f64 re))))
(sqrt.f64 (pow.f64 (cbrt.f64 re) 2))
(fabs.f64 (cbrt.f64 re))
(log.f64 (exp.f64 (cbrt.f64 re)))
(expm1.f64 (log1p.f64 (cbrt.f64 re)))
(exp.f64 (log.f64 (cbrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 re))) 3))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 re)) 2))
(log1p.f64 (expm1.f64 (cbrt.f64 re)))

simplify61.0ms (0.7%)

Algorithm
egg-herbie
Rules
1036×times-frac
978×fma-def
784×associate-*r*
740×associate-*l*
586×fma-neg
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01134294967833
1249555
2764545
34669545
Stop Event
node limit
Counts
39 → 51
Calls
Call 1
Inputs
(+.f64 0 (cbrt.f64 re))
(+.f64 (+.f64 1 (cbrt.f64 re)) -1)
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cbrt.f64 re)) 2))) (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 (+.f64 1 (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 re 1/4) (pow.f64 re 1/12))
(*.f64 (pow.f64 re 1/12) (pow.f64 re 1/4))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 re (cbrt.f64 re)) 2))) (cbrt.f64 (cbrt.f64 (cbrt.f64 re))))
(*.f64 (cbrt.f64 (pow.f64 re 5/6)) (pow.f64 (cbrt.f64 re) 1/6))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 re)) 5)) (pow.f64 (cbrt.f64 re) 1/6))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 re (cbrt.f64 re)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (cbrt.f64 re))))
(*.f64 (pow.f64 (pow.f64 re 5/6) 1/3) (pow.f64 (cbrt.f64 re) 1/6))
(/.f64 (-.f64 (pow.f64 (+.f64 1 (cbrt.f64 re)) 3) 1) (+.f64 (*.f64 (+.f64 1 (cbrt.f64 re)) (+.f64 1 (cbrt.f64 re))) (+.f64 1 (*.f64 (+.f64 1 (cbrt.f64 re)) 1))))
(/.f64 (-.f64 (*.f64 (+.f64 1 (cbrt.f64 re)) (+.f64 1 (cbrt.f64 re))) 1) (+.f64 (+.f64 1 (cbrt.f64 re)) 1))
(pow.f64 re 1/3)
(pow.f64 (cbrt.f64 re) 1)
(pow.f64 (pow.f64 (cbrt.f64 re) 2) 1/2)
(pow.f64 (cbrt.f64 (cbrt.f64 re)) 3)
(pow.f64 (*.f64 re re) 1/6)
(pow.f64 (pow.f64 re 3) 1/9)
(pow.f64 (sqrt.f64 re) 2/3)
(pow.f64 (pow.f64 re 1/6) 2)
(pow.f64 (exp.f64 1/3) (log.f64 re))
(pow.f64 (E.f64) (log.f64 (cbrt.f64 re)))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 re)))) (sqrt.f64 (log.f64 (cbrt.f64 re))))
(pow.f64 (exp.f64 (cbrt.f64 (pow.f64 (log.f64 (cbrt.f64 re)) 2))) (cbrt.f64 (log.f64 (cbrt.f64 re))))
(sqrt.f64 (pow.f64 (cbrt.f64 re) 2))
(fabs.f64 (cbrt.f64 re))
(log.f64 (exp.f64 (cbrt.f64 re)))
(expm1.f64 (log1p.f64 (cbrt.f64 re)))
(exp.f64 (log.f64 (cbrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 re))) 3))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 re)) 2))
(log1p.f64 (expm1.f64 (cbrt.f64 re)))
Outputs
(+.f64 0 (cbrt.f64 re))
(cbrt.f64 re)
(+.f64 (+.f64 1 (cbrt.f64 re)) -1)
(cbrt.f64 re)
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cbrt.f64 re)) 2))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 re)))))
(+.f64 (log.f64 (cbrt.f64 (exp.f64 (*.f64 (cbrt.f64 re) 2)))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 re)))))
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 2) (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)))))
(cbrt.f64 re)
(-.f64 (+.f64 1 (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 re 1/4) (pow.f64 re 1/12))
(*.f64 (pow.f64 re 1/12) (pow.f64 re 1/4))
(*.f64 (pow.f64 re 1/4) (pow.f64 re 1/12))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 re (cbrt.f64 re)) 2))) (cbrt.f64 (cbrt.f64 (cbrt.f64 re))))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 re))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 re (cbrt.f64 re)) 2))))
(*.f64 (cbrt.f64 (pow.f64 re 5/6)) (pow.f64 (cbrt.f64 re) 1/6))
(*.f64 (pow.f64 (cbrt.f64 re) 1/6) (cbrt.f64 (pow.f64 re 5/6)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 re)) 5)) (pow.f64 (cbrt.f64 re) 1/6))
(*.f64 (pow.f64 (cbrt.f64 re) 1/6) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 re)) 5)))
(*.f64 (pow.f64 (cbrt.f64 re) 1/6) (pow.f64 (cbrt.f64 (cbrt.f64 re)) 5/2))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 re (cbrt.f64 re)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (cbrt.f64 re))))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 re))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 re (cbrt.f64 re)) 2))))
(*.f64 (pow.f64 (pow.f64 re 5/6) 1/3) (pow.f64 (cbrt.f64 re) 1/6))
(*.f64 (pow.f64 (cbrt.f64 re) 1/6) (cbrt.f64 (pow.f64 re 5/6)))
(/.f64 (-.f64 (pow.f64 (+.f64 1 (cbrt.f64 re)) 3) 1) (+.f64 (*.f64 (+.f64 1 (cbrt.f64 re)) (+.f64 1 (cbrt.f64 re))) (+.f64 1 (*.f64 (+.f64 1 (cbrt.f64 re)) 1))))
(/.f64 (+.f64 (pow.f64 (+.f64 (cbrt.f64 re) 1) 3) -1) (fma.f64 (+.f64 (cbrt.f64 re) 1) (+.f64 (cbrt.f64 re) 1) (+.f64 1 (+.f64 (cbrt.f64 re) 1))))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 (cbrt.f64 re) 1) 3)) (fma.f64 (+.f64 (cbrt.f64 re) 1) (+.f64 (cbrt.f64 re) 1) (+.f64 (cbrt.f64 re) 2)))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 (cbrt.f64 re) 1) 3)) (+.f64 1 (*.f64 (+.f64 (cbrt.f64 re) 1) (+.f64 (cbrt.f64 re) 2))))
(/.f64 (-.f64 (*.f64 (+.f64 1 (cbrt.f64 re)) (+.f64 1 (cbrt.f64 re))) 1) (+.f64 (+.f64 1 (cbrt.f64 re)) 1))
(cbrt.f64 re)
(pow.f64 re 1/3)
(cbrt.f64 re)
(pow.f64 (cbrt.f64 re) 1)
(cbrt.f64 re)
(pow.f64 (pow.f64 (cbrt.f64 re) 2) 1/2)
(cbrt.f64 re)
(pow.f64 (cbrt.f64 (cbrt.f64 re)) 3)
(cbrt.f64 re)
(pow.f64 (*.f64 re re) 1/6)
(cbrt.f64 re)
(pow.f64 (pow.f64 re 3) 1/9)
(*.f64 (pow.f64 (pow.f64 re 3) 1/18) (pow.f64 (pow.f64 re 3) 1/18))
(pow.f64 (sqrt.f64 re) 2/3)
(*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(pow.f64 (pow.f64 re 1/6) 2)
(cbrt.f64 re)
(pow.f64 (exp.f64 1/3) (log.f64 re))
(cbrt.f64 re)
(pow.f64 (E.f64) (log.f64 (cbrt.f64 re)))
(cbrt.f64 re)
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 re)))) (sqrt.f64 (log.f64 (cbrt.f64 re))))
(cbrt.f64 re)
(pow.f64 (exp.f64 (cbrt.f64 (pow.f64 (log.f64 (cbrt.f64 re)) 2))) (cbrt.f64 (log.f64 (cbrt.f64 re))))
(sqrt.f64 (pow.f64 (cbrt.f64 re) 2))
(cbrt.f64 re)
(fabs.f64 (cbrt.f64 re))
(cbrt.f64 re)
(log.f64 (exp.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 (cbrt.f64 (cbrt.f64 re))) 3))
(cbrt.f64 re)
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 re)) 2))
(cbrt.f64 re)
(log1p.f64 (expm1.f64 (cbrt.f64 re)))
(cbrt.f64 re)

eval66.0ms (0.7%)

Compiler

Compiled 4242 to 1979 computations (53.3% saved)

prune82.0ms (0.9%)

Pruning

19 alts after pruning (5 fresh and 14 done)

PrunedKeptTotal
New2712273
Fresh538
Picked011
Done11314
Total27719296
Accurracy
100.0%
Counts
296 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
8.3%
(/.f64 re (+.f64 re (-.f64 re re)))
3.4%
(/.f64 re -2)
52.1%
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
98.6%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
11.1%
(+.f64 re re)
98.8%
(*.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)))
98.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
9.6%
(*.f64 (*.f64 1/2 re) 27)
10.4%
(*.f64 (*.f64 1/2 re) 1/2)
8.5%
(*.f64 (*.f64 1/2 re) 1/512)
52.1%
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
4.7%
(*.f64 im (*.f64 im (*.f64 re 1/2)))
53.0%
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
4.7%
(*.f64 1/2 (*.f64 re (*.f64 im im)))
53.0%
(*.f64 1/2 (*.f64 re (*.f64 2 (cosh.f64 im))))
97.4%
(sin.f64 re)
5.4%
(cbrt.f64 re)
51.7%
re
Compiler

Compiled 170 to 122 computations (28.2% saved)

regimes125.0ms (1.3%)

Counts
28 → 1
Calls
Call 1
Inputs
re
(+.f64 re re)
(/.f64 re -2)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 1/2)
(*.f64 (*.f64 1/2 re) 27)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(cbrt.f64 re)
(sin.f64 re)
(*.f64 1/2 (*.f64 re (*.f64 2 (cosh.f64 im))))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(/.f64 re (/.f64 (+.f64 1 (*.f64 (*.f64 im im) -1/2)) (+.f64 1 (*.f64 -1/4 (pow.f64 im 4)))))
(/.f64 (*.f64 (-.f64 1 (*.f64 1/4 (pow.f64 im 4))) re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (*.f64 im (*.f64 1/2 (*.f64 im re))) 2)) (-.f64 re (*.f64 im (*.f64 1/2 (*.f64 im re)))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.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 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)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Calls

6 calls:

59.0ms
(sin.f64 re)
14.0ms
re
14.0ms
(*.f64 1/2 (sin.f64 re))
14.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
14.0ms
im
Results
AccuracySegmentsBranch
100.0%1re
100.0%1im
100.0%1(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
100.0%1(*.f64 1/2 (sin.f64 re))
100.0%1(sin.f64 re)
100.0%1(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
Compiler

Compiled 286 to 171 computations (40.2% saved)

regimes105.0ms (1.1%)

Counts
26 → 1
Calls
Call 1
Inputs
re
(+.f64 re re)
(/.f64 re -2)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 1/2)
(*.f64 (*.f64 1/2 re) 27)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(cbrt.f64 re)
(sin.f64 re)
(*.f64 1/2 (*.f64 re (*.f64 2 (cosh.f64 im))))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(/.f64 re (/.f64 (+.f64 1 (*.f64 (*.f64 im im) -1/2)) (+.f64 1 (*.f64 -1/4 (pow.f64 im 4)))))
(/.f64 (*.f64 (-.f64 1 (*.f64 1/4 (pow.f64 im 4))) re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (*.f64 im (*.f64 1/2 (*.f64 im re))) 2)) (-.f64 re (*.f64 im (*.f64 1/2 (*.f64 im re)))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.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 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)))
Calls

4 calls:

41.0ms
re
31.0ms
(*.f64 1/2 (sin.f64 re))
14.0ms
im
13.0ms
(sin.f64 re)
Results
AccuracySegmentsBranch
98.8%1re
98.8%1im
98.8%1(*.f64 1/2 (sin.f64 re))
98.8%1(sin.f64 re)
Compiler

Compiled 240 to 142 computations (40.8% saved)

regimes121.0ms (1.3%)

Counts
24 → 1
Calls
Call 1
Inputs
re
(+.f64 re re)
(/.f64 re -2)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 1/2)
(*.f64 (*.f64 1/2 re) 27)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(cbrt.f64 re)
(sin.f64 re)
(*.f64 1/2 (*.f64 re (*.f64 2 (cosh.f64 im))))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(/.f64 re (/.f64 (+.f64 1 (*.f64 (*.f64 im im) -1/2)) (+.f64 1 (*.f64 -1/4 (pow.f64 im 4)))))
(/.f64 (*.f64 (-.f64 1 (*.f64 1/4 (pow.f64 im 4))) re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (*.f64 im (*.f64 1/2 (*.f64 im re))) 2)) (-.f64 re (*.f64 im (*.f64 1/2 (*.f64 im re)))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.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 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
Calls

4 calls:

45.0ms
re
43.0ms
im
14.0ms
(sin.f64 re)
13.0ms
(*.f64 1/2 (sin.f64 re))
Results
AccuracySegmentsBranch
98.6%1re
98.6%1im
98.6%1(*.f64 1/2 (sin.f64 re))
98.6%1(sin.f64 re)
Compiler

Compiled 214 to 129 computations (39.7% saved)

regimes94.0ms (1%)

Counts
23 → 1
Calls
Call 1
Inputs
re
(+.f64 re re)
(/.f64 re -2)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 1/2)
(*.f64 (*.f64 1/2 re) 27)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(cbrt.f64 re)
(sin.f64 re)
(*.f64 1/2 (*.f64 re (*.f64 2 (cosh.f64 im))))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(/.f64 re (/.f64 (+.f64 1 (*.f64 (*.f64 im im) -1/2)) (+.f64 1 (*.f64 -1/4 (pow.f64 im 4)))))
(/.f64 (*.f64 (-.f64 1 (*.f64 1/4 (pow.f64 im 4))) re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (*.f64 im (*.f64 1/2 (*.f64 im re))) 2)) (-.f64 re (*.f64 im (*.f64 1/2 (*.f64 im re)))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.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 2 (*.f64 im im)))
Calls

4 calls:

53.0ms
(sin.f64 re)
12.0ms
im
12.0ms
(*.f64 1/2 (sin.f64 re))
11.0ms
re
Results
AccuracySegmentsBranch
98.6%1re
98.6%1im
98.6%1(*.f64 1/2 (sin.f64 re))
98.6%1(sin.f64 re)
Compiler

Compiled 203 to 125 computations (38.4% saved)

regimes58.0ms (0.6%)

Counts
16 → 1
Calls
Call 1
Inputs
re
(+.f64 re re)
(/.f64 re -2)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 1/2)
(*.f64 (*.f64 1/2 re) 27)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(cbrt.f64 re)
(sin.f64 re)
(*.f64 1/2 (*.f64 re (*.f64 2 (cosh.f64 im))))
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
Outputs
(sin.f64 re)
Calls

3 calls:

38.0ms
(sin.f64 re)
9.0ms
im
8.0ms
re
Results
AccuracySegmentsBranch
97.4%1re
97.4%1im
97.4%1(sin.f64 re)
Compiler

Compiled 101 to 62 computations (38.6% saved)

regimes34.0ms (0.4%)

Counts
13 → 3
Calls
Call 1
Inputs
re
(+.f64 re re)
(/.f64 re -2)
(*.f64 (*.f64 1/2 re) 1/512)
(*.f64 (*.f64 1/2 re) 1/2)
(*.f64 (*.f64 1/2 re) 27)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(/.f64 re (+.f64 re (-.f64 re re)))
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(cbrt.f64 re)
Outputs
(/.f64 re (+.f64 re (-.f64 re re)))
(+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re)
(/.f64 re (+.f64 re (-.f64 re re)))
Calls

2 calls:

23.0ms
re
7.0ms
im
Results
AccuracySegmentsBranch
57.0%3re
52.1%1im
Compiler

Compiled 78 to 46 computations (41% saved)

bsearch54.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
25.0ms
2.1221221555669487e-9
2.5790984924351896
28.0ms
-8109687.726301031
-9.122074494058414e-7
Results
47.0ms304×body256valid
Compiler

Compiled 437 to 281 computations (35.7% saved)

regimes107.0ms (1.1%)

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

2 calls:

62.0ms
im
43.0ms
re
Results
AccuracySegmentsBranch
57.0%3re
52.1%1im
Compiler

Compiled 67 to 41 computations (38.8% saved)

bsearch63.0ms (0.7%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
36.0ms
2.1221221555669487e-9
2.5790984924351896
27.0ms
-8109687.726301031
-9.122074494058414e-7
Results
59.0ms304×body256valid
Compiler

Compiled 437 to 300 computations (31.4% saved)

regimes51.0ms (0.5%)

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

2 calls:

20.0ms
re
6.0ms
im
Results
AccuracySegmentsBranch
56.6%3re
51.7%1im
Compiler

Compiled 58 to 36 computations (37.9% saved)

bsearch51.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
24.0ms
2.1221221555669487e-9
2.5790984924351896
27.0ms
-8109687.726301031
-9.122074494058414e-7
Results
48.0ms304×body256valid
Compiler

Compiled 285 to 186 computations (34.7% saved)

regimes66.0ms (0.7%)

Accuracy

Total -31.6b remaining (-102.2%)

Threshold costs -31.6b (-102.2%)

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

2 calls:

59.0ms
im
5.0ms
re
Results
AccuracySegmentsBranch
51.7%1re
51.7%1im
Compiler

Compiled 51 to 33 computations (35.3% saved)

simplify13.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
047333
178333
283333
386333
487333
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(sin.f64 re)
(if (<=.f64 re -300000) (/.f64 re (+.f64 re (-.f64 re re))) (if (<=.f64 re 1) (+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re) (/.f64 re (+.f64 re (-.f64 re re)))))
(if (<=.f64 re -300000) (/.f64 re (+.f64 re (-.f64 re re))) (if (<=.f64 re 1) (*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im)))) (/.f64 re (+.f64 re (-.f64 re re)))))
(if (<=.f64 re -300000) (/.f64 re (+.f64 re (-.f64 re re))) (if (<=.f64 re 1) re (/.f64 re (+.f64 re (-.f64 re re)))))
re
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(sin.f64 re)
(if (<=.f64 re -300000) (/.f64 re (+.f64 re (-.f64 re re))) (if (<=.f64 re 1) (+.f64 (*.f64 (*.f64 re 1/2) (*.f64 im im)) re) (/.f64 re (+.f64 re (-.f64 re re)))))
(if (or (<=.f64 re -300000) (not (<=.f64 re 1))) (/.f64 re (+.f64 re (-.f64 re re))) (+.f64 re (*.f64 (*.f64 im im) (*.f64 1/2 re))))
(if (<=.f64 re -300000) (/.f64 re (+.f64 re (-.f64 re re))) (if (<=.f64 re 1) (*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im)))) (/.f64 re (+.f64 re (-.f64 re re)))))
(if (or (<=.f64 re -300000) (not (<=.f64 re 1))) (/.f64 re (+.f64 re (-.f64 re re))) (*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im)))))
(if (<=.f64 re -300000) (/.f64 re (+.f64 re (-.f64 re re))) (if (<=.f64 re 1) re (/.f64 re (+.f64 re (-.f64 re re)))))
(if (or (<=.f64 re -300000) (not (<=.f64 re 1))) (/.f64 re (+.f64 re (-.f64 re re))) re)
re
Compiler

Compiled 136 to 93 computations (31.6% saved)

soundness1.1s (11.9%)

Rules
1568×unswap-sqr
1552×fma-neg
1404×fma-def
1156×fma-neg
1156×fma-neg
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01435
13035
27435
314133
418933
525633
643833
7110433
8315833
9354033
10403133
11567033
12665033
01141482
13251390
210251390
351771390
01234
125734
2414734
01141482
13251390
210251390
351771390
02655225
16774823
220554667
374724615
01038
120934
2265534
01141482
13251390
210251390
351771390
01141482
13251390
210251390
351771390
Stop Event
node limit
node limit
node limit
node limit
node limit
unsound
node limit
node limit
Compiler

Compiled 105 to 68 computations (35.2% saved)

end71.0ms (0.8%)

Compiler

Compiled 120 to 63 computations (47.5% saved)

Profiling

Loading profile data...