Details

Time bar (total: 9.6s)

analyze180.0ms (1.9%)

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.4s (46%)

Results
1.4s2100×body1024valid
952.0ms5124×body256valid
938.0ms2010×body1024infinite
410.0ms1013×body512infinite
348.0ms1027×body512valid
291.0ms1599×body256infinite
7.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)

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

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 26 to 19 computations (26.9% saved)

localize13.0ms (0.1%)

Local Accuracy

Found 3 expressions with local accuracy:

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

Compiled 32 to 16 computations (50% saved)

series32.0ms (0.3%)

Counts
3 → 40
Calls

12 calls:

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

rewrite82.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1104×log-prod
672×pow-prod-down
670×prod-exp
578×pow-prod-up
500×pow-exp
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01267
124067
2282555
Stop Event
node limit
Counts
3 → 98
Calls
Call 1
Inputs
(/.f64 1/2 (exp.f64 im))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
Outputs
(+.f64 0 (/.f64 1/2 (exp.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (exp.f64 im)))) 1)
(*.f64 1/2 (exp.f64 (neg.f64 im)))
(*.f64 (/.f64 1/2 (exp.f64 im)) 1)
(*.f64 1 (/.f64 1/2 (exp.f64 im)))
(*.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2) (cbrt.f64 (/.f64 1/2 (exp.f64 im))))
(*.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (/.f64 1/2 (exp.f64 im))))
(*.f64 -1/2 (/.f64 1 (neg.f64 (exp.f64 im))))
(*.f64 (exp.f64 (neg.f64 im)) 1/2)
(pow.f64 (/.f64 1/2 (exp.f64 im)) 1)
(pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 3)
(pow.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)) 1/2)
(pow.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) 2)
(pow.f64 (*.f64 (exp.f64 im) 2) -1)
(pow.f64 (/.f64 (*.f64 (exp.f64 im) 2) 1) -1)
(sqrt.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)))
(log.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (exp.f64 im)))))
(cbrt.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3))
(expm1.f64 (log1p.f64 (/.f64 1/2 (exp.f64 im))))
(exp.f64 (-.f64 (log.f64 1/2) im))
(exp.f64 (*.f64 (-.f64 (log.f64 1/2) im) 1))
(exp.f64 (*.f64 (*.f64 (-.f64 (log.f64 1/2) im) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (-.f64 (log.f64 1/2) im)) 3))
(exp.f64 (*.f64 (*.f64 3 (-.f64 (log.f64 1/2) im)) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (-.f64 (log.f64 1/2) im)) 2))
(exp.f64 (*.f64 (+.f64 im (log.f64 2)) -1))
(log1p.f64 (expm1.f64 (/.f64 1/2 (exp.f64 im))))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (/.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re)) (*.f64 (/.f64 1/2 (exp.f64 im)) (sin.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 1)
(pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 2))
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1) (log.f64 (sin.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (sin.f64 re) (/.f64 1/2 (exp.f64 im))))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 (/.f64 1/2 (exp.f64 im)) (sin.f64 re)))
(+.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (exp.f64 im)))
(+.f64 0 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) 1) (/.f64 1/2 (exp.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 1)
(*.f64 1/2 (*.f64 2 (cosh.f64 im)))
(*.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 1)
(*.f64 1 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2) (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) (pow.f64 (/.f64 1/2 (exp.f64 im)) 3)) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 2) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)) (*.f64 (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (exp.f64 im))))))
(/.f64 (-.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 2) (*.f64 1/4 (pow.f64 (exp.f64 im) -2))) (-.f64 (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (exp.f64 im))))
(pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 2))
(log.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(log.f64 (*.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (exp.f64 (exp.f64 im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (exp.f64 im)))) (sqrt.f64 (exp.f64 (exp.f64 im)))))
(log.f64 (*.f64 (sqrt.f64 (exp.f64 (exp.f64 im))) (+.f64 1 (expm1.f64 (/.f64 1/2 (exp.f64 im))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))

simplify70.0ms (0.7%)

Algorithm
egg-herbie
Rules
1338×unswap-sqr
796×associate-+r+
766×associate-+l+
476×associate-*r*
426×associate-*l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02973396
17232874
228562726
Stop Event
node limit
Counts
138 → 170
Calls
Call 1
Inputs
1/2
(+.f64 1/2 (*.f64 -1/2 im))
(+.f64 1/2 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 -1/2 im)))
(+.f64 1/2 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (+.f64 (*.f64 -1/2 im) (*.f64 -1/12 (pow.f64 im 3)))))
(*.f64 re (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))) (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))) (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))) (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.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 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
1
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(+.f64 0 (/.f64 1/2 (exp.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (exp.f64 im)))) 1)
(*.f64 1/2 (exp.f64 (neg.f64 im)))
(*.f64 (/.f64 1/2 (exp.f64 im)) 1)
(*.f64 1 (/.f64 1/2 (exp.f64 im)))
(*.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2) (cbrt.f64 (/.f64 1/2 (exp.f64 im))))
(*.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (/.f64 1/2 (exp.f64 im))))
(*.f64 -1/2 (/.f64 1 (neg.f64 (exp.f64 im))))
(*.f64 (exp.f64 (neg.f64 im)) 1/2)
(pow.f64 (/.f64 1/2 (exp.f64 im)) 1)
(pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 3)
(pow.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)) 1/2)
(pow.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) 2)
(pow.f64 (*.f64 (exp.f64 im) 2) -1)
(pow.f64 (/.f64 (*.f64 (exp.f64 im) 2) 1) -1)
(sqrt.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)))
(log.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (exp.f64 im)))))
(cbrt.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3))
(expm1.f64 (log1p.f64 (/.f64 1/2 (exp.f64 im))))
(exp.f64 (-.f64 (log.f64 1/2) im))
(exp.f64 (*.f64 (-.f64 (log.f64 1/2) im) 1))
(exp.f64 (*.f64 (*.f64 (-.f64 (log.f64 1/2) im) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (-.f64 (log.f64 1/2) im)) 3))
(exp.f64 (*.f64 (*.f64 3 (-.f64 (log.f64 1/2) im)) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (-.f64 (log.f64 1/2) im)) 2))
(exp.f64 (*.f64 (+.f64 im (log.f64 2)) -1))
(log1p.f64 (expm1.f64 (/.f64 1/2 (exp.f64 im))))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (/.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re)) (*.f64 (/.f64 1/2 (exp.f64 im)) (sin.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 1)
(pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 2))
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1) (log.f64 (sin.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (sin.f64 re) (/.f64 1/2 (exp.f64 im))))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 (/.f64 1/2 (exp.f64 im)) (sin.f64 re)))
(+.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (exp.f64 im)))
(+.f64 0 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) 1) (/.f64 1/2 (exp.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 1)
(*.f64 1/2 (*.f64 2 (cosh.f64 im)))
(*.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 1)
(*.f64 1 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2) (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) (pow.f64 (/.f64 1/2 (exp.f64 im)) 3)) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 2) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)) (*.f64 (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (exp.f64 im))))))
(/.f64 (-.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 2) (*.f64 1/4 (pow.f64 (exp.f64 im) -2))) (-.f64 (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (exp.f64 im))))
(pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 2))
(log.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(log.f64 (*.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (exp.f64 (exp.f64 im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (exp.f64 im)))) (sqrt.f64 (exp.f64 (exp.f64 im)))))
(log.f64 (*.f64 (sqrt.f64 (exp.f64 (exp.f64 im))) (+.f64 1 (expm1.f64 (/.f64 1/2 (exp.f64 im))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
Outputs
1/2
(+.f64 1/2 (*.f64 -1/2 im))
(fma.f64 -1/2 im 1/2)
(+.f64 1/2 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (*.f64 -1/2 im)))
(+.f64 1/2 (fma.f64 1/4 (*.f64 im im) (*.f64 -1/2 im)))
(+.f64 1/2 (fma.f64 -1/2 im (*.f64 im (*.f64 im 1/4))))
(+.f64 1/2 (*.f64 im (+.f64 -1/2 (*.f64 im 1/4))))
(+.f64 1/2 (+.f64 (*.f64 1/4 (pow.f64 im 2)) (+.f64 (*.f64 -1/2 im) (*.f64 -1/12 (pow.f64 im 3)))))
(+.f64 1/2 (fma.f64 1/4 (*.f64 im im) (fma.f64 -1/2 im (*.f64 -1/12 (pow.f64 im 3)))))
(+.f64 (fma.f64 -1/2 im 1/2) (*.f64 (*.f64 im im) (+.f64 (*.f64 im -1/12) 1/4)))
(*.f64 re (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))) (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))))
(fma.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))) (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))))))
(fma.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (*.f64 (*.f64 1/120 (pow.f64 re 5)) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))
(fma.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 1/120 (pow.f64 re 5)))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))) (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))))))
(fma.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (fma.f64 -1/5040 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 7)) (fma.f64 -1/6 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 3)) (*.f64 (*.f64 1/120 (pow.f64 re 5)) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))))
(+.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 1/120 (pow.f64 re 5))) (+.f64 re (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re))))
(fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re))
(*.f64 (fma.f64 1/2 (*.f64 im im) 1) (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 (*.f64 im im) (sin.f64 re)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (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 (*.f64 im im) (sin.f64 re)) (fma.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 im (*.f64 im (sin.f64 re))) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) (*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
1
(+.f64 1 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 1 (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) 1)
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(+.f64 1 (fma.f64 1/2 (*.f64 im im) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6)))))
(+.f64 (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 0 (/.f64 1/2 (exp.f64 im)))
(/.f64 1/2 (exp.f64 im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (exp.f64 im)))) 1)
(/.f64 1/2 (exp.f64 im))
(*.f64 1/2 (exp.f64 (neg.f64 im)))
(/.f64 1/2 (exp.f64 im))
(*.f64 (/.f64 1/2 (exp.f64 im)) 1)
(/.f64 1/2 (exp.f64 im))
(*.f64 1 (/.f64 1/2 (exp.f64 im)))
(/.f64 1/2 (exp.f64 im))
(*.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2))
(/.f64 1/2 (exp.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2) (cbrt.f64 (/.f64 1/2 (exp.f64 im))))
(/.f64 1/2 (exp.f64 im))
(*.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (/.f64 1/2 (exp.f64 im))))
(/.f64 1/2 (exp.f64 im))
(*.f64 -1/2 (/.f64 1 (neg.f64 (exp.f64 im))))
(/.f64 1/2 (exp.f64 im))
(*.f64 (exp.f64 (neg.f64 im)) 1/2)
(/.f64 1/2 (exp.f64 im))
(pow.f64 (/.f64 1/2 (exp.f64 im)) 1)
(/.f64 1/2 (exp.f64 im))
(pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 3)
(/.f64 1/2 (exp.f64 im))
(pow.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)) 1/2)
(sqrt.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)))
(fabs.f64 (/.f64 1/2 (exp.f64 im)))
(pow.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/3)
(/.f64 1/2 (exp.f64 im))
(pow.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) 2)
(/.f64 1/2 (exp.f64 im))
(pow.f64 (*.f64 (exp.f64 im) 2) -1)
(/.f64 1/2 (exp.f64 im))
(pow.f64 (/.f64 (*.f64 (exp.f64 im) 2) 1) -1)
(/.f64 1/2 (exp.f64 im))
(sqrt.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)))
(fabs.f64 (/.f64 1/2 (exp.f64 im)))
(log.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))
(/.f64 1/2 (exp.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (exp.f64 im)))))
(/.f64 1/2 (exp.f64 im))
(cbrt.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3))
(/.f64 1/2 (exp.f64 im))
(expm1.f64 (log1p.f64 (/.f64 1/2 (exp.f64 im))))
(/.f64 1/2 (exp.f64 im))
(exp.f64 (-.f64 (log.f64 1/2) im))
(/.f64 1/2 (exp.f64 im))
(exp.f64 (*.f64 (-.f64 (log.f64 1/2) im) 1))
(/.f64 1/2 (exp.f64 im))
(exp.f64 (*.f64 (*.f64 (-.f64 (log.f64 1/2) im) 1) 1))
(/.f64 1/2 (exp.f64 im))
(exp.f64 (*.f64 (*.f64 1/3 (-.f64 (log.f64 1/2) im)) 3))
(/.f64 1/2 (exp.f64 im))
(exp.f64 (*.f64 (*.f64 3 (-.f64 (log.f64 1/2) im)) 1/3))
(/.f64 1/2 (exp.f64 im))
(exp.f64 (*.f64 (*.f64 1/2 (-.f64 (log.f64 1/2) im)) 2))
(/.f64 1/2 (exp.f64 im))
(exp.f64 (*.f64 (+.f64 im (log.f64 2)) -1))
(/.f64 1/2 (exp.f64 im))
(log1p.f64 (expm1.f64 (/.f64 1/2 (exp.f64 im))))
(/.f64 1/2 (exp.f64 im))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (/.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re)) (*.f64 (/.f64 1/2 (exp.f64 im)) (sin.f64 re)))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))))
(*.f64 2 (log.f64 (fabs.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (/.f64 (cosh.f64 im) 1)))))
(*.f64 2 (*.f64 (cosh.f64 im) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 1)
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1)
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 3)
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2) 1/2)
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 3) 1/3)
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2)
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))))
(*.f64 2 (log.f64 (fabs.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (/.f64 (cosh.f64 im) 1)))))
(*.f64 2 (*.f64 (cosh.f64 im) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 re))))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 3))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 1))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 1) 1))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 3))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 1/3))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) 2))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1)))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1)))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) (*.f64 (log.f64 (sin.f64 re)) 1)))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1) (log.f64 (sin.f64 re))))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(*.f64 (sin.f64 re) (*.f64 1 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)) (*.f64 (sin.f64 re) (/.f64 1/2 (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 (/.f64 1/2 (exp.f64 im)) (sin.f64 re)))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(+.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 0 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(+.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) 1) (/.f64 1/2 (exp.f64 im)))
(fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 1 (cosh.f64 im)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 1 (cosh.f64 im))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (cosh.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (*.f64 1 (cosh.f64 im))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (cosh.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 1)
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(*.f64 1/2 (*.f64 2 (cosh.f64 im)))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(*.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 1)
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(*.f64 1 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2) (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 3) (pow.f64 (/.f64 1/2 (exp.f64 im)) 3)) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 2) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)) (*.f64 (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (exp.f64 im))))))
(/.f64 (+.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) (*.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 2) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)) (*.f64 1/2 (*.f64 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 2) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) -2)) (/.f64 (*.f64 (exp.f64 im) 1/4) (exp.f64 im)))))
(/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (pow.f64 (/.f64 1/2 (exp.f64 im)) 3)) (+.f64 -1/4 (*.f64 1/4 (+.f64 (exp.f64 (+.f64 im im)) (pow.f64 (exp.f64 im) -2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 2) (*.f64 1/4 (pow.f64 (exp.f64 im) -2))) (-.f64 (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (exp.f64 im))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 2) (*.f64 -1/4 (pow.f64 (exp.f64 im) -2))) (fma.f64 1/2 (exp.f64 im) (neg.f64 (/.f64 1/2 (exp.f64 im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (exp.f64 im)) 2) (*.f64 (pow.f64 (exp.f64 im) -2) -1/4)) (fma.f64 1/2 (exp.f64 im) (/.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 1/4 (-.f64 (exp.f64 (+.f64 im im)) (pow.f64 (exp.f64 im) -2))) (fma.f64 1/2 (exp.f64 im) (/.f64 -1/2 (exp.f64 im))))
(pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 1)
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 3)
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 2) 1/2)
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 3) 1/3)
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 2)
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 2))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(log.f64 (exp.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(log.f64 (*.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (exp.f64 (exp.f64 im)))))
(+.f64 (/.f64 1/2 (exp.f64 im)) (log.f64 (sqrt.f64 (exp.f64 (exp.f64 im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (exp.f64 im)))) (sqrt.f64 (exp.f64 (exp.f64 im)))))
(+.f64 (/.f64 1/2 (exp.f64 im)) (log.f64 (sqrt.f64 (exp.f64 (exp.f64 im)))))
(log.f64 (*.f64 (sqrt.f64 (exp.f64 (exp.f64 im))) (+.f64 1 (expm1.f64 (/.f64 1/2 (exp.f64 im))))))
(+.f64 (/.f64 1/2 (exp.f64 im)) (log.f64 (sqrt.f64 (exp.f64 (exp.f64 im)))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 3))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))) 1) 1))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 3))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))) 3)) 1/3))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(*.f64 1 (cosh.f64 im))
(cosh.f64 im)

localize22.0ms (0.2%)

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

Counts
2 → 36
Calls

9 calls:

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

rewrite49.0ms (0.5%)

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

simplify68.0ms (0.7%)

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

Useful iterations: 1 (0.0ms)

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

eval106.0ms (1.1%)

Compiler

Compiled 3702 to 2181 computations (41.1% saved)

prune66.0ms (0.7%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New2325237
Fresh000
Picked101
Done101
Total2345239
Accurracy
100.0%
Counts
239 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.0%
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2)
98.8%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
98.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
100.0%
(*.f64 (sin.f64 re) (cosh.f64 im))
98.5%
(sin.f64 re)
Compiler

Compiled 100 to 74 computations (26% saved)

localize6.0ms (0.1%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 (sin.f64 re) (cosh.f64 im))
Compiler

Compiled 13 to 5 computations (61.5% saved)

series4.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
im
@-inf
(*.f64 (sin.f64 re) (cosh.f64 im))
1.0ms
im
@inf
(*.f64 (sin.f64 re) (cosh.f64 im))
1.0ms
re
@inf
(*.f64 (sin.f64 re) (cosh.f64 im))
1.0ms
re
@0
(*.f64 (sin.f64 re) (cosh.f64 im))
0.0ms
re
@-inf
(*.f64 (sin.f64 re) (cosh.f64 im))

rewrite120.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1552×pow1
1420×add-exp-log
1418×log1p-expm1-u
1418×expm1-log1p-u
1388×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
115915
2191915
Stop Event
node limit
Counts
1 → 13
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (cosh.f64 im))
Outputs
(-.f64 (+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))

simplify57.0ms (0.6%)

Algorithm
egg-herbie
Rules
1096×distribute-rgt-in
1086×distribute-lft-in
958×associate-+r+
924×associate-+l+
758×associate-*r*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0841439
12291357
27661155
33366977
Stop Event
node limit
Counts
37 → 56
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 7))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.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 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(-.f64 (+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
Outputs
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (*.f64 2 (cosh.f64 im)) re))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (*.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 3) -1/12)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(*.f64 (*.f64 2 (cosh.f64 im)) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5)))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (*.f64 (*.f64 1/240 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (pow.f64 re 5))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (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 (pow.f64 re 5) 1/240))))
(fma.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/240 (pow.f64 re 5)))))
(*.f64 (*.f64 2 (cosh.f64 im)) (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 7))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5))))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (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)) (*.f64 (*.f64 1/240 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (pow.f64 re 5)))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (fma.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) -1/10080) (pow.f64 re 7) (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 (pow.f64 re 5) 1/240)))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3)))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 (*.f64 2 (cosh.f64 im)) (+.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 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)) (sin.f64 re))
(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 (sin.f64 re) (*.f64 im im)) (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/24))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im))) 1))
(+.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 (sin.f64 re) (*.f64 im im)) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 im im)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 (sin.f64 re)))
(-.f64 (+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3)
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2)
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 1 (-.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(*.f64 (sin.f64 re) (cosh.f64 im))

localize3.0ms (0%)

Compiler

Compiled 5 to 3 computations (40% saved)

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

series5.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

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

rewrite77.0ms (0.8%)

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

simplify316.0ms (3.3%)

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

series3.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite78.0ms (0.8%)

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

simplify108.0ms (1.1%)

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

localize32.0ms (0.3%)

Local Accuracy

Found 3 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))
100.0%
(sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
99.6%
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2)
Compiler

Compiled 51 to 31 computations (39.2% saved)

series8.0ms (0.1%)

Counts
3 → 64
Calls

18 calls:

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

rewrite77.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1154×log-prod
738×prod-exp
682×pow-prod-down
560×pow-prod-up
500×pow-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01449
129049
2286349
Stop Event
node limit
Counts
3 → 144
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2)
(sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))
Outputs
(+.f64 0 (*.f64 (sin.f64 re) (cosh.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 (sin.f64 re) 1/2))
(*.f64 (cosh.f64 im) (sin.f64 re))
(*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (pow.f64 (cbrt.f64 (cosh.f64 im)) 2) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)))
(*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)))
(*.f64 (sqrt.f64 (sin.f64 re)) (pow.f64 (*.f64 (cosh.f64 im) (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/4))
(*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (cosh.f64 im)))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/4) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4))
(*.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 1/2)
(*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (cosh.f64 im)) 2)) (cbrt.f64 (cosh.f64 im)))
(*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)))
(*.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (sin.f64 re)) 1/2) (sqrt.f64 (cosh.f64 im)))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) 2) (cosh.f64 im))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (cosh.f64 im)) 2)
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) 1) (*.f64 2 (cosh.f64 im)))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2)) (cbrt.f64 (*.f64 2 (cosh.f64 im))))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (sqrt.f64 (*.f64 2 (cosh.f64 im)))) (sqrt.f64 (*.f64 2 (cosh.f64 im))))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 5/6) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) 2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/2))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/3))
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 (cosh.f64 im))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1) (log.f64 (*.f64 (sin.f64 re) 1/2))))
(exp.f64 (+.f64 (log.f64 (cosh.f64 im)) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (log.f64 (sin.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 0 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))) 1)
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(*.f64 1 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sqrt.f64 (cosh.f64 im)) (sqrt.f64 (sin.f64 re)))
(*.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (cosh.f64 im)))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) (sqrt.f64 (*.f64 2 (cosh.f64 im))))
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1/4)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2) 1/3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) 2)
(fabs.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2)) 1/3))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 2))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(+.f64 0 (*.f64 (sin.f64 re) (cosh.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6) 6)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2) 2/3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) 4)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) 2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/2))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/3))
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 (cosh.f64 im))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1) (log.f64 (*.f64 (sin.f64 re) 1/2))))
(exp.f64 (+.f64 (log.f64 (cosh.f64 im)) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (log.f64 (sin.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))

simplify137.0ms (1.4%)

Algorithm
egg-herbie
Rules
1324×distribute-lft-in
1262×distribute-rgt-in
1040×unswap-sqr
418×associate-+r+
418×log-prod
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03226008
17635454
223475230
Stop Event
node limit
Counts
208 → 169
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.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 (-.f64 (+.f64 (*.f64 1/24 (sin.f64 re)) (*.f64 1/16 (sin.f64 re))) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (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 (-.f64 (+.f64 (*.f64 1/24 (sin.f64 re)) (*.f64 1/16 (sin.f64 re))) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (pow.f64 im 4)))))
(*.f64 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(sqrt.f64 (sin.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (sin.f64 re)) (pow.f64 im 2))) (sqrt.f64 (sin.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (sin.f64 re)) (pow.f64 im 2))) (+.f64 (sqrt.f64 (sin.f64 re)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (sin.f64 re))) (*.f64 (-.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (pow.f64 im 4))))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (sin.f64 re)) (pow.f64 im 2))) (+.f64 (sqrt.f64 (sin.f64 re)) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (sin.f64 re))) (*.f64 (-.f64 (*.f64 1/720 (sin.f64 re)) (*.f64 1/4 (-.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)))) (pow.f64 im 6)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (sin.f64 re))) (*.f64 (-.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (pow.f64 im 4)))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 7))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.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 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(+.f64 0 (*.f64 (sin.f64 re) (cosh.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 (sin.f64 re) 1/2))
(*.f64 (cosh.f64 im) (sin.f64 re))
(*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (pow.f64 (cbrt.f64 (cosh.f64 im)) 2) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)))
(*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)))
(*.f64 (sqrt.f64 (sin.f64 re)) (pow.f64 (*.f64 (cosh.f64 im) (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/4))
(*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (cosh.f64 im)))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/4) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4))
(*.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 1/2)
(*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (cosh.f64 im)) 2)) (cbrt.f64 (cosh.f64 im)))
(*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)))
(*.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (sin.f64 re)) 1/2) (sqrt.f64 (cosh.f64 im)))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) 2) (cosh.f64 im))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (cosh.f64 im)) 2)
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) 1) (*.f64 2 (cosh.f64 im)))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2)) (cbrt.f64 (*.f64 2 (cosh.f64 im))))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (sqrt.f64 (*.f64 2 (cosh.f64 im)))) (sqrt.f64 (*.f64 2 (cosh.f64 im))))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 5/6) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) 2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/2))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/3))
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 (cosh.f64 im))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1) (log.f64 (*.f64 (sin.f64 re) 1/2))))
(exp.f64 (+.f64 (log.f64 (cosh.f64 im)) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (log.f64 (sin.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 0 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))) 1)
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(*.f64 1 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sqrt.f64 (cosh.f64 im)) (sqrt.f64 (sin.f64 re)))
(*.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (cosh.f64 im)))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) (sqrt.f64 (*.f64 2 (cosh.f64 im))))
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1/4)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/6)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2) 1/3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) 2)
(fabs.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2)) 1/3))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 2))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(+.f64 0 (*.f64 (sin.f64 re) (cosh.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6) 6)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2) 2/3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) 4)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) 2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/2))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/3))
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 (cosh.f64 im))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1) (log.f64 (*.f64 (sin.f64 re) 1/2))))
(exp.f64 (+.f64 (log.f64 (cosh.f64 im)) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (log.f64 (sin.f64 re))))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
Outputs
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 (-.f64 (+.f64 (*.f64 1/24 (sin.f64 re)) (*.f64 1/16 (sin.f64 re))) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (pow.f64 im 4))))
(+.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (*.f64 (-.f64 (*.f64 (sin.f64 re) 5/48) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (pow.f64 im 4))))
(+.f64 (sin.f64 re) (fma.f64 (-.f64 (*.f64 (sin.f64 re) 5/48) (*.f64 (sin.f64 re) 1/16)) (pow.f64 im 4) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (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 (-.f64 (+.f64 (*.f64 1/24 (sin.f64 re)) (*.f64 1/16 (sin.f64 re))) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (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 (*.f64 (sin.f64 re) 5/48) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (pow.f64 im 4)))))
(+.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)) (fma.f64 (-.f64 (*.f64 (sin.f64 re) 5/48) (*.f64 (sin.f64 re) 1/16)) (pow.f64 im 4) (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6)))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (*.f64 im im)))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (pow.f64 (sqrt.f64 1/2) 2) (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(sqrt.f64 (sin.f64 re))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (sin.f64 re)) (pow.f64 im 2))) (sqrt.f64 (sin.f64 re)))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)))
(*.f64 (+.f64 (*.f64 1/4 (*.f64 im im)) 1) (sqrt.f64 (sin.f64 re)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (sin.f64 re)) (pow.f64 im 2))) (+.f64 (sqrt.f64 (sin.f64 re)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (sin.f64 re))) (*.f64 (-.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (pow.f64 im 4))))))
(+.f64 (fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (sin.f64 re))) (*.f64 (pow.f64 im 4) (-.f64 (*.f64 (sin.f64 re) 1/24) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2))))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (sin.f64 re))) (fma.f64 1/2 (*.f64 (pow.f64 im 4) (*.f64 (sqrt.f64 (/.f64 1 (sin.f64 re))) (-.f64 (*.f64 (sin.f64 re) 1/24) (*.f64 (sin.f64 re) 1/16)))) (sqrt.f64 (sin.f64 re))))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (*.f64 im im)) 1) (sqrt.f64 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) -1/48)) (*.f64 1/2 (sqrt.f64 (/.f64 1 (sin.f64 re))))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (sin.f64 re)) (pow.f64 im 2))) (+.f64 (sqrt.f64 (sin.f64 re)) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (sin.f64 re))) (*.f64 (-.f64 (*.f64 1/720 (sin.f64 re)) (*.f64 1/4 (-.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)))) (pow.f64 im 6)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (sin.f64 re))) (*.f64 (-.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (pow.f64 im 4)))))))
(+.f64 (fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re))) (*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (sin.f64 re))) (*.f64 (pow.f64 im 6) (+.f64 (*.f64 (sin.f64 re) 1/720) (*.f64 -1/4 (-.f64 (*.f64 (sin.f64 re) 1/24) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)))))) (*.f64 (sqrt.f64 (/.f64 1 (sin.f64 re))) (*.f64 (pow.f64 im 4) (-.f64 (*.f64 (sin.f64 re) 1/24) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)))))))
(fma.f64 1/4 (*.f64 (*.f64 im im) (sqrt.f64 (sin.f64 re))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (sin.f64 re))) (+.f64 (*.f64 (pow.f64 im 6) (fma.f64 (sin.f64 re) 1/720 (*.f64 (-.f64 (*.f64 (sin.f64 re) 1/24) (*.f64 (sin.f64 re) 1/16)) -1/4))) (*.f64 (pow.f64 im 4) (-.f64 (*.f64 (sin.f64 re) 1/24) (*.f64 (sin.f64 re) 1/16))))) (sqrt.f64 (sin.f64 re))))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (*.f64 im im)) 1) (sqrt.f64 (sin.f64 re))) (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (sin.f64 re)))) (+.f64 (*.f64 (pow.f64 im 6) (fma.f64 (sin.f64 re) 1/720 (*.f64 (*.f64 (sin.f64 re) -1/48) -1/4))) (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) -1/48)))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (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 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.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 (pow.f64 re 3) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) -1/12)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5)))))
(fma.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 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5)))))
(fma.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 (pow.f64 re 5) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/240))))
(fma.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 (*.f64 (pow.f64 re 3) -1/12) (*.f64 (pow.f64 re 5) 1/240))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 7))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5))))))
(fma.f64 1/2 (*.f64 re (+.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)) (*.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5))))))
(fma.f64 1/2 (*.f64 re (+.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)) (*.f64 (pow.f64 re 5) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/240)))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 (pow.f64 re 5) 1/240))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 7) -1/10080))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(+.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 (*.f64 (sin.f64 re) 5/48) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (pow.f64 im 4))))
(+.f64 (sin.f64 re) (fma.f64 (-.f64 (*.f64 (sin.f64 re) 5/48) (*.f64 (sin.f64 re) 1/16)) (pow.f64 im 4) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (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 (*.f64 (sin.f64 re) 5/48) (pow.f64 (*.f64 1/4 (sqrt.f64 (sin.f64 re))) 2)) (pow.f64 im 4)))))
(+.f64 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re)) (fma.f64 (-.f64 (*.f64 (sin.f64 re) 5/48) (*.f64 (sin.f64 re) 1/16)) (pow.f64 im 4) (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6)))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (*.f64 im im)))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (pow.f64 (sqrt.f64 1/2) 2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 0 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 (sin.f64 re) 1/2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (cosh.f64 im) (sin.f64 re))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (cosh.f64 im)) 2) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sqrt.f64 (sin.f64 re)) (pow.f64 (*.f64 (cosh.f64 im) (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2))
(*.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (*.f64 (cosh.f64 im) (*.f64 (sin.f64 re) (cosh.f64 im)))))
(*.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (*.f64 (sin.f64 re) (pow.f64 (cosh.f64 im) 2))))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/4))
(*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/4) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/4))
(*.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 1/2)
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (cosh.f64 im)) 2)) (cbrt.f64 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (sin.f64 re)) 1/2) (sqrt.f64 (cosh.f64 im)))
(*.f64 (sqrt.f64 (cosh.f64 im)) (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 (sin.f64 re) (cosh.f64 im)))))
(*.f64 (sqrt.f64 (cosh.f64 im)) (sqrt.f64 (*.f64 (cosh.f64 im) (pow.f64 (sin.f64 re) 2))))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) 2) (cosh.f64 im))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (cosh.f64 im)) 2)
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) 1) (*.f64 2 (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2)) (cbrt.f64 (*.f64 2 (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (sqrt.f64 (*.f64 2 (cosh.f64 im)))) (sqrt.f64 (*.f64 2 (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 5/6) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 (sin.f64 re)))
(/.f64 (sin.f64 re) (/.f64 1 (cosh.f64 im)))
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 (sin.f64 re)))
(/.f64 (sin.f64 re) (/.f64 1 (cosh.f64 im)))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(*.f64 (sin.f64 re) (cosh.f64 im))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) 2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) 2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/3))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1) (log.f64 (*.f64 (sin.f64 re) 1/2))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (cosh.f64 im)) (*.f64 (log.f64 (sin.f64 re)) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (log.f64 (sin.f64 re))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 0 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))) 1)
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 1 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (sqrt.f64 (cosh.f64 im)) (sqrt.f64 (sin.f64 re)))
(*.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (cosh.f64 im)))
(*.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (cosh.f64 im)))
(*.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) (sqrt.f64 (*.f64 2 (cosh.f64 im))))
(*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) 1/2)))
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/2)
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3/2)
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6) 3)
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1/4)
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/6)
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2) 1/3)
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) 2)
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(fabs.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1/2))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) 1))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) 1))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6)) 3))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2)) 1/3))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 2))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))
(+.f64 0 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)
(*.f64 (sin.f64 re) (cosh.f64 im))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 (sin.f64 re)))
(/.f64 (sin.f64 re) (/.f64 1 (cosh.f64 im)))
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 (sin.f64 re)))
(/.f64 (sin.f64 re) (/.f64 1 (cosh.f64 im)))
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2)
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3)
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/6) 6)
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1/2)
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/3)
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3/2) 2/3)
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1/4) 4)
(*.f64 (sin.f64 re) (cosh.f64 im))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log.f64 (pow.f64 (exp.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(*.f64 (sin.f64 re) (cosh.f64 im))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) 2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) 2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/3))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (sin.f64 re)) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (log.f64 (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 re)) 1) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1) (log.f64 (*.f64 (sin.f64 re) 1/2))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (cosh.f64 im)) (*.f64 (log.f64 (sin.f64 re)) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (log.f64 (sin.f64 re))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (*.f64 (log.f64 (sin.f64 re)) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1/2)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1) (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sin.f64 re) (cosh.f64 im))

eval203.0ms (2.1%)

Compiler

Compiled 8887 to 4476 computations (49.6% saved)

prune134.0ms (1.4%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New4985503
Fresh000
Picked101
Done134
Total5008508
Accurracy
100.0%
Counts
508 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 (sin.f64 re)))
48.7%
(-.f64 (+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
88.8%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (*.f64 im im))))
98.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
100.0%
(*.f64 (sin.f64 re) (cosh.f64 im))
56.1%
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
56.8%
(*.f64 1/2 (*.f64 (*.f64 2 (cosh.f64 im)) re))
98.5%
(sin.f64 re)
Compiler

Compiled 133 to 101 computations (24.1% saved)

localize22.0ms (0.2%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
99.9%
(/.f64 2 (sin.f64 re))
99.7%
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 (sin.f64 re)))
Compiler

Compiled 26 to 14 computations (46.2% saved)

series2.0ms (0%)

Counts
2 → 28
Calls

9 calls:

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

rewrite85.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1242×log-prod
656×pow-prod-down
550×pow-prod-up
488×pow-exp
430×expm1-udef
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01138
123626
2317326
Stop Event
node limit
Counts
2 → 100
Calls
Call 1
Inputs
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 (sin.f64 re)))
(/.f64 2 (sin.f64 re))
Outputs
(+.f64 0 (*.f64 (cosh.f64 im) (sin.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 1)
(*.f64 2 (/.f64 (cosh.f64 im) (/.f64 2 (sin.f64 re))))
(*.f64 2 (/.f64 1 (/.f64 2 (*.f64 (cosh.f64 im) (sin.f64 re)))))
(*.f64 2 (*.f64 (cosh.f64 im) (*.f64 (sin.f64 re) 1/2)))
(*.f64 (cosh.f64 im) (sin.f64 re))
(*.f64 (cosh.f64 im) (/.f64 2 (/.f64 2 (sin.f64 re))))
(*.f64 (cosh.f64 im) (*.f64 2 (*.f64 (sin.f64 re) 1/2)))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 (sin.f64 re) 1/2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 1)
(*.f64 1 (*.f64 (cosh.f64 im) (sin.f64 re)))
(*.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 2) (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (*.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sin.f64 re) 1/2)))
(*.f64 (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sin.f64 re) 1/2)))
(*.f64 (*.f64 (cosh.f64 im) -2) (/.f64 1 (/.f64 -2 (sin.f64 re))))
(*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (cosh.f64 im)))
(*.f64 1/2 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 1 (sin.f64 re))))
(*.f64 (/.f64 2 (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (/.f64 (cosh.f64 im) (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (/.f64 2 (sqrt.f64 (/.f64 2 (sin.f64 re)))) (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 (sin.f64 re)))) (/.f64 2 (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (/.f64 (cosh.f64 im) 2) (/.f64 2 (/.f64 1 (sin.f64 re))))
(*.f64 (/.f64 2 (/.f64 2 (sin.f64 re))) (cosh.f64 im))
(*.f64 (/.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (/.f64 2 (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) -2) (/.f64 (*.f64 2 (cosh.f64 im)) (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (pow.f64 (/.f64 2 (sin.f64 re)) -1/2) (/.f64 (*.f64 2 (cosh.f64 im)) (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 2) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 (sin.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 1) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 (sin.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (sqrt.f64 (/.f64 2 (sin.f64 re)))) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 2) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 (sin.f64 re))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 1) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 (sin.f64 re))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) 1) (*.f64 (sin.f64 re) 1/2))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) -2) (neg.f64 (sin.f64 re)))
(pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 2)
(pow.f64 (/.f64 1 (*.f64 (cosh.f64 im) (sin.f64 re))) -1)
(pow.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (/.f64 2 (sin.f64 re)) 3)) 1/3)
(pow.f64 (/.f64 (/.f64 1 (*.f64 (cosh.f64 im) (sin.f64 re))) 1) -1)
(pow.f64 (*.f64 (pow.f64 (cosh.f64 im) 3) (pow.f64 (sin.f64 re) 3)) 1/3)
(pow.f64 (*.f64 (cbrt.f64 (sin.f64 re)) (cbrt.f64 (cosh.f64 im))) 3)
(pow.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (cosh.f64 im) 3)) 1/3)
(pow.f64 (*.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (cosh.f64 im))) 2)
(neg.f64 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 -2 (sin.f64 re))))
(sqrt.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (/.f64 2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 2))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) -1))
(log1p.f64 (expm1.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(+.f64 0 (/.f64 2 (sin.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 2 (sin.f64 re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 2 (sin.f64 re))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 2 (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 2 (sin.f64 re)))) 1)
(*.f64 2 (/.f64 1 (sin.f64 re)))
(*.f64 (/.f64 2 (sin.f64 re)) 1)
(*.f64 1 (/.f64 2 (sin.f64 re)))
(*.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2) (cbrt.f64 (/.f64 2 (sin.f64 re))))
(*.f64 (sqrt.f64 (/.f64 2 (sin.f64 re))) (sqrt.f64 (/.f64 2 (sin.f64 re))))
(*.f64 -2 (/.f64 1 (neg.f64 (sin.f64 re))))
(*.f64 (/.f64 1 (sin.f64 re)) 2)
(pow.f64 (/.f64 2 (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 3)
(pow.f64 (*.f64 4 (pow.f64 (sin.f64 re) -2)) 1/2)
(pow.f64 (pow.f64 (/.f64 2 (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 2 (sin.f64 re))) 2)
(pow.f64 (*.f64 (sin.f64 re) 1/2) -1)
(pow.f64 (/.f64 (*.f64 (sin.f64 re) 1/2) 1) -1)
(sqrt.f64 (*.f64 4 (pow.f64 (sin.f64 re) -2)))
(log.f64 (exp.f64 (/.f64 2 (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 2 (sin.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 2 (sin.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 2 (sin.f64 re))))
(exp.f64 (log.f64 (/.f64 2 (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 2 (sin.f64 re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 2 (sin.f64 re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 2 (sin.f64 re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 2 (sin.f64 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 2 (sin.f64 re)))) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) -1))
(log1p.f64 (expm1.f64 (/.f64 2 (sin.f64 re))))

simplify66.0ms (0.7%)

Algorithm
egg-herbie
Rules
1978×fma-def
1294×unswap-sqr
890×distribute-lft-in
840×distribute-rgt-in
524×log-prod
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02974112
17512440
224662424
Stop Event
node limit
Counts
128 → 151
Calls
Call 1
Inputs
(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 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 7))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(/.f64 2 re)
(+.f64 (*.f64 1/3 re) (*.f64 2 (/.f64 1 re)))
(+.f64 (*.f64 1/3 re) (+.f64 (*.f64 2 (/.f64 1 re)) (*.f64 7/180 (pow.f64 re 3))))
(+.f64 (*.f64 1/3 re) (+.f64 (*.f64 31/7560 (pow.f64 re 5)) (+.f64 (*.f64 2 (/.f64 1 re)) (*.f64 7/180 (pow.f64 re 3)))))
(+.f64 0 (*.f64 (cosh.f64 im) (sin.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 1)
(*.f64 2 (/.f64 (cosh.f64 im) (/.f64 2 (sin.f64 re))))
(*.f64 2 (/.f64 1 (/.f64 2 (*.f64 (cosh.f64 im) (sin.f64 re)))))
(*.f64 2 (*.f64 (cosh.f64 im) (*.f64 (sin.f64 re) 1/2)))
(*.f64 (cosh.f64 im) (sin.f64 re))
(*.f64 (cosh.f64 im) (/.f64 2 (/.f64 2 (sin.f64 re))))
(*.f64 (cosh.f64 im) (*.f64 2 (*.f64 (sin.f64 re) 1/2)))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 (sin.f64 re) 1/2))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 1)
(*.f64 1 (*.f64 (cosh.f64 im) (sin.f64 re)))
(*.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 2) (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (*.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sin.f64 re) 1/2)))
(*.f64 (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sin.f64 re) 1/2)))
(*.f64 (*.f64 (cosh.f64 im) -2) (/.f64 1 (/.f64 -2 (sin.f64 re))))
(*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (cosh.f64 im)))
(*.f64 1/2 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 1 (sin.f64 re))))
(*.f64 (/.f64 2 (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (/.f64 (cosh.f64 im) (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (/.f64 2 (sqrt.f64 (/.f64 2 (sin.f64 re)))) (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 (sin.f64 re)))) (/.f64 2 (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (/.f64 (cosh.f64 im) 2) (/.f64 2 (/.f64 1 (sin.f64 re))))
(*.f64 (/.f64 2 (/.f64 2 (sin.f64 re))) (cosh.f64 im))
(*.f64 (/.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (/.f64 2 (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) -2) (/.f64 (*.f64 2 (cosh.f64 im)) (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (pow.f64 (/.f64 2 (sin.f64 re)) -1/2) (/.f64 (*.f64 2 (cosh.f64 im)) (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 2) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 (sin.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 1) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 (sin.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (sqrt.f64 (/.f64 2 (sin.f64 re)))) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 2) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 (sin.f64 re))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 1) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 (sin.f64 re))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) 1) (*.f64 (sin.f64 re) 1/2))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) -2) (neg.f64 (sin.f64 re)))
(pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 2)
(pow.f64 (/.f64 1 (*.f64 (cosh.f64 im) (sin.f64 re))) -1)
(pow.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (/.f64 2 (sin.f64 re)) 3)) 1/3)
(pow.f64 (/.f64 (/.f64 1 (*.f64 (cosh.f64 im) (sin.f64 re))) 1) -1)
(pow.f64 (*.f64 (pow.f64 (cosh.f64 im) 3) (pow.f64 (sin.f64 re) 3)) 1/3)
(pow.f64 (*.f64 (cbrt.f64 (sin.f64 re)) (cbrt.f64 (cosh.f64 im))) 3)
(pow.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (cosh.f64 im) 3)) 1/3)
(pow.f64 (*.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (cosh.f64 im))) 2)
(neg.f64 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 -2 (sin.f64 re))))
(sqrt.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (/.f64 2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 2))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) -1))
(log1p.f64 (expm1.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(+.f64 0 (/.f64 2 (sin.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 2 (sin.f64 re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 2 (sin.f64 re))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 2 (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 2 (sin.f64 re)))) 1)
(*.f64 2 (/.f64 1 (sin.f64 re)))
(*.f64 (/.f64 2 (sin.f64 re)) 1)
(*.f64 1 (/.f64 2 (sin.f64 re)))
(*.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2) (cbrt.f64 (/.f64 2 (sin.f64 re))))
(*.f64 (sqrt.f64 (/.f64 2 (sin.f64 re))) (sqrt.f64 (/.f64 2 (sin.f64 re))))
(*.f64 -2 (/.f64 1 (neg.f64 (sin.f64 re))))
(*.f64 (/.f64 1 (sin.f64 re)) 2)
(pow.f64 (/.f64 2 (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 3)
(pow.f64 (*.f64 4 (pow.f64 (sin.f64 re) -2)) 1/2)
(pow.f64 (pow.f64 (/.f64 2 (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 2 (sin.f64 re))) 2)
(pow.f64 (*.f64 (sin.f64 re) 1/2) -1)
(pow.f64 (/.f64 (*.f64 (sin.f64 re) 1/2) 1) -1)
(sqrt.f64 (*.f64 4 (pow.f64 (sin.f64 re) -2)))
(log.f64 (exp.f64 (/.f64 2 (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 2 (sin.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 2 (sin.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 2 (sin.f64 re))))
(exp.f64 (log.f64 (/.f64 2 (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 2 (sin.f64 re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 2 (sin.f64 re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 2 (sin.f64 re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 2 (sin.f64 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 2 (sin.f64 re)))) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) -1))
(log1p.f64 (expm1.f64 (/.f64 2 (sin.f64 re))))
Outputs
(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) (*.f64 im im))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.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 (sin.f64 re) (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)) (fma.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/24) (sin.f64 re)))
(+.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 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/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (fma.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/720) (fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)) (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (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 re 1/2))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 3) -1/12)))
(fma.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5)))))
(fma.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 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5)))))
(fma.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 5) 1/240))))
(fma.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 3) -1/12) (fma.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 5) 1/240) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 7))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5))))))
(fma.f64 1/2 (*.f64 re (+.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)) (*.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5))))))
(fma.f64 1/2 (*.f64 re (+.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)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 5) 1/240)))))
(fma.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (fma.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 5) 1/240) (fma.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 3) -1/12) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 7) -1/10080)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(/.f64 2 re)
(+.f64 (*.f64 1/3 re) (*.f64 2 (/.f64 1 re)))
(fma.f64 1/3 re (/.f64 2 re))
(fma.f64 re 1/3 (/.f64 2 re))
(+.f64 (*.f64 1/3 re) (+.f64 (*.f64 2 (/.f64 1 re)) (*.f64 7/180 (pow.f64 re 3))))
(+.f64 (fma.f64 1/3 re (/.f64 2 re)) (*.f64 (pow.f64 re 3) 7/180))
(fma.f64 re 1/3 (fma.f64 (pow.f64 re 3) 7/180 (/.f64 2 re)))
(+.f64 (*.f64 1/3 re) (+.f64 (*.f64 31/7560 (pow.f64 re 5)) (+.f64 (*.f64 2 (/.f64 1 re)) (*.f64 7/180 (pow.f64 re 3)))))
(fma.f64 1/3 re (fma.f64 31/7560 (pow.f64 re 5) (+.f64 (/.f64 2 re) (*.f64 (pow.f64 re 3) 7/180))))
(fma.f64 re 1/3 (fma.f64 (pow.f64 re 5) 31/7560 (fma.f64 (pow.f64 re 3) 7/180 (/.f64 2 re))))
(fma.f64 re 1/3 (fma.f64 (pow.f64 re 3) 7/180 (fma.f64 (pow.f64 re 5) 31/7560 (/.f64 2 re))))
(+.f64 0 (*.f64 (cosh.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 1)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 2 (/.f64 (cosh.f64 im) (/.f64 2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 2 (/.f64 1 (/.f64 2 (*.f64 (cosh.f64 im) (sin.f64 re)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 2 (*.f64 (cosh.f64 im) (*.f64 (sin.f64 re) 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (cosh.f64 im) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (cosh.f64 im) (/.f64 2 (/.f64 2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (cosh.f64 im) (*.f64 2 (*.f64 (sin.f64 re) 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 (sin.f64 re) 1/2))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 1)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1 (*.f64 (cosh.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 2))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 2) (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (*.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sin.f64 re) 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sin.f64 re) 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) -2) (/.f64 1 (/.f64 -2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (cosh.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1/2 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 1 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 2 (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (/.f64 (cosh.f64 im) (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 2 (sqrt.f64 (/.f64 2 (sin.f64 re)))) (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 (sin.f64 re)))) (/.f64 2 (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 (cosh.f64 im) 2) (/.f64 2 (/.f64 1 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 2 (/.f64 2 (sin.f64 re))) (cosh.f64 im))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (/.f64 2 (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) -2) (/.f64 (*.f64 2 (cosh.f64 im)) (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) -2) (/.f64 2 (/.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) (cosh.f64 im))))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) -2) (/.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) (*.f64 2 (cosh.f64 im))))
(*.f64 (pow.f64 (/.f64 2 (sin.f64 re)) -1/2) (/.f64 (*.f64 2 (cosh.f64 im)) (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 (pow.f64 (/.f64 2 (sin.f64 re)) -1/2) (/.f64 2 (/.f64 (sqrt.f64 (/.f64 2 (sin.f64 re))) (cosh.f64 im))))
(*.f64 (pow.f64 (/.f64 2 (sin.f64 re)) -1/2) (*.f64 (cosh.f64 im) (/.f64 2 (sqrt.f64 (/.f64 2 (sin.f64 re))))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 2) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 1) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (sqrt.f64 (/.f64 2 (sin.f64 re)))) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (sqrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 2) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 1) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2)) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (cbrt.f64 (/.f64 2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) 1) (*.f64 (sin.f64 re) 1/2))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) -2) (neg.f64 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 1)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 3)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 2) 1/2)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 3) 1/3)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 2)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (/.f64 1 (*.f64 (cosh.f64 im) (sin.f64 re))) -1)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (/.f64 2 (sin.f64 re)) 3)) 1/3)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (/.f64 (/.f64 1 (*.f64 (cosh.f64 im) (sin.f64 re))) 1) -1)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (*.f64 (pow.f64 (cosh.f64 im) 3) (pow.f64 (sin.f64 re) 3)) 1/3)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (*.f64 (cbrt.f64 (sin.f64 re)) (cbrt.f64 (cosh.f64 im))) 3)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (cosh.f64 im) 3)) 1/3)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (*.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (cosh.f64 im))) 2)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(neg.f64 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 -2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(sqrt.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 2))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(cbrt.f64 (pow.f64 (*.f64 (cosh.f64 im) (sin.f64 re)) 3))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (/.f64 2 (sin.f64 re)) 3)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(expm1.f64 (log1p.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 1))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re))) 1) 1))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 3))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 1/3))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) 2))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 (cosh.f64 im) (sin.f64 re)))) -1))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log1p.f64 (expm1.f64 (*.f64 (cosh.f64 im) (sin.f64 re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 0 (/.f64 2 (sin.f64 re)))
(/.f64 2 (sin.f64 re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 2 (sin.f64 re)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 2 (sin.f64 re))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (/.f64 2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 2 (sin.f64 re))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 2 (sin.f64 re))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (/.f64 2 (sin.f64 re))))))
(*.f64 2 (log.f64 (fabs.f64 (exp.f64 (/.f64 1 (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 2 (sin.f64 re)))) 1)
(/.f64 2 (sin.f64 re))
(*.f64 2 (/.f64 1 (sin.f64 re)))
(/.f64 2 (sin.f64 re))
(*.f64 (/.f64 2 (sin.f64 re)) 1)
(/.f64 2 (sin.f64 re))
(*.f64 1 (/.f64 2 (sin.f64 re)))
(/.f64 2 (sin.f64 re))
(*.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2))
(/.f64 2 (sin.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 2) (cbrt.f64 (/.f64 2 (sin.f64 re))))
(/.f64 2 (sin.f64 re))
(*.f64 (sqrt.f64 (/.f64 2 (sin.f64 re))) (sqrt.f64 (/.f64 2 (sin.f64 re))))
(/.f64 2 (sin.f64 re))
(*.f64 -2 (/.f64 1 (neg.f64 (sin.f64 re))))
(/.f64 2 (sin.f64 re))
(*.f64 (/.f64 1 (sin.f64 re)) 2)
(/.f64 2 (sin.f64 re))
(pow.f64 (/.f64 2 (sin.f64 re)) 1)
(/.f64 2 (sin.f64 re))
(pow.f64 (cbrt.f64 (/.f64 2 (sin.f64 re))) 3)
(/.f64 2 (sin.f64 re))
(pow.f64 (*.f64 4 (pow.f64 (sin.f64 re) -2)) 1/2)
(sqrt.f64 (*.f64 4 (pow.f64 (sin.f64 re) -2)))
(fabs.f64 (/.f64 2 (sin.f64 re)))
(pow.f64 (pow.f64 (/.f64 2 (sin.f64 re)) 3) 1/3)
(/.f64 2 (sin.f64 re))
(pow.f64 (sqrt.f64 (/.f64 2 (sin.f64 re))) 2)
(/.f64 2 (sin.f64 re))
(pow.f64 (*.f64 (sin.f64 re) 1/2) -1)
(/.f64 2 (sin.f64 re))
(pow.f64 (/.f64 (*.f64 (sin.f64 re) 1/2) 1) -1)
(/.f64 2 (sin.f64 re))
(sqrt.f64 (*.f64 4 (pow.f64 (sin.f64 re) -2)))
(fabs.f64 (/.f64 2 (sin.f64 re)))
(log.f64 (exp.f64 (/.f64 2 (sin.f64 re))))
(/.f64 2 (sin.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 2 (sin.f64 re)))))
(/.f64 2 (sin.f64 re))
(cbrt.f64 (pow.f64 (/.f64 2 (sin.f64 re)) 3))
(/.f64 2 (sin.f64 re))
(expm1.f64 (log1p.f64 (/.f64 2 (sin.f64 re))))
(/.f64 2 (sin.f64 re))
(exp.f64 (log.f64 (/.f64 2 (sin.f64 re))))
(/.f64 2 (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 2 (sin.f64 re))) 1))
(/.f64 2 (sin.f64 re))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 2 (sin.f64 re))) 1) 1))
(/.f64 2 (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 2 (sin.f64 re)))) 3))
(/.f64 2 (sin.f64 re))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 2 (sin.f64 re)))) 1/3))
(/.f64 2 (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 2 (sin.f64 re)))) 2))
(/.f64 2 (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) 1/2)) -1))
(/.f64 2 (sin.f64 re))
(log1p.f64 (expm1.f64 (/.f64 2 (sin.f64 re))))
(/.f64 2 (sin.f64 re))

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

rewrite93.0ms (1%)

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)

simplify110.0ms (1.1%)

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

localize11.0ms (0.1%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 (*.f64 2 (cosh.f64 im)) re)
Compiler

Compiled 26 to 15 computations (42.3% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite61.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1698×pow1
1556×add-exp-log
1554×log1p-expm1-u
1554×expm1-log1p-u
1522×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
118217
2214817
Stop Event
node limit
Counts
1 → 13
Calls
Call 1
Inputs
(*.f64 (*.f64 2 (cosh.f64 im)) re)
Outputs
(-.f64 (+.f64 1 (*.f64 2 (*.f64 (cosh.f64 im) re))) 1)
(pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 1)
(pow.f64 (cbrt.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))) 3)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))) 2)
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 2) (cosh.f64 im)) re))
(cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 re 3)))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (*.f64 2 (cosh.f64 im)) 3)))
(expm1.f64 (log1p.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))))
(exp.f64 (log.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))))
(log1p.f64 (expm1.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))))

simplify50.0ms (0.5%)

Algorithm
egg-herbie
Rules
1598×associate-*r/
1330×log-prod
1324×fma-def
988×associate-*r*
898×distribute-rgt-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
063955
1168953
2542933
33142659
Stop Event
node limit
Counts
37 → 31
Calls
Call 1
Inputs
(*.f64 2 re)
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(+.f64 (*.f64 re (pow.f64 im 2)) (+.f64 (*.f64 1/12 (*.f64 re (pow.f64 im 4))) (*.f64 2 re)))
(+.f64 (*.f64 re (pow.f64 im 2)) (+.f64 (*.f64 1/360 (*.f64 re (pow.f64 im 6))) (+.f64 (*.f64 1/12 (*.f64 re (pow.f64 im 4))) (*.f64 2 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 (+.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 (+.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 1 (*.f64 2 (*.f64 (cosh.f64 im) re))) 1)
(pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 1)
(pow.f64 (cbrt.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))) 3)
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))) 2)
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 2) (cosh.f64 im)) re))
(cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 re 3)))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (*.f64 2 (cosh.f64 im)) 3)))
(expm1.f64 (log1p.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))))
(exp.f64 (log.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))))
(log1p.f64 (expm1.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))))
Outputs
(*.f64 2 re)
(+.f64 (*.f64 re (pow.f64 im 2)) (*.f64 2 re))
(fma.f64 re (*.f64 im im) (*.f64 2 re))
(*.f64 re (+.f64 2 (*.f64 im im)))
(*.f64 re (fma.f64 im im 2))
(+.f64 (*.f64 re (pow.f64 im 2)) (+.f64 (*.f64 1/12 (*.f64 re (pow.f64 im 4))) (*.f64 2 re)))
(fma.f64 re (*.f64 im im) (fma.f64 1/12 (*.f64 re (pow.f64 im 4)) (*.f64 2 re)))
(fma.f64 re (*.f64 im im) (fma.f64 2 re (*.f64 re (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 re (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4))))
(*.f64 re (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (*.f64 re (pow.f64 im 2)) (+.f64 (*.f64 1/360 (*.f64 re (pow.f64 im 6))) (+.f64 (*.f64 1/12 (*.f64 re (pow.f64 im 4))) (*.f64 2 re))))
(fma.f64 re (*.f64 im im) (fma.f64 1/360 (*.f64 re (pow.f64 im 6)) (fma.f64 1/12 (*.f64 re (pow.f64 im 4)) (*.f64 2 re))))
(fma.f64 re (*.f64 im im) (fma.f64 1/360 (*.f64 re (pow.f64 im 6)) (fma.f64 2 re (*.f64 re (*.f64 (pow.f64 im 4) 1/12)))))
(fma.f64 re (*.f64 1/360 (pow.f64 im 6)) (*.f64 re (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))))
(*.f64 re (+.f64 (fma.f64 im im 2) (fma.f64 1/12 (pow.f64 im 4) (*.f64 1/360 (pow.f64 im 6)))))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(-.f64 (+.f64 1 (*.f64 2 (*.f64 (cosh.f64 im) re))) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(pow.f64 (cbrt.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))) 3)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(pow.f64 (pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 3) 1/3)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))) 2)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 2))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(log.f64 (pow.f64 (pow.f64 (exp.f64 2) (cosh.f64 im)) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (cosh.f64 im) re)) 3))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 re 3)))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (*.f64 2 (cosh.f64 im)) 3)))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(expm1.f64 (log1p.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(exp.f64 (log.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))
(log1p.f64 (expm1.f64 (*.f64 2 (*.f64 (cosh.f64 im) re))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (cosh.f64 im) (+.f64 re re))

localize11.0ms (0.1%)

Local Accuracy

Found 3 expressions with local accuracy:

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

Compiled 32 to 11 computations (65.6% saved)

series4.0ms (0%)

Counts
3 → 72
Calls

18 calls:

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

rewrite76.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1982×prod-diff
1146×log-prod
590×fma-def
550×pow-prod-up
518×pow-exp
Iterations

Useful iterations: 1 (0.0ms)

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

simplify94.0ms (1%)

Algorithm
egg-herbie
Rules
988×distribute-lft-in
962×distribute-rgt-in
868×unswap-sqr
664×*-commutative
384×times-frac
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02824909
16714813
220754737
Stop Event
node limit
Counts
181 → 151
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 1/2 (pow.f64 im 2))) re)
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (*.f64 -1/6 (pow.f64 re 3)))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 0 (*.f64 re (*.f64 im im)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im))) (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))))
(-.f64 (exp.f64 (log1p.f64 (*.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 (pow.f64 (*.f64 im (sqrt.f64 re)) 4))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 im im)))))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 im 6)))
(cbrt.f64 (*.f64 (pow.f64 im 6) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 im im))))
(exp.f64 (fma.f64 2 (log.f64 im) (log.f64 re)))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 re)) 1))
(exp.f64 (*.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 re)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 re (*.f64 im im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (fma.f64 2 (log.f64 im) (log.f64 re))) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 re))) 2))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 im im))))
(+.f64 0 (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im))) 1)
(pow.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) 1)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) 3)
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 6) 1/3)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 2)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im))))
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 6))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)))
(exp.f64 (log.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 6)) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im)) 2))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))) 1)
(-.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im))) (/.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4) (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im))))
(*.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)) 1)
(*.f64 1 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))
(*.f64 (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 2) (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(*.f64 (sqrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) (sqrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(*.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (/.f64 1 (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)) (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3))))
(/.f64 1 (/.f64 (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im)) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4))))
(/.f64 (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3))) (neg.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4))) (neg.f64 (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4) (pow.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)))
(pow.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)) 1)
(pow.f64 (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 3)
(pow.f64 (pow.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)) (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3))) -1)
(pow.f64 (/.f64 (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im)) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4))) -1)
(sqrt.f64 (pow.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)) 2))
(log.f64 (exp.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))))
(log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im))) (exp.f64 (sin.f64 re))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(log.f64 (*.f64 (exp.f64 (sin.f64 re)) (+.f64 1 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (+.f64 1 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)))))
(cbrt.f64 (pow.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)) 3))
(expm1.f64 (log1p.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(exp.f64 (log.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))) 2))
(log1p.f64 (expm1.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(fma.f64 re (*.f64 (*.f64 im im) 1/2) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 re (*.f64 im im)) 1/2 (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) 1 (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(fma.f64 1 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(fma.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (cbrt.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4)) (*.f64 (cbrt.f64 (*.f64 re (*.f64 im im))) 1/2) (sin.f64 re))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) (sin.f64 re))
(fma.f64 (*.f64 im (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 re)) 1/2) (sin.f64 re))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(fma.f64 (*.f64 re im) (*.f64 im 1/2) (sin.f64 re))
(fma.f64 (*.f64 re 1/2) (*.f64 im im) (sin.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 im im)) re (sin.f64 re))
(fma.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4))) (cbrt.f64 (*.f64 re (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 re))) (*.f64 im (sqrt.f64 re)) (sin.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 re im)) im (sin.f64 re))
(fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))
(fma.f64 (*.f64 (*.f64 re 1/2) 1) (*.f64 im im) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 re 1/2) (*.f64 (cbrt.f64 im) im)) (pow.f64 (cbrt.f64 im) 2) (sin.f64 re))
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 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(*.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 im (*.f64 im 1/2) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (*.f64 -1/6 (pow.f64 re 3)))
(fma.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) re (*.f64 -1/6 (pow.f64 re 3)))
(fma.f64 re (fma.f64 im (*.f64 im 1/2) 1) (*.f64 -1/6 (pow.f64 re 3)))
(fma.f64 re (fma.f64 1/2 (*.f64 im im) 1) (*.f64 -1/6 (pow.f64 re 3)))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))
(fma.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) re (fma.f64 1/120 (pow.f64 re 5) (*.f64 -1/6 (pow.f64 re 3))))
(fma.f64 re (fma.f64 im (*.f64 im 1/2) 1) (fma.f64 -1/6 (pow.f64 re 3) (*.f64 1/120 (pow.f64 re 5))))
(fma.f64 re (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 -1/6 (pow.f64 re 3) (*.f64 1/120 (pow.f64 re 5))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(fma.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) re (fma.f64 1/120 (pow.f64 re 5) (fma.f64 -1/6 (pow.f64 re 3) (*.f64 -1/5040 (pow.f64 re 7)))))
(fma.f64 re (fma.f64 im (*.f64 im 1/2) 1) (fma.f64 1/120 (pow.f64 re 5) (fma.f64 -1/6 (pow.f64 re 3) (*.f64 -1/5040 (pow.f64 re 7)))))
(fma.f64 re (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 1/120 (pow.f64 re 5) (fma.f64 -1/6 (pow.f64 re 3) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(+.f64 0 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 im im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im))) (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))))
(*.f64 re (*.f64 im im))
(-.f64 (exp.f64 (log1p.f64 (*.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 (pow.f64 (*.f64 im (sqrt.f64 re)) 4))
(*.f64 re (*.f64 im im))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))
(*.f64 re (*.f64 im im))
(log.f64 (+.f64 1 (expm1.f64 (*.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))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 im 6)))
(*.f64 re (*.f64 im im))
(cbrt.f64 (*.f64 (pow.f64 im 6) (pow.f64 re 3)))
(*.f64 re (*.f64 im im))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im im))
(exp.f64 (fma.f64 2 (log.f64 im) (log.f64 re)))
(*.f64 re (*.f64 im im))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 re)) 1))
(*.f64 re (*.f64 im im))
(exp.f64 (*.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 re)) 1) 1))
(*.f64 re (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 re (*.f64 im im)))) 3))
(*.f64 re (*.f64 im im))
(exp.f64 (*.f64 (*.f64 3 (fma.f64 2 (log.f64 im) (log.f64 re))) 1/3))
(*.f64 re (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 re))) 2))
(*.f64 re (*.f64 im im))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im im))
(+.f64 0 (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))) (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))))) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))))) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im))))))
(*.f64 3 (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (*.f64 im im))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2))))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im))) 1)
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(pow.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) 1)
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) 3)
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 6) 1/3)
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 2)
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4))
(sqrt.f64 (*.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im))))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 6))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(exp.f64 (log.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) 1))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) 1) 1))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im))) 3))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 6)) 1/3))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) 3) 1/3))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im)) 2))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 (*.f64 im im) (*.f64 re 1/2))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))) 1)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(-.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im))) (/.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4) (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (-.f64 (sin.f64 re) (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) -1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 re (*.f64 im im)) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (neg.f64 (pow.f64 (sin.f64 re) 2))) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (sin.f64 re)))
(*.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)) 1)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(*.f64 1 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(*.f64 (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 2))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 2) (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(*.f64 (sqrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) (sqrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(*.f64 (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(*.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2))))))
(*.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (/.f64 1 (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (-.f64 (sin.f64 re) (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) -1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 re (*.f64 im im)) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (neg.f64 (pow.f64 (sin.f64 re) 2))) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (sin.f64 re)))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)) (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3))))
(*.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2))))))
(/.f64 1 (/.f64 (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im)) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (-.f64 (sin.f64 re) (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) -1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 re (*.f64 im im)) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (neg.f64 (pow.f64 (sin.f64 re) 2))) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (sin.f64 re)))
(/.f64 (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(*.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)))))
(*.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im)))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (-.f64 (sin.f64 re) (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) -1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 re (*.f64 im im)) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (neg.f64 (pow.f64 (sin.f64 re) 2))) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (sin.f64 re)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3))) (neg.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(*.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4))) (neg.f64 (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (-.f64 (sin.f64 re) (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) -1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 re (*.f64 im im)) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (neg.f64 (pow.f64 (sin.f64 re) 2))) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (sin.f64 re)))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4) (pow.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (-.f64 (sin.f64 re) (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) -1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 re (*.f64 im im)) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (neg.f64 (pow.f64 (sin.f64 re) 2))) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (sin.f64 re)))
(pow.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)) 1)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(pow.f64 (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 3)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(pow.f64 (pow.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)) 3) 1/3)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(pow.f64 (sqrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 2)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(pow.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (-.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)) (fma.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3))) -1)
(*.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (/.f64 1 (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2))))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (-.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) (sin.f64 re)) (pow.f64 (sin.f64 re) 2)))
(/.f64 (fma.f64 (*.f64 (pow.f64 re 3) 1/8) (pow.f64 im 6) (pow.f64 (sin.f64 re) 3)) (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2))))))
(pow.f64 (/.f64 (-.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im)) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4))) -1)
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (-.f64 (sin.f64 re) (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) -1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 re (*.f64 im im)) -1/2)))
(/.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) (neg.f64 (pow.f64 (sin.f64 re) 2))) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (sin.f64 re)))
(sqrt.f64 (pow.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)) 2))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(log.f64 (exp.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im))) (exp.f64 (sin.f64 re))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(log.f64 (*.f64 (exp.f64 (sin.f64 re)) (+.f64 1 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (pow.f64 (pow.f64 (exp.f64 re) (*.f64 im im)) 1/2)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (+.f64 1 (expm1.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(cbrt.f64 (pow.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)) 3))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(expm1.f64 (log1p.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(exp.f64 (log.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 1))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))) 1) 1))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))) 3))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))) 1/3))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re)))) 2))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(log1p.f64 (expm1.f64 (fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 re (*.f64 (*.f64 im im) 1/2) (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 re (*.f64 im im)) 1/2 (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im) 1 (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 1 (*.f64 (*.f64 (*.f64 re 1/2) im) im) (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2))) (cbrt.f64 (*.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4))) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (cbrt.f64 (*.f64 (*.f64 (*.f64 re 1/2) im) im)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2))) (cbrt.f64 (*.f64 1/4 (pow.f64 (*.f64 im (sqrt.f64 re)) 4))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4)) (*.f64 (cbrt.f64 (*.f64 re (*.f64 im im))) 1/2) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4)) (*.f64 1/2 (cbrt.f64 (*.f64 re (*.f64 im im)))) (sin.f64 re))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 im (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 re)) 1/2) (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 re 1/2) im) im))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 re im) (*.f64 im 1/2) (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 re 1/2) (*.f64 im im) (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 im im)) re (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4))) (cbrt.f64 (*.f64 re (*.f64 im im))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 re)) 4)) (*.f64 1/2 (cbrt.f64 (*.f64 re (*.f64 im im)))) (sin.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 re))) (*.f64 im (sqrt.f64 re)) (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 re im)) im (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 re 1/2) im) im (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 re 1/2) 1) (*.f64 im im) (sin.f64 re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (sin.f64 re))
(fma.f64 im (*.f64 im (*.f64 re 1/2)) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 re 1/2) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 re 1/2) (*.f64 (cbrt.f64 im) im)) (pow.f64 (cbrt.f64 im) 2) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 re 1/2) (*.f64 im (cbrt.f64 im))) (pow.f64 (cbrt.f64 im) 2) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 im (*.f64 re 1/2)) (cbrt.f64 im)) (pow.f64 (cbrt.f64 im) 2) (sin.f64 re))
(fma.f64 (*.f64 re (*.f64 im (*.f64 1/2 (cbrt.f64 im)))) (pow.f64 (cbrt.f64 im) 2) (sin.f64 re))

localize10.0ms (0.1%)

Local Accuracy

Found 3 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 (sin.f64 re) (cosh.f64 im))
99.5%
(+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))
95.6%
(-.f64 (+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
Compiler

Compiled 30 to 12 computations (60% saved)

series2.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
re
@0
(-.f64 (+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
0.0ms
re
@0
(+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))
0.0ms
im
@0
(+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))
0.0ms
re
@inf
(+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))
0.0ms
im
@inf
(+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))

rewrite368.0ms (3.8%)

Algorithm
batch-egg-rewrite
Rules
1016×prod-diff
980×log-prod
970×fma-def
610×pow-prod-down
490×pow-prod-up
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01148
123532
2316532
Stop Event
node limit
Counts
2 → 154
Calls
Call 1
Inputs
(-.f64 (+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))
Outputs
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(+.f64 1 (*.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) -1)
(+.f64 0 (*.f64 (sin.f64 re) (cosh.f64 im)))
(+.f64 -1 (fma.f64 (sin.f64 re) (cosh.f64 im) 1))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(*.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (cosh.f64 im) (sin.f64 re))
(*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(*.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)))
(*.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)))
(*.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(*.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(*.f64 (+.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) (-.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1))
(*.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (cosh.f64 im) 2))) (cbrt.f64 (cosh.f64 im)))
(*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1)))
(/.f64 1 (/.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1)))
(/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (-.f64 1 (*.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) -1))))
(/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1)) (neg.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1)) (neg.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (+.f64 1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 3)) (+.f64 1 (-.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))))
(/.f64 (-.f64 1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 2)) (-.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2)
(pow.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1)) -1)
(pow.f64 (/.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1)) -1)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(hypot.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(fma.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(fma.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) -1)
(fma.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 0)
(fma.f64 (cosh.f64 im) (sin.f64 re) 0)
(fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1 0)
(fma.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 1 -1)
(fma.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)) 0)
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) 0)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 0)
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)) 0)
(fma.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) -1)
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) -1)
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) -1)
(fma.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)) 0)
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 0)
(fma.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)) 0)
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) -1)
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) -1)
(fma.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)) -1)
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))) 0)
(fma.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (/.f64 1 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))) -1)
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) 0)
(fma.f64 (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1)
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1)
(fma.f64 (+.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) (fma.f64 (sqrt.f64 (cosh.f64 im)) (sqrt.f64 (sin.f64 re)) -1) 1)
(fma.f64 (+.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) (-.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) 0)
(fma.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (cosh.f64 im) 2))) (cbrt.f64 (cosh.f64 im)) 0)
(fma.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)) 0)
(fma.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)) 0)
(fma.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)) 0)
(-.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) 1)
(-.f64 (/.f64 1 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))) (/.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(*.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 1))
(*.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 1)
(*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1))
(*.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)))
(*.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (/.f64 1 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1) (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))))
(/.f64 1 (/.f64 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(/.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(/.f64 (neg.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))) (neg.f64 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)))
(/.f64 (neg.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))) (neg.f64 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) 1) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) 1) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 1)
(pow.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 3)
(pow.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1) (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))) -1)
(pow.f64 (/.f64 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2))
(log.f64 (exp.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1))))
(cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3))
(expm1.f64 (log1p.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/3))
(exp.f64 (*.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 2))
(log1p.f64 (expm1.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(fma.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(fma.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (cosh.f64 im) (sin.f64 re) 1)
(fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1 1)
(fma.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)) 1)
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) 1)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)) 1)
(fma.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)) 1)
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(fma.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)) 1)
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))) 1)
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) 1)
(fma.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) 1 -1)
(fma.f64 (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2))) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) -1)
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) -1)
(fma.f64 (+.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) (-.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) 1)
(fma.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (cosh.f64 im) 2))) (cbrt.f64 (cosh.f64 im)) 1)
(fma.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)) 1)
(fma.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)) 1)
(fma.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)) 1)

simplify118.0ms (1.2%)

Algorithm
egg-herbie
Rules
1046×distribute-lft-in
982×distribute-rgt-in
934×cancel-sign-sub-inv
694×unswap-sqr
474×distribute-rgt-neg-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03467648
17916720
224896584
Stop Event
node limit
Counts
202 → 238
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 7))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.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 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
1
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) 1)
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 1 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 1 (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5))))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (sin.f64 re))
(+.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(+.f64 (sin.f64 re) (+.f64 1 (+.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 1 (+.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 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(+.f64 1 (*.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) -1)
(+.f64 0 (*.f64 (sin.f64 re) (cosh.f64 im)))
(+.f64 -1 (fma.f64 (sin.f64 re) (cosh.f64 im) 1))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(*.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (cosh.f64 im) (sin.f64 re))
(*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(*.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)))
(*.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(*.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)))
(*.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(*.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(*.f64 (+.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) (-.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1))
(*.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (cosh.f64 im) 2))) (cbrt.f64 (cosh.f64 im)))
(*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1)))
(/.f64 1 (/.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1)))
(/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (-.f64 1 (*.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) -1))))
(/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1)) (neg.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1)) (neg.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (+.f64 1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 3)) (+.f64 1 (-.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))))
(/.f64 (-.f64 1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 2)) (-.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2)
(pow.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1)) -1)
(pow.f64 (/.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1)) -1)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(hypot.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(fma.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(fma.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) -1)
(fma.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 0)
(fma.f64 (cosh.f64 im) (sin.f64 re) 0)
(fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1 0)
(fma.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 1 -1)
(fma.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)) 0)
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) 0)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 0)
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)) 0)
(fma.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) -1)
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) -1)
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) -1)
(fma.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)) 0)
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 0)
(fma.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)) 0)
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) -1)
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) -1)
(fma.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)) -1)
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))) 0)
(fma.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (/.f64 1 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))) -1)
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) 0)
(fma.f64 (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1)
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1)
(fma.f64 (+.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) (fma.f64 (sqrt.f64 (cosh.f64 im)) (sqrt.f64 (sin.f64 re)) -1) 1)
(fma.f64 (+.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) (-.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) 0)
(fma.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (cosh.f64 im) 2))) (cbrt.f64 (cosh.f64 im)) 0)
(fma.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)) 0)
(fma.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)) 0)
(fma.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)) 0)
(-.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) 1)
(-.f64 (/.f64 1 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))) (/.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(*.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 1))
(*.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 1)
(*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1))
(*.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)))
(*.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (/.f64 1 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1) (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))))
(/.f64 1 (/.f64 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(/.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(/.f64 (neg.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))) (neg.f64 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)))
(/.f64 (neg.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))) (neg.f64 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) 1) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) 1) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 1)
(pow.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 3)
(pow.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1) (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))) -1)
(pow.f64 (/.f64 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2))
(log.f64 (exp.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1))))
(cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3))
(expm1.f64 (log1p.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/3))
(exp.f64 (*.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 2))
(log1p.f64 (expm1.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(fma.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(fma.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (cosh.f64 im) (sin.f64 re) 1)
(fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1 1)
(fma.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)) 1)
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) 1)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)) 1)
(fma.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)) 1)
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(fma.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)) 1)
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))) 1)
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) 1)
(fma.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) 1 -1)
(fma.f64 (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2))) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) -1)
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) -1)
(fma.f64 (+.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) (-.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) 1)
(fma.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (cosh.f64 im) 2))) (cbrt.f64 (cosh.f64 im)) 1)
(fma.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)) 1)
(fma.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)) 1)
(fma.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)) 1)
Outputs
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (*.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 3) -1/12)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5)))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (*.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5)))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (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 (pow.f64 re 5) 1/240))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 (pow.f64 re 5) 1/240))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 7))) (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5))))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (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)) (*.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5))))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (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)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 5) 1/240)))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 (pow.f64 re 5) 1/240))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/2 re) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (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 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/24)))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 (*.f64 im im) 1/2) (*.f64 (pow.f64 im 4) 1/24))))
(+.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 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(+.f64 (fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re)) (fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/24))))
(+.f64 (fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re)) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
1
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) 1)
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) 1)
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 1 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3)))))
(+.f64 (fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) 1) (*.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) 1))
(+.f64 1 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 3) -1/12))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)) (+.f64 1 (+.f64 (*.f64 -1/12 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) (pow.f64 re 5))))))
(+.f64 (fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) 1) (fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (*.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5)))))
(+.f64 (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 (pow.f64 re 5) 1/240))) (fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) 1))
(+.f64 1 (fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 (pow.f64 re 5) 1/240)))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (sin.f64 re))
(+.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(+.f64 (+.f64 1 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(+.f64 1 (fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re)))
(+.f64 (sin.f64 re) (+.f64 1 (+.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 1 (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(+.f64 1 (+.f64 (fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/24))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (*.f64 im im) 1/2) (*.f64 (pow.f64 im 4) 1/24))) (+.f64 1 (sin.f64 re)))
(+.f64 (sin.f64 re) (+.f64 1 (+.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 (+.f64 1 (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 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(+.f64 1 (+.f64 (fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re)) (fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/24)))))
(+.f64 1 (+.f64 (fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re)) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)))))
(+.f64 1 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)) 1)
(fma.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 1 (*.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) -1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 0 (*.f64 (sin.f64 re) (cosh.f64 im)))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 -1 (fma.f64 (sin.f64 re) (cosh.f64 im) 1))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sin.f64 re) (cosh.f64 im))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (cosh.f64 im) (sin.f64 re))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)))
(*.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (sin.f64 re) (cbrt.f64 (cosh.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (cbrt.f64 (cosh.f64 im))))
(*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(*.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))
(*.f64 (+.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) (-.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (cosh.f64 im) 2))) (cbrt.f64 (cosh.f64 im)))
(*.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (sin.f64 re) (cbrt.f64 (cosh.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (cbrt.f64 (cosh.f64 im))))
(*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1)))
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 1 (/.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1)))
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))
(/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (-.f64 1 (*.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) -1))))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (-.f64 1 (*.f64 -1 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (+.f64 1 (+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2))))
(/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1)) (neg.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1)) (neg.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))
(/.f64 (+.f64 1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 3)) (+.f64 1 (-.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))))
(/.f64 (+.f64 1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 3)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 2) (-.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))))
(/.f64 (+.f64 1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 3)) (+.f64 1 (*.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) (+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) -1))))
(/.f64 (-.f64 1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 2)) (-.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (cosh.f64 im))) 2)
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 (sin.f64 re)))
(/.f64 (sin.f64 re) (/.f64 1 (cosh.f64 im)))
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (sin.f64 re)) 2)
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 (sin.f64 re)))
(/.f64 (sin.f64 re) (/.f64 1 (cosh.f64 im)))
(pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1/2)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3) 1/3)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(pow.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1)) -1)
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(pow.f64 (/.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1)) -1)
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (cosh.f64 im)))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(hypot.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))))
(hypot.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) (*.f64 (sin.f64 re) (cosh.f64 im)))))
(hypot.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 (cosh.f64 im) (fma.f64 (sin.f64 re) (cosh.f64 im) -1)))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) 1/3))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3) 1/3))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 2))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) -1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (sin.f64 re) (cosh.f64 im) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (cosh.f64 im) (sin.f64 re) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 1 -1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)) 0)
(*.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (sin.f64 re) (cbrt.f64 (cosh.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (cbrt.f64 (cosh.f64 im))))
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) -1)
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) -1)
(fma.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) -1)
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) -1)
(fma.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) -1)
(fma.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) -1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) -1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)) -1)
(+.f64 (/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)) -1)
(+.f64 -1 (/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (sin.f64 re) (*.f64 (cosh.f64 im) (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1)))
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))) 0)
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(fma.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (/.f64 1 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))) -1)
(+.f64 (/.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))) -1)
(+.f64 -1 (/.f64 (+.f64 -1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1)))
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) 0)
(*.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))
(fma.f64 (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (+.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) (fma.f64 (sqrt.f64 (cosh.f64 im)) (sqrt.f64 (sin.f64 re)) -1) 1)
(fma.f64 (+.f64 1 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) (fma.f64 (sqrt.f64 (cosh.f64 im)) (sqrt.f64 (sin.f64 re)) -1) 1)
(fma.f64 (+.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) (-.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (cosh.f64 im) 2))) (cbrt.f64 (cosh.f64 im)) 0)
(*.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (sin.f64 re) (cbrt.f64 (cosh.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (cbrt.f64 (cosh.f64 im))))
(fma.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(fma.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)) 0)
(+.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 (sin.f64 re) (cosh.f64 im))
(-.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(-.f64 (/.f64 1 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))) (/.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(/.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(/.f64 (+.f64 -1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(*.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 1))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(*.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1))
(*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(*.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (sin.f64 re) (*.f64 (cosh.f64 im) (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1))
(*.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (/.f64 1 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(/.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(/.f64 (+.f64 -1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1) (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (sin.f64 re) (*.f64 (cosh.f64 im) (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1))
(/.f64 1 (/.f64 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))))
(/.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(/.f64 (+.f64 -1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (sin.f64 re) (*.f64 (cosh.f64 im) (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (sin.f64 re) (*.f64 (cosh.f64 im) (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1))
(/.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(/.f64 (+.f64 -1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(/.f64 (neg.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))) (neg.f64 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1)))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (sin.f64 re) (*.f64 (cosh.f64 im) (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1))
(/.f64 (neg.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))) (neg.f64 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)))))
(/.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(/.f64 (+.f64 -1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2) 1) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(/.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(/.f64 (+.f64 -1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) 1) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (sin.f64 re) (*.f64 (cosh.f64 im) (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) 1) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(/.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(/.f64 (+.f64 -1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(pow.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 3)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(pow.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) 1/2)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(pow.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) 1/3)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(pow.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 2)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(pow.f64 (/.f64 (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1) (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3))) -1)
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1) 1))
(/.f64 (+.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 3)) (fma.f64 (sin.f64 re) (*.f64 (cosh.f64 im) (fma.f64 (sin.f64 re) (cosh.f64 im) -1)) 1))
(pow.f64 (/.f64 (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2))) -1)
(/.f64 (-.f64 1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (-.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))))
(/.f64 (+.f64 -1 (pow.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) -1))
(sqrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(log.f64 (exp.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1))))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(expm1.f64 (log1p.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1))
(exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1) 1))
(exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (*.f64 1/3 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 3))
(exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (*.f64 3 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 1/3))
(exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (*.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 3) 1/3))
(exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(exp.f64 (*.f64 (*.f64 1/2 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im)))) 2))
(exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (cosh.f64 im))))
(log1p.f64 (expm1.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)))
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im)) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (cosh.f64 im) (sin.f64 re) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (*.f64 (sin.f64 re) (cosh.f64 im)) 1 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (cbrt.f64 (cosh.f64 im)) (sin.f64 re)) 1)
(fma.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (sin.f64 re) (cbrt.f64 (cosh.f64 im))) 1)
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 2) (cbrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (cbrt.f64 (sin.f64 re)) (cosh.f64 im)) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (sqrt.f64 (cosh.f64 im)) (*.f64 (sqrt.f64 (cosh.f64 im)) (sin.f64 re)) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) (sqrt.f64 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (sqrt.f64 (sin.f64 re)) (*.f64 (sqrt.f64 (sin.f64 re)) (cosh.f64 im)) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))) 1)
(fma.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))) 1)
(+.f64 1 (/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 3)) (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) (fma.f64 (sin.f64 re) (cosh.f64 im) 2))))
(fma.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2) -1) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) 1)
(fma.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (/.f64 1 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) 1)
(+.f64 1 (/.f64 (+.f64 -1 (pow.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1) 2)) (fma.f64 (sin.f64 re) (cosh.f64 im) 2)))
(fma.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) 1 -1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2))) (cbrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) -1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2)) -1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (+.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) (-.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 1)) 1) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (cosh.f64 im) 2))) (cbrt.f64 (cosh.f64 im)) 1)
(fma.f64 (cbrt.f64 (pow.f64 (cosh.f64 im) 2)) (*.f64 (sin.f64 re) (cbrt.f64 (cosh.f64 im))) 1)
(fma.f64 (*.f64 (sin.f64 re) (sqrt.f64 (cosh.f64 im))) (sqrt.f64 (cosh.f64 im)) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (sin.f64 re)) 2)) (cbrt.f64 (sin.f64 re)) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)
(fma.f64 (*.f64 (cosh.f64 im) (sqrt.f64 (sin.f64 re))) (sqrt.f64 (sin.f64 re)) 1)
(+.f64 (fma.f64 (sin.f64 re) (cosh.f64 im) 2) -1)
(fma.f64 (sin.f64 re) (cosh.f64 im) 1)

eval236.0ms (2.5%)

Compiler

Compiled 12526 to 6762 computations (46% saved)

prune120.0ms (1.2%)

Pruning

11 alts after pruning (5 fresh and 6 done)

PrunedKeptTotal
New7655770
Fresh000
Picked011
Done257
Total76711778
Accurracy
100.0%
Counts
778 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
56.7%
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 re))
48.7%
(-.f64 (+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
4.3%
(-.f64 1 1)
88.8%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (*.f64 im im))))
98.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
100.0%
(*.f64 (sin.f64 re) (cosh.f64 im))
56.1%
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
4.9%
(*.f64 im (*.f64 1/2 (*.f64 im re)))
4.9%
(*.f64 1/2 (*.f64 re (*.f64 im im)))
98.5%
(sin.f64 re)
56.1%
re
Compiler

Compiled 93 to 69 computations (25.8% saved)

localize8.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 20 to 7 computations (65% saved)

localize7.0ms (0.1%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 20 to 9 computations (55% saved)

series8.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

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

rewrite61.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1530×pow1
1404×add-exp-log
1404×log1p-expm1-u
1404×expm1-log1p-u
1374×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

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

simplify50.0ms (0.5%)

Algorithm
egg-herbie
Rules
1392×fma-def
1192×distribute-rgt-in
1166×distribute-lft-in
890×log-prod
660×unswap-sqr
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0611120
11511120
26281120
324851120
Stop Event
node limit
Counts
70 → 29
Calls
Call 1
Inputs
(*.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 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(*.f64 1/2 (*.f64 re im))
(-.f64 (+.f64 1 (*.f64 im (*.f64 im (*.f64 re 1/2)))) 1)
(pow.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) 1)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))) 3)
(pow.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) 2))
(log.f64 (pow.f64 (exp.f64 im) (*.f64 im (*.f64 re 1/2))))
(cbrt.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) 3))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(exp.f64 (log.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(-.f64 (+.f64 1 (*.f64 im (*.f64 re 1/2))) 1)
(pow.f64 (*.f64 im (*.f64 re 1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 re 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 im (*.f64 re 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (*.f64 re 1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (*.f64 re 1/2)) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 re) im) 1/2))
(cbrt.f64 (pow.f64 (*.f64 im (*.f64 re 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 re 1/2))))
(exp.f64 (log.f64 (*.f64 im (*.f64 re 1/2))))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 re 1/2))))
Outputs
(*.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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(*.f64 1/2 (*.f64 re im))
(*.f64 im (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(-.f64 (+.f64 1 (*.f64 im (*.f64 im (*.f64 re 1/2)))) 1)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(pow.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) 1)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))) 3)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(pow.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) 3) 1/3)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(pow.f64 (sqrt.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))) 2)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(sqrt.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) 2))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(log.f64 (pow.f64 (exp.f64 im) (*.f64 im (*.f64 re 1/2))))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(cbrt.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 re 1/2))) 3))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(exp.f64 (log.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im (*.f64 re 1/2)))))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(-.f64 (+.f64 1 (*.f64 im (*.f64 re 1/2))) 1)
(*.f64 im (*.f64 1/2 re))
(*.f64 1/2 (*.f64 re im))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(pow.f64 (*.f64 im (*.f64 re 1/2)) 1)
(*.f64 im (*.f64 1/2 re))
(*.f64 1/2 (*.f64 re im))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 re 1/2))) 3)
(*.f64 im (*.f64 1/2 re))
(*.f64 1/2 (*.f64 re im))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(pow.f64 (pow.f64 (*.f64 im (*.f64 re 1/2)) 3) 1/3)
(*.f64 im (*.f64 1/2 re))
(*.f64 1/2 (*.f64 re im))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(pow.f64 (sqrt.f64 (*.f64 im (*.f64 re 1/2))) 2)
(*.f64 im (*.f64 1/2 re))
(*.f64 1/2 (*.f64 re im))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(sqrt.f64 (pow.f64 (*.f64 im (*.f64 re 1/2)) 2))
(*.f64 im (*.f64 1/2 re))
(*.f64 1/2 (*.f64 re im))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 re) im) 1/2))
(*.f64 im (*.f64 1/2 re))
(*.f64 1/2 (*.f64 re im))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(cbrt.f64 (pow.f64 (*.f64 im (*.f64 re 1/2)) 3))
(*.f64 im (*.f64 1/2 re))
(*.f64 1/2 (*.f64 re im))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 re 1/2))))
(*.f64 im (*.f64 1/2 re))
(*.f64 1/2 (*.f64 re im))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(exp.f64 (log.f64 (*.f64 im (*.f64 re 1/2))))
(*.f64 im (*.f64 1/2 re))
(*.f64 1/2 (*.f64 re im))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 re 1/2))))
(*.f64 im (*.f64 1/2 re))
(*.f64 1/2 (*.f64 re im))
(*.f64 re (*.f64 1/2 im))
(*.f64 re (/.f64 im 2))

localize9.0ms (0.1%)

Compiler

Compiled 6 to 6 computations (0% saved)

localize10.0ms (0.1%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
99.8%
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 re))
Compiler

Compiled 22 to 13 computations (40.9% saved)

series1.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite67.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1154×log-prod
638×prod-exp
610×pow-prod-down
500×pow-prod-up
444×pow-exp
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01023
121711
2294811
Stop Event
node limit
Counts
1 → 76
Calls
Call 1
Inputs
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 re))
Outputs
(+.f64 0 (*.f64 (cosh.f64 im) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cosh.f64 im) re))) 1)
(*.f64 2 (/.f64 (cosh.f64 im) (/.f64 2 re)))
(*.f64 2 (/.f64 1 (/.f64 (/.f64 2 re) (cosh.f64 im))))
(*.f64 2 (*.f64 (cosh.f64 im) (*.f64 re 1/2)))
(*.f64 (cosh.f64 im) re)
(*.f64 (cosh.f64 im) (/.f64 2 (/.f64 2 re)))
(*.f64 (cosh.f64 im) (*.f64 2 (*.f64 re 1/2)))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 re 1/2))
(*.f64 re (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) re) 1)
(*.f64 1 (*.f64 (cosh.f64 im) re))
(*.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) 2) (cbrt.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (*.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 re 1/2)))
(*.f64 (sqrt.f64 (*.f64 (cosh.f64 im) re)) (sqrt.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 re 1/2)))
(*.f64 (*.f64 (cosh.f64 im) -2) (/.f64 1 (/.f64 -2 re)))
(*.f64 (*.f64 re 1/2) (*.f64 2 (cosh.f64 im)))
(*.f64 1/2 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 1 re)))
(*.f64 (/.f64 2 (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (/.f64 (cosh.f64 im) (cbrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 2 (sqrt.f64 (/.f64 2 re))) (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 re))) (/.f64 2 (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 (cosh.f64 im) 2) (/.f64 2 (/.f64 1 re)))
(*.f64 (/.f64 2 (/.f64 2 re)) (cosh.f64 im))
(*.f64 (/.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (/.f64 2 (cbrt.f64 (/.f64 2 re))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 2 re)) -2) (/.f64 (*.f64 2 (cosh.f64 im)) (cbrt.f64 (/.f64 2 re))))
(*.f64 (pow.f64 (/.f64 2 re) -1/2) (/.f64 (*.f64 2 (cosh.f64 im)) (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 2) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 1) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (cbrt.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (sqrt.f64 (/.f64 2 re))) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 2) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 re)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 1) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 re)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (cbrt.f64 (/.f64 2 re))))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) 1) (*.f64 re 1/2))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) -2) (neg.f64 re))
(pow.f64 (*.f64 (cosh.f64 im) re) 1)
(pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) 3)
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cosh.f64 im) re)) 2)
(pow.f64 (/.f64 1 (*.f64 (cosh.f64 im) re)) -1)
(pow.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (*.f64 re 1/2) -3)) 1/3)
(pow.f64 (/.f64 (/.f64 1 (*.f64 (cosh.f64 im) re)) 1) -1)
(pow.f64 (*.f64 (pow.f64 (cosh.f64 im) 3) (pow.f64 re 3)) 1/3)
(pow.f64 (*.f64 (cbrt.f64 re) (cbrt.f64 (cosh.f64 im))) 3)
(pow.f64 (*.f64 (pow.f64 re 3) (pow.f64 (cosh.f64 im) 3)) 1/3)
(pow.f64 (*.f64 (sqrt.f64 re) (sqrt.f64 (cosh.f64 im))) 2)
(neg.f64 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 -2 re)))
(sqrt.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 2))
(log.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cosh.f64 im) re))))
(cbrt.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (*.f64 re 1/2) -3)))
(expm1.f64 (log1p.f64 (*.f64 (cosh.f64 im) re)))
(exp.f64 (log.f64 (*.f64 (cosh.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) re)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) re)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (cosh.f64 im) re))) 2))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 (cosh.f64 im) re))) -1))
(exp.f64 (+.f64 (log.f64 (cosh.f64 im)) (*.f64 (log.f64 re) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (log.f64 re)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (*.f64 (log.f64 re) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1) (log.f64 (*.f64 re 1/2))))
(exp.f64 (+.f64 (log.f64 re) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (log.f64 (cosh.f64 im))))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 re 1/2)) (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1)))
(log1p.f64 (expm1.f64 (*.f64 (cosh.f64 im) re)))

simplify60.0ms (0.6%)

Algorithm
egg-herbie
Rules
1124×associate-/l*
982×fma-def
968×associate-/r*
694×unswap-sqr
618×*-commutative
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02262028
15791988
216971988
Stop Event
node limit
Counts
100 → 104
Calls
Call 1
Inputs
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 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(+.f64 0 (*.f64 (cosh.f64 im) re))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cosh.f64 im) re))) 1)
(*.f64 2 (/.f64 (cosh.f64 im) (/.f64 2 re)))
(*.f64 2 (/.f64 1 (/.f64 (/.f64 2 re) (cosh.f64 im))))
(*.f64 2 (*.f64 (cosh.f64 im) (*.f64 re 1/2)))
(*.f64 (cosh.f64 im) re)
(*.f64 (cosh.f64 im) (/.f64 2 (/.f64 2 re)))
(*.f64 (cosh.f64 im) (*.f64 2 (*.f64 re 1/2)))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 re 1/2))
(*.f64 re (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) re) 1)
(*.f64 1 (*.f64 (cosh.f64 im) re))
(*.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) 2) (cbrt.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (*.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 re 1/2)))
(*.f64 (sqrt.f64 (*.f64 (cosh.f64 im) re)) (sqrt.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 re 1/2)))
(*.f64 (*.f64 (cosh.f64 im) -2) (/.f64 1 (/.f64 -2 re)))
(*.f64 (*.f64 re 1/2) (*.f64 2 (cosh.f64 im)))
(*.f64 1/2 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 1 re)))
(*.f64 (/.f64 2 (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (/.f64 (cosh.f64 im) (cbrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 2 (sqrt.f64 (/.f64 2 re))) (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 re))) (/.f64 2 (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 (cosh.f64 im) 2) (/.f64 2 (/.f64 1 re)))
(*.f64 (/.f64 2 (/.f64 2 re)) (cosh.f64 im))
(*.f64 (/.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (/.f64 2 (cbrt.f64 (/.f64 2 re))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 2 re)) -2) (/.f64 (*.f64 2 (cosh.f64 im)) (cbrt.f64 (/.f64 2 re))))
(*.f64 (pow.f64 (/.f64 2 re) -1/2) (/.f64 (*.f64 2 (cosh.f64 im)) (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 2) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 1) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (cbrt.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (sqrt.f64 (/.f64 2 re))) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 2) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 re)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 1) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 re)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (cbrt.f64 (/.f64 2 re))))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) 1) (*.f64 re 1/2))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) -2) (neg.f64 re))
(pow.f64 (*.f64 (cosh.f64 im) re) 1)
(pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) 3)
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (cosh.f64 im) re)) 2)
(pow.f64 (/.f64 1 (*.f64 (cosh.f64 im) re)) -1)
(pow.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (*.f64 re 1/2) -3)) 1/3)
(pow.f64 (/.f64 (/.f64 1 (*.f64 (cosh.f64 im) re)) 1) -1)
(pow.f64 (*.f64 (pow.f64 (cosh.f64 im) 3) (pow.f64 re 3)) 1/3)
(pow.f64 (*.f64 (cbrt.f64 re) (cbrt.f64 (cosh.f64 im))) 3)
(pow.f64 (*.f64 (pow.f64 re 3) (pow.f64 (cosh.f64 im) 3)) 1/3)
(pow.f64 (*.f64 (sqrt.f64 re) (sqrt.f64 (cosh.f64 im))) 2)
(neg.f64 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 -2 re)))
(sqrt.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 2))
(log.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cosh.f64 im) re))))
(cbrt.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (*.f64 re 1/2) -3)))
(expm1.f64 (log1p.f64 (*.f64 (cosh.f64 im) re)))
(exp.f64 (log.f64 (*.f64 (cosh.f64 im) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) re)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) re)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (cosh.f64 im) re))) 2))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 (cosh.f64 im) re))) -1))
(exp.f64 (+.f64 (log.f64 (cosh.f64 im)) (*.f64 (log.f64 re) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (log.f64 re)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (*.f64 (log.f64 re) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1) (log.f64 (*.f64 re 1/2))))
(exp.f64 (+.f64 (log.f64 re) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (log.f64 (cosh.f64 im))))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 re 1/2)) (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1)))
(log1p.f64 (expm1.f64 (*.f64 (cosh.f64 im) re)))
Outputs
re
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 1/2 (*.f64 re (*.f64 im im))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(fma.f64 re (*.f64 1/2 (*.f64 im im)) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (+.f64 re (*.f64 1/2 (*.f64 re (*.f64 im im)))))
(fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (fma.f64 1/2 (*.f64 re (*.f64 im im)) re))
(fma.f64 re (*.f64 1/2 (*.f64 im im)) (fma.f64 re (*.f64 1/24 (pow.f64 im 4)) re))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (fma.f64 1/720 (*.f64 re (pow.f64 im 6)) (+.f64 re (*.f64 1/2 (*.f64 re (*.f64 im im))))))
(fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (fma.f64 1/720 (*.f64 re (pow.f64 im 6)) (fma.f64 1/2 (*.f64 re (*.f64 im im)) re)))
(fma.f64 re (*.f64 1/24 (pow.f64 im 4)) (fma.f64 re (*.f64 1/2 (*.f64 im im)) (fma.f64 re (*.f64 1/720 (pow.f64 im 6)) re)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(+.f64 0 (*.f64 (cosh.f64 im) re))
(*.f64 re (cosh.f64 im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))))
(*.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))) 3)
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))))
(*.f64 re (cosh.f64 im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (cosh.f64 im) re))) 1)
(*.f64 re (cosh.f64 im))
(*.f64 2 (/.f64 (cosh.f64 im) (/.f64 2 re)))
(*.f64 re (cosh.f64 im))
(*.f64 2 (/.f64 1 (/.f64 (/.f64 2 re) (cosh.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 2 (*.f64 (cosh.f64 im) (*.f64 re 1/2)))
(*.f64 re (cosh.f64 im))
(*.f64 (cosh.f64 im) re)
(*.f64 re (cosh.f64 im))
(*.f64 (cosh.f64 im) (/.f64 2 (/.f64 2 re)))
(*.f64 re (cosh.f64 im))
(*.f64 (cosh.f64 im) (*.f64 2 (*.f64 re 1/2)))
(*.f64 re (cosh.f64 im))
(*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 re 1/2))
(*.f64 re (cosh.f64 im))
(*.f64 re (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) re) 1)
(*.f64 re (cosh.f64 im))
(*.f64 1 (*.f64 (cosh.f64 im) re))
(*.f64 re (cosh.f64 im))
(*.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) 2))
(*.f64 re (cosh.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) 2) (cbrt.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 re (cosh.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (*.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 re 1/2)))
(*.f64 re (cosh.f64 im))
(*.f64 (sqrt.f64 (*.f64 (cosh.f64 im) re)) (sqrt.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 re (cosh.f64 im))
(*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (*.f64 re 1/2)))
(*.f64 re (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) -2) (/.f64 1 (/.f64 -2 re)))
(*.f64 re (cosh.f64 im))
(*.f64 (*.f64 re 1/2) (*.f64 2 (cosh.f64 im)))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 1 re)))
(*.f64 re (cosh.f64 im))
(*.f64 (/.f64 2 (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (/.f64 (cosh.f64 im) (cbrt.f64 (/.f64 2 re))))
(/.f64 (/.f64 2 (/.f64 (cbrt.f64 (/.f64 2 re)) (cosh.f64 im))) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2))
(*.f64 (/.f64 2 (sqrt.f64 (/.f64 2 re))) (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 re))) (/.f64 2 (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 2 (sqrt.f64 (/.f64 2 re))) (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 (cosh.f64 im) 2) (/.f64 2 (/.f64 1 re)))
(*.f64 re (cosh.f64 im))
(*.f64 (/.f64 2 (/.f64 2 re)) (cosh.f64 im))
(*.f64 re (cosh.f64 im))
(*.f64 (/.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (/.f64 2 (cbrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 2 (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (/.f64 (cosh.f64 im) (cbrt.f64 (/.f64 2 re))))
(/.f64 (/.f64 2 (/.f64 (cbrt.f64 (/.f64 2 re)) (cosh.f64 im))) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 2 re)) -2) (/.f64 (*.f64 2 (cosh.f64 im)) (cbrt.f64 (/.f64 2 re))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 2 re)) -2) (/.f64 2 (/.f64 (cbrt.f64 (/.f64 2 re)) (cosh.f64 im))))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 2 re)) -2) (/.f64 (cbrt.f64 (/.f64 2 re)) (*.f64 2 (cosh.f64 im))))
(*.f64 (pow.f64 (/.f64 2 re) -1/2) (/.f64 (*.f64 2 (cosh.f64 im)) (sqrt.f64 (/.f64 2 re))))
(*.f64 (pow.f64 (/.f64 2 re) -1/2) (/.f64 2 (/.f64 (sqrt.f64 (/.f64 2 re)) (cosh.f64 im))))
(/.f64 (*.f64 (*.f64 (pow.f64 (/.f64 2 re) -1/2) 2) (cosh.f64 im)) (sqrt.f64 (/.f64 2 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 2) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 re)))
(*.f64 re (cosh.f64 im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) 1) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 re)))
(*.f64 re (cosh.f64 im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (cbrt.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 (cbrt.f64 (*.f64 re (cosh.f64 im))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) 2) (sqrt.f64 (/.f64 2 re))) (/.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 2 (sqrt.f64 (/.f64 2 re))) (/.f64 (cosh.f64 im) (sqrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 2) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 1 re)))
(*.f64 re (cosh.f64 im))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) 1) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (/.f64 2 re)))
(*.f64 re (cosh.f64 im))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (/.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (cbrt.f64 (/.f64 2 re))))
(*.f64 (/.f64 2 (pow.f64 (cbrt.f64 (/.f64 2 re)) 2)) (/.f64 (cosh.f64 im) (cbrt.f64 (/.f64 2 re))))
(/.f64 (/.f64 2 (/.f64 (cbrt.f64 (/.f64 2 re)) (cosh.f64 im))) (pow.f64 (cbrt.f64 (/.f64 2 re)) 2))
(*.f64 (*.f64 (cosh.f64 im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 re (cosh.f64 im))
(*.f64 (*.f64 (cosh.f64 im) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 re (cosh.f64 im))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) 1) (*.f64 re 1/2))
(*.f64 re (cosh.f64 im))
(*.f64 (/.f64 (*.f64 2 (cosh.f64 im)) -2) (neg.f64 re))
(*.f64 re (cosh.f64 im))
(pow.f64 (*.f64 (cosh.f64 im) re) 1)
(*.f64 re (cosh.f64 im))
(pow.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re)) 3)
(*.f64 re (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 2) 1/2)
(*.f64 re (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 3) 1/3)
(*.f64 re (cosh.f64 im))
(pow.f64 (sqrt.f64 (*.f64 (cosh.f64 im) re)) 2)
(*.f64 re (cosh.f64 im))
(pow.f64 (/.f64 1 (*.f64 (cosh.f64 im) re)) -1)
(*.f64 re (cosh.f64 im))
(pow.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (*.f64 re 1/2) -3)) 1/3)
(cbrt.f64 (/.f64 (*.f64 8 (pow.f64 (cosh.f64 im) 3)) (pow.f64 (*.f64 re 1/2) -3)))
(cbrt.f64 (/.f64 8 (/.f64 (pow.f64 (*.f64 re 1/2) -3) (pow.f64 (cosh.f64 im) 3))))
(cbrt.f64 (*.f64 (/.f64 8 (pow.f64 (*.f64 re 1/2) -3)) (pow.f64 (cosh.f64 im) 3)))
(pow.f64 (/.f64 (/.f64 1 (*.f64 (cosh.f64 im) re)) 1) -1)
(*.f64 re (cosh.f64 im))
(pow.f64 (*.f64 (pow.f64 (cosh.f64 im) 3) (pow.f64 re 3)) 1/3)
(*.f64 re (cosh.f64 im))
(pow.f64 (*.f64 (cbrt.f64 re) (cbrt.f64 (cosh.f64 im))) 3)
(*.f64 re (cosh.f64 im))
(pow.f64 (*.f64 (pow.f64 re 3) (pow.f64 (cosh.f64 im) 3)) 1/3)
(*.f64 re (cosh.f64 im))
(pow.f64 (*.f64 (sqrt.f64 re) (sqrt.f64 (cosh.f64 im))) 2)
(*.f64 re (cosh.f64 im))
(neg.f64 (/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 -2 re)))
(*.f64 re (cosh.f64 im))
(sqrt.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 2))
(*.f64 re (cosh.f64 im))
(log.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))
(*.f64 re (cosh.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (cosh.f64 im) re))))
(*.f64 re (cosh.f64 im))
(cbrt.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 3))
(*.f64 re (cosh.f64 im))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 2 (cosh.f64 im)) 3) (pow.f64 (*.f64 re 1/2) -3)))
(cbrt.f64 (/.f64 (*.f64 8 (pow.f64 (cosh.f64 im) 3)) (pow.f64 (*.f64 re 1/2) -3)))
(cbrt.f64 (/.f64 8 (/.f64 (pow.f64 (*.f64 re 1/2) -3) (pow.f64 (cosh.f64 im) 3))))
(cbrt.f64 (*.f64 (/.f64 8 (pow.f64 (*.f64 re 1/2) -3)) (pow.f64 (cosh.f64 im) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 re (cosh.f64 im))
(exp.f64 (log.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 re (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) re)) 1))
(*.f64 re (cosh.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (cosh.f64 im) re)) 1) 1))
(*.f64 re (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cosh.f64 im) re))) 3))
(*.f64 re (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (cosh.f64 im) re) 3)) 1/3))
(*.f64 re (cosh.f64 im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (cosh.f64 im) re))) 2))
(*.f64 re (cosh.f64 im))
(exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 (cosh.f64 im) re))) -1))
(*.f64 re (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (cosh.f64 im)) (*.f64 (log.f64 re) 1)))
(*.f64 re (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (log.f64 re)))
(*.f64 re (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (cosh.f64 im)) 1) (*.f64 (log.f64 re) 1)))
(*.f64 re (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1) (log.f64 (*.f64 re 1/2))))
(*.f64 re (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 re) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(*.f64 re (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (log.f64 (cosh.f64 im))))
(*.f64 re (cosh.f64 im))
(exp.f64 (+.f64 (*.f64 (log.f64 re) 1) (*.f64 (log.f64 (cosh.f64 im)) 1)))
(*.f64 re (cosh.f64 im))
(exp.f64 (+.f64 (log.f64 (*.f64 re 1/2)) (*.f64 (log.f64 (*.f64 2 (cosh.f64 im))) 1)))
(*.f64 re (cosh.f64 im))
(log1p.f64 (expm1.f64 (*.f64 (cosh.f64 im) re)))
(*.f64 re (cosh.f64 im))

eval43.0ms (0.4%)

Compiler

Compiled 2090 to 1202 computations (42.5% saved)

prune68.0ms (0.7%)

Pruning

12 alts after pruning (2 fresh and 10 done)

PrunedKeptTotal
New1861187
Fresh011
Picked011
Done099
Total18612198
Accurracy
100.0%
Counts
198 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
56.7%
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 re))
48.7%
(-.f64 (+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
4.3%
(-.f64 1 1)
88.8%
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (*.f64 im im))))
98.8%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
100.0%
(*.f64 (sin.f64 re) (cosh.f64 im))
56.8%
(*.f64 (cosh.f64 im) re)
56.1%
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
4.9%
(*.f64 im (*.f64 1/2 (*.f64 im re)))
4.9%
(*.f64 1/2 (*.f64 re (*.f64 im im)))
98.5%
(sin.f64 re)
56.1%
re
Compiler

Compiled 99 to 73 computations (26.3% saved)

regimes60.0ms (0.6%)

Counts
19 → 1
Calls
Call 1
Inputs
re
(-.f64 1 1)
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(sin.f64 re)
(*.f64 (cosh.f64 im) re)
(*.f64 1/2 (*.f64 (*.f64 2 (cosh.f64 im)) re))
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 re (*.f64 im im))))
(*.f64 (sin.f64 re) (cosh.f64 im))
(-.f64 (+.f64 1 (*.f64 (sin.f64 re) (cosh.f64 im))) 1)
(/.f64 (*.f64 2 (cosh.f64 im)) (/.f64 2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 2 (cosh.f64 im))))) 2)
Outputs
(*.f64 (sin.f64 re) (cosh.f64 im))
Calls

6 calls:

12.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
11.0ms
(sin.f64 re)
11.0ms
(*.f64 1/2 (sin.f64 re))
10.0ms
re
10.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 190 to 110 computations (42.1% saved)

regimes32.0ms (0.3%)

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

4 calls:

8.0ms
re
8.0ms
(sin.f64 re)
7.0ms
im
7.0ms
(*.f64 1/2 (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 87 to 51 computations (41.4% saved)

regimes21.0ms (0.2%)

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

3 calls:

7.0ms
re
7.0ms
(sin.f64 re)
6.0ms
im
Results
AccuracySegmentsBranch
98.5%1re
98.5%1im
98.5%1(sin.f64 re)
Compiler

Compiled 61 to 38 computations (37.7% saved)

regimes11.0ms (0.1%)

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

2 calls:

5.0ms
im
4.0ms
re
Results
AccuracySegmentsBranch
56.1%1re
56.1%1im
Compiler

Compiled 35 to 22 computations (37.1% saved)

regimes9.0ms (0.1%)

Accuracy

Total -33.4b remaining (-118.8%)

Threshold costs -33.4b (-118.8%)

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

2 calls:

5.0ms
im
4.0ms
re
Results
AccuracySegmentsBranch
56.1%1re
56.1%1im
Compiler

Compiled 26 to 17 computations (34.6% saved)

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Rules
10×*-commutative
+-commutative
1-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01875
12775
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(sin.f64 re)
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
re
Outputs
(*.f64 (sin.f64 re) (cosh.f64 im))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (*.f64 im im)))
(*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 2 (*.f64 im im)))
(sin.f64 re)
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
re
Compiler

Compiled 37 to 27 computations (27% saved)

soundness786.0ms (8.2%)

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

Useful iterations: 3 (0.0ms)

IterNodesCost
01435
13035
27435
314133
418933
525633
643833
7110433
8315833
9354033
10403133
11567033
12665033
01267
124067
2282555
02973396
17232874
228562726
01435
13035
27435
314133
418933
525633
643833
7110433
8315833
9354033
10403133
11567033
12665033
01141482
13251390
210251390
351771390
02655225
16774823
220554667
374724615
01141482
13251390
210251390
351771390
Stop Event
node limit
node limit
node limit
node limit
node limit
node limit
node limit
Compiler

Compiled 462 to 283 computations (38.7% saved)

end32.0ms (0.3%)

Compiler

Compiled 29 to 16 computations (44.8% saved)

Profiling

Loading profile data...