Details

Time bar (total: 9.1s)

analyze186.0ms (2%)

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.0s (44.4%)

Results
1.2s2008×body1024valid
1.0s1990×body1024infinite
846.0ms5200×body256valid
351.0ms1041×body512valid
301.0ms1600×body256infinite
293.0ms997×body512infinite
6.0msbody2048valid
Bogosity

preprocess80.0ms (0.9%)

Algorithm
egg-herbie
Rules
1508×distribute-lft-neg-out
1104×times-frac
1044×associate-*r*
886×associate-*r/
864×unswap-sqr
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02170
15070
213070
323466
439666
558466
696566
7245666
8484966
9537666
10693066
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 (*.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 1/2 (*.f64 (sin.f64 im) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)))
(*.f64 (sin.f64 im) (fma.f64 1/2 (exp.f64 re) (/.f64 1/2 (exp.f64 re))))
Compiler

Compiled 16 to 13 computations (18.8% saved)

simplify89.0ms (1%)

Algorithm
egg-herbie
Rules
1680×unswap-sqr
1028×associate-/r*
996×fma-def
676×*-commutative
576×associate-/l*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01435
12935
27035
312333
420533
530233
649733
7125533
8318633
9354133
10397233
11588733
12689833
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 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))))

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
Error
0.0b
Counts
5 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.0b
(*.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 error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
0.0b
(/.f64 1/2 (exp.f64 im))
Compiler

Compiled 32 to 16 computations (50% saved)

series6.0ms (0.1%)

Counts
2 → 28
Calls

9 calls:

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

rewrite70.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1022×*-commutative
726×unswap-sqr
610×swap-sqr
466×associate-*r/
430×sqr-pow
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01244
124044
2282644
Stop Event
node limit
Counts
2 → 60
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))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (exp.f64 im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (exp.f64 im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (exp.f64 (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (exp.f64 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1/2 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (/.f64 1/2 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2) (cbrt.f64 (/.f64 1/2 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 im)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (/.f64 -1 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (sqrt.f64 (exp.f64 im))) (/.f64 1 (sqrt.f64 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 1 (cbrt.f64 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 1/2 (sqrt.f64 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 1/2 (cbrt.f64 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (*.f64 (exp.f64 im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (exp.f64 im)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im)))) (cbrt.f64 (/.f64 1/2 (exp.f64 im)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im)))) (cbrt.f64 (/.f64 1/2 (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))))) (*.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2)) (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2)) (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 3/2) (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/6) (pow.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (exp.f64 im) 2) -1/2) (pow.f64 (*.f64 (exp.f64 im) 2) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/2 (exp.f64 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (exp.f64 im) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1/2 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1/2 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 1/2) im))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1/2 (exp.f64 im))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))) (*.f64 1 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 1) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 -1/4 (pow.f64 (exp.f64 im) -2)))) (*.f64 1/2 (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) (pow.f64 (*.f64 1/2 (exp.f64 im)) 3))) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/2 (exp.f64 im)) (-.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 -1/4 (pow.f64 (exp.f64 im) -2))) (sin.f64 re)) (*.f64 1/2 (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) (pow.f64 (*.f64 1/2 (exp.f64 im)) 3)) (sin.f64 re)) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/2 (exp.f64 im)) (-.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.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 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))) 1) (+.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 3) (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))) (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) 3) (pow.f64 (sin.f64 re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))))))

simplify68.0ms (0.7%)

Algorithm
egg-herbie
Rules
1778×distribute-lft-in
1754×distribute-rgt-in
922×associate-*r/
740×associate-*l/
586×associate-*r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02253294
16573012
228003010
Stop Event
node limit
Counts
88 → 119
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))))
(+.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (exp.f64 im)))) -1)
(-.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 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (/.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 (exp.f64 (neg.f64 im)) 1/2)
(*.f64 -1/2 (/.f64 -1 (exp.f64 im)))
(*.f64 (/.f64 1/2 (sqrt.f64 (exp.f64 im))) (/.f64 1 (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 1 (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 1/2 (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 1/2 (cbrt.f64 (exp.f64 im))))
(*.f64 -1 (/.f64 1 (*.f64 (exp.f64 im) -2)))
(*.f64 (/.f64 -1 (exp.f64 im)) -1/2)
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im)))) (cbrt.f64 (/.f64 1/2 (exp.f64 im)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im)))) (cbrt.f64 (/.f64 1/2 (exp.f64 im)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))))) (*.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2)) (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2)) (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 3/2) (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 3/2))
(*.f64 (pow.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/6) (pow.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/6))
(*.f64 (pow.f64 (*.f64 (exp.f64 im) 2) -1/2) (pow.f64 (*.f64 (exp.f64 im) 2) -1/2))
(pow.f64 (/.f64 1/2 (exp.f64 im)) 1)
(pow.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) 2)
(pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 3)
(pow.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/3)
(pow.f64 (*.f64 (exp.f64 im) 2) -1)
(sqrt.f64 (pow.f64 (/.f64 1/2 (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))
(log1p.f64 (expm1.f64 (/.f64 1/2 (exp.f64 im))))
(+.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) -1)
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))
(+.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))) (*.f64 1 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 1) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) 1)
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 -1/4 (pow.f64 (exp.f64 im) -2)))) (*.f64 1/2 (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) (pow.f64 (*.f64 1/2 (exp.f64 im)) 3))) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/2 (exp.f64 im)) (-.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im))))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 -1/4 (pow.f64 (exp.f64 im) -2))) (sin.f64 re)) (*.f64 1/2 (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) (pow.f64 (*.f64 1/2 (exp.f64 im)) 3)) (sin.f64 re)) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/2 (exp.f64 im)) (-.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im))))))
(/.f64 (-.f64 (*.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 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))) 1) (+.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) 1))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 3) (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))) (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))))))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 1)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))) 2)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.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 (*.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 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 1/120 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 5)))))
(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)))))
(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/120 (pow.f64 re 5)) (*.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/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 1/120 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (pow.f64 re 5))))))
(+.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 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.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 (*.f64 im 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 (*.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 (*.f64 im im) (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/24))))
(+.f64 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (sin.f64 re)) (*.f64 (sin.f64 re) (*.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 (*.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 (*.f64 im 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 (fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (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 (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))
(+.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (exp.f64 im)))) -1)
(/.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 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (/.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 (exp.f64 (neg.f64 im)) 1/2)
(/.f64 1/2 (exp.f64 im))
(*.f64 -1/2 (/.f64 -1 (exp.f64 im)))
(/.f64 1/2 (exp.f64 im))
(*.f64 (/.f64 1/2 (sqrt.f64 (exp.f64 im))) (/.f64 1 (sqrt.f64 (exp.f64 im))))
(/.f64 (/.f64 1/2 (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)))
(/.f64 1/2 (*.f64 (sqrt.f64 (exp.f64 im)) (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 1 (cbrt.f64 (exp.f64 im))))
(/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (exp.f64 im)))
(/.f64 1/2 (*.f64 (cbrt.f64 (exp.f64 im)) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 1/2 (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1/2 (sqrt.f64 (exp.f64 im))) (/.f64 1 (sqrt.f64 (exp.f64 im))))
(/.f64 (/.f64 1/2 (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)))
(/.f64 1/2 (*.f64 (sqrt.f64 (exp.f64 im)) (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 1/2 (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 1 (cbrt.f64 (exp.f64 im))))
(/.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (exp.f64 im)))
(/.f64 1/2 (*.f64 (cbrt.f64 (exp.f64 im)) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)))
(*.f64 -1 (/.f64 1 (*.f64 (exp.f64 im) -2)))
(/.f64 1/2 (exp.f64 im))
(*.f64 (/.f64 -1 (exp.f64 im)) -1/2)
(/.f64 1/2 (exp.f64 im))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im)))) (cbrt.f64 (/.f64 1/2 (exp.f64 im)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im)))) (cbrt.f64 (/.f64 1/2 (exp.f64 im)))))
(/.f64 1/2 (exp.f64 im))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2)) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2)))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))))) (*.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))))))
(/.f64 1/2 (exp.f64 im))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2)) (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2)) (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2)) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2)))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 2) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im)))) (cbrt.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 3/2) (pow.f64 (cbrt.f64 (/.f64 1/2 (exp.f64 im))) 3/2))
(/.f64 1/2 (exp.f64 im))
(*.f64 (pow.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/6) (pow.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/6))
(/.f64 1/2 (exp.f64 im))
(*.f64 (pow.f64 (*.f64 (exp.f64 im) 2) -1/2) (pow.f64 (*.f64 (exp.f64 im) 2) -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 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) 2)
(/.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 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) 1/3)
(/.f64 1/2 (exp.f64 im))
(pow.f64 (*.f64 (exp.f64 im) 2) -1)
(/.f64 1/2 (exp.f64 im))
(sqrt.f64 (pow.f64 (/.f64 1/2 (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))
(log1p.f64 (expm1.f64 (/.f64 1/2 (exp.f64 im))))
(/.f64 1/2 (exp.f64 im))
(+.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) -1)
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (/.f64 (*.f64 1/2 (sin.f64 re)) (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 (sin.f64 re)) (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 1 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))) (*.f64 1 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 1) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 1))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) 1)
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 -1/4 (pow.f64 (exp.f64 im) -2)))) (*.f64 1/2 (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (exp.f64 im) 2) 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) -2))) 1/2) (/.f64 (sin.f64 re) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (*.f64 -1/4 (pow.f64 (exp.f64 im) -2))) 1/2) (/.f64 (sin.f64 re) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (/.f64 (sin.f64 re) 1/2) (/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (*.f64 -1/4 (pow.f64 (exp.f64 im) -2))) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) (pow.f64 (*.f64 1/2 (exp.f64 im)) 3))) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/2 (exp.f64 im)) (-.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im))))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))) (fma.f64 (pow.f64 (exp.f64 im) 2) 1/4 (*.f64 (/.f64 1/2 (exp.f64 im)) (+.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 -1/2 (exp.f64 im))))))
(*.f64 (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (*.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (sin.f64 re))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 -1/4 (pow.f64 (exp.f64 im) -2))) (sin.f64 re)) (*.f64 1/2 (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (exp.f64 im) 2) 1/4 (*.f64 -1/4 (pow.f64 (exp.f64 im) -2))) 1/2) (/.f64 (sin.f64 re) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (*.f64 -1/4 (pow.f64 (exp.f64 im) -2))) 1/2) (/.f64 (sin.f64 re) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (/.f64 (sin.f64 re) 1/2) (/.f64 (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (*.f64 -1/4 (pow.f64 (exp.f64 im) -2))) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) (pow.f64 (*.f64 1/2 (exp.f64 im)) 3)) (sin.f64 re)) (+.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/2 (exp.f64 im)) (-.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (exp.f64 im))))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 (/.f64 1/2 (exp.f64 im)) 3) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))) (fma.f64 (pow.f64 (exp.f64 im) 2) 1/4 (*.f64 (/.f64 1/2 (exp.f64 im)) (+.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 -1/2 (exp.f64 im))))))
(*.f64 (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (*.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (sin.f64 re))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 (/.f64 1/2 (exp.f64 im)) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(/.f64 (-.f64 (*.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 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))))
(/.f64 (*.f64 (fma.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re)))) (-.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))) (-.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re)))))
(/.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re)) (/.f64 (fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (/.f64 -1/2 (/.f64 (exp.f64 im) (sin.f64 re)))) (fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (/.f64 -1/2 (/.f64 (exp.f64 im) (sin.f64 re))))))
(/.f64 (fma.f64 (sin.f64 re) (*.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) (sin.f64 re))) (/.f64 (/.f64 -1/4 (/.f64 (exp.f64 im) (sin.f64 re))) (/.f64 (exp.f64 im) (sin.f64 re)))) (fma.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re) (/.f64 -1/2 (/.f64 (exp.f64 im) (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))) 1) (+.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))) 1))
(/.f64 (*.f64 (+.f64 1 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.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 1 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))))))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))))) (+.f64 1 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) 3) (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im)))) (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (exp.f64 im))) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re)) 3) (pow.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) 3)) (fma.f64 (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re)) (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re)) (*.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (-.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (*.f64 1/2 (exp.f64 im)) (sin.f64 re))))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 3) (pow.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) 3)) (fma.f64 (sin.f64 re) (*.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) (sin.f64 re))) (*.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (+.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 -1/2 (exp.f64 im)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3) (pow.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) 3)) (fma.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (-.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/4 (*.f64 (pow.f64 (exp.f64 im) 2) (sin.f64 re))))))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 1)
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))) 2)
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))) 3)
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 3) 1/3)
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 2))
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re)) 2))
(fabs.f64 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re)))
(log.f64 (pow.f64 (exp.f64 (sin.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))) (sin.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.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))) (sin.f64 re))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) 3))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) 3) (pow.f64 (sin.f64 re) 3)))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (sin.f64 re))
(expm1.f64 (log1p.f64 (*.f64 (sin.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))) (sin.f64 re))
(exp.f64 (log.f64 (*.f64 (sin.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))) (sin.f64 re))
(log1p.f64 (expm1.f64 (*.f64 (sin.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))) (sin.f64 re))

localize14.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.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)

series4.0ms (0%)

Counts
1 → 24
Calls

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

rewrite78.0ms (0.9%)

Algorithm
egg-rewrite-iter-limit
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
01335
127335
2421135
01335
Stop Event
iter limit
unsound
Counts
1 → 8
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))))

simplify80.0ms (0.9%)

Algorithm
egg-herbie
Rules
1160×associate-*r/
1150×associate-+r+
1072×associate-+l+
1056×associate-*r*
948×associate-*l/
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0831368
12401288
27851166
333591156
472001156
Stop Event
node limit
Counts
32 → 44
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)))))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))
(+.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 1)
(log.f64 (exp.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(cbrt.f64 (*.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
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 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 -1/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 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.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 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (fma.f64 1/2 re (*.f64 1/240 (pow.f64 re 5)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (fma.f64 1/2 re (*.f64 -1/12 (pow.f64 re 3)))))
(+.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 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (fma.f64 1/2 re (*.f64 1/240 (pow.f64 re 5))) (fma.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (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 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (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 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 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 1 (+.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 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 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/720 (pow.f64 im 6)))) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (sin.f64 re)))
(+.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 (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 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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.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 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.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 (exp.f64 (neg.f64 im)) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))
(*.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))))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 1)
(*.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))))
(log.f64 (exp.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.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))))
(cbrt.f64 (*.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.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))))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.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))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.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))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.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))))

eval84.0ms (0.9%)

Compiler

Compiled 3572 to 1909 computations (46.6% saved)

prune40.0ms (0.4%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1585163
Fresh000
Picked011
Done101
Total1596165
Error
0b
Counts
165 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
0.3b
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
0.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.0b
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
0.2b
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
0.5b
(sin.f64 re)
0.1b
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
Compiler

Compiled 143 to 110 computations (23.1% saved)

localize19.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
0.0b
(/.f64 1 (exp.f64 im))
Compiler

Compiled 49 to 29 computations (40.8% saved)

series3.0ms (0%)

Counts
2 → 12
Calls

9 calls:

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

rewrite84.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1404×associate-*r/
1142×associate-*l/
688×distribute-lft-in
446×associate-/r*
300×add-sqr-sqrt
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01444
129742
2377742
Stop Event
node limit
Counts
2 → 97
Calls
Call 1
Inputs
(/.f64 1 (exp.f64 im))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (exp.f64 (neg.f64 im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (exp.f64 (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 im) -1/2) (pow.f64 (exp.f64 im) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (neg.f64 im))) (cbrt.f64 (pow.f64 (exp.f64 im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (exp.f64 im) -2)) (cbrt.f64 (exp.f64 (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 -1 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (exp.f64 im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) -1) (pow.f64 (sqrt.f64 (exp.f64 im)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) -1) (pow.f64 (cbrt.f64 (exp.f64 im)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (neg.f64 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 im) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 (neg.f64 im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (exp.f64 im) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (exp.f64 (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (exp.f64 (neg.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (exp.f64 (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 im -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 im) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (exp.f64 (neg.f64 im))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 1 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 1) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 re) (/.f64 1 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (/.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))) (-.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3)) (+.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re))) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))) (-.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3))) (+.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (/.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (-.f64 (*.f64 (exp.f64 im) 1/2) (/.f64 1/2 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (neg.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (neg.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (neg.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (neg.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (pow.f64 (exp.f64 im) -2) (pow.f64 (exp.f64 im) 2))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 (pow.f64 (exp.f64 im) 3) (pow.f64 (exp.f64 (neg.f64 im)) 3))) (+.f64 (pow.f64 (exp.f64 im) -2) (-.f64 (pow.f64 (exp.f64 im) 2) (/.f64 (exp.f64 im) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) (sqrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) (sqrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 2))) (cbrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 2))) (cbrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (/.f64 1/4 (pow.f64 (exp.f64 im) 2))) (sin.f64 re)) (-.f64 (*.f64 (exp.f64 im) 1/2) (/.f64 1/2 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (sin.f64 re)) (neg.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (sin.f64 re)) (neg.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))) 1) (-.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3)) 1) (+.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (*.f64 (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) (sin.f64 re))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (*.f64 (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) (sin.f64 re))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) 1/2) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (*.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (+.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2)))) (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (*.f64 (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) 1/2) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (*.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (+.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2)))) (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) (*.f64 (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 3) (pow.f64 (sin.f64 re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 re) (/.f64 1/2 (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))))))

simplify101.0ms (1.1%)

Algorithm
egg-herbie
Rules
1268×distribute-lft-in
1102×associate-/r*
1002×associate-*r/
790×associate-/l/
772×associate-*l/
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03177459
19006545
237296447
Stop Event
node limit
Counts
109 → 175
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 -1 im))
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1 im)))
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 im 3)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1 im))))
(*.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))))))))
(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 (exp.f64 (log1p.f64 (exp.f64 (neg.f64 im)))) 1)
(*.f64 1 (exp.f64 (neg.f64 im)))
(*.f64 (exp.f64 (neg.f64 im)) 1)
(*.f64 (pow.f64 (exp.f64 im) -1/2) (pow.f64 (exp.f64 im) -1/2))
(*.f64 (cbrt.f64 (exp.f64 (neg.f64 im))) (cbrt.f64 (pow.f64 (exp.f64 im) -2)))
(*.f64 (cbrt.f64 (pow.f64 (exp.f64 im) -2)) (cbrt.f64 (exp.f64 (neg.f64 im))))
(*.f64 -1 (/.f64 -1 (exp.f64 im)))
(*.f64 (/.f64 -1 (exp.f64 im)) -1)
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) -1) (pow.f64 (sqrt.f64 (exp.f64 im)) -1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) -1) (pow.f64 (cbrt.f64 (exp.f64 im)) -1))
(pow.f64 (exp.f64 im) -1)
(pow.f64 (exp.f64 (neg.f64 im)) 1)
(pow.f64 (pow.f64 (exp.f64 im) -1/2) 2)
(pow.f64 (cbrt.f64 (exp.f64 (neg.f64 im))) 3)
(pow.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) 1/3)
(sqrt.f64 (pow.f64 (exp.f64 im) -2))
(log.f64 (exp.f64 (exp.f64 (neg.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (exp.f64 (neg.f64 im)))))
(cbrt.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3))
(expm1.f64 (log1p.f64 (exp.f64 (neg.f64 im))))
(exp.f64 (neg.f64 im))
(exp.f64 (*.f64 im -1))
(exp.f64 (*.f64 (neg.f64 im) 1))
(log1p.f64 (expm1.f64 (exp.f64 (neg.f64 im))))
(+.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))
(+.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 1))
(+.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 1 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 1)))
(+.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))
(+.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 1) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))) 1)
(/.f64 (sin.f64 re) (/.f64 1 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))
(/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (/.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (sin.f64 re)))
(/.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))) (-.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3)) (+.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 1 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (*.f64 1 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re))) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 1 (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))) (-.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3))) (+.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (/.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (-.f64 (*.f64 (exp.f64 im) 1/2) (/.f64 1/2 (exp.f64 im))))
(/.f64 (*.f64 (sin.f64 re) (neg.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (neg.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (sin.f64 re) (neg.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (neg.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (pow.f64 (exp.f64 im) -2) (pow.f64 (exp.f64 im) 2))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 (pow.f64 (exp.f64 im) 3) (pow.f64 (exp.f64 (neg.f64 im)) 3))) (+.f64 (pow.f64 (exp.f64 im) -2) (-.f64 (pow.f64 (exp.f64 im) 2) (/.f64 (exp.f64 im) (exp.f64 im)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) (sqrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) (sqrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 2))) (cbrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 2))) (cbrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (/.f64 1/4 (pow.f64 (exp.f64 im) 2))) (sin.f64 re)) (-.f64 (*.f64 (exp.f64 im) 1/2) (/.f64 1/2 (exp.f64 im))))
(/.f64 (*.f64 (neg.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (sin.f64 re)) (neg.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (neg.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (sin.f64 re)) (neg.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (*.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))) 1) (-.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3)) 1) (+.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (*.f64 (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) (sin.f64 re))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (*.f64 (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) (sin.f64 re))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) 1/2) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (*.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (+.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2)))) (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (*.f64 (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) 1/2) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (*.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (+.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2)))) (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2))))
(/.f64 (/.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (/.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (/.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) (*.f64 (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 1)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) 2)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))))
(fma.f64 (sin.f64 re) (/.f64 1/2 (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (/.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))
Outputs
1
(+.f64 1 (*.f64 -1 im))
(+.f64 1 (neg.f64 im))
(-.f64 1 im)
(+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1 im)))
(+.f64 1 (fma.f64 1/2 (*.f64 im im) (neg.f64 im)))
(+.f64 1 (-.f64 (*.f64 1/2 (*.f64 im im)) im))
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 im 3)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1 im))))
(+.f64 1 (fma.f64 -1/6 (pow.f64 im 3) (fma.f64 1/2 (*.f64 im im) (neg.f64 im))))
(+.f64 (fma.f64 -1/6 (pow.f64 im 3) (*.f64 1/2 (*.f64 im im))) (-.f64 1 im))
(*.f64 re (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 re (fma.f64 (exp.f64 im) 1/2 (/.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 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (*.f64 (*.f64 -1/6 (pow.f64 re 3)) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))
(*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.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 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) (*.f64 (*.f64 1/120 (pow.f64 re 5)) (fma.f64 (exp.f64 im) 1/2 (/.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)))))
(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/120 (pow.f64 re 5)) (*.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/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 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) (fma.f64 -1/5040 (*.f64 (pow.f64 re 7) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) (fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) (*.f64 (*.f64 1/120 (pow.f64 re 5)) (fma.f64 (exp.f64 im) 1/2 (/.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 (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))) (*.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) (+.f64 re (*.f64 -1/5040 (pow.f64 re 7)))))
(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 (*.f64 im im) (sin.f64 re)) (*.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 (sin.f64 re) (*.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 (*.f64 im im) (sin.f64 re)) (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 (*.f64 (sin.f64 re) 1/24) (pow.f64 im 4) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im (*.f64 im (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 (exp.f64 (log1p.f64 (exp.f64 (neg.f64 im)))) 1)
(exp.f64 (neg.f64 im))
(*.f64 1 (exp.f64 (neg.f64 im)))
(exp.f64 (neg.f64 im))
(*.f64 (exp.f64 (neg.f64 im)) 1)
(exp.f64 (neg.f64 im))
(*.f64 (pow.f64 (exp.f64 im) -1/2) (pow.f64 (exp.f64 im) -1/2))
(exp.f64 (neg.f64 im))
(*.f64 (cbrt.f64 (exp.f64 (neg.f64 im))) (cbrt.f64 (pow.f64 (exp.f64 im) -2)))
(*.f64 (cbrt.f64 (pow.f64 (exp.f64 im) -2)) (cbrt.f64 (exp.f64 (neg.f64 im))))
(*.f64 (cbrt.f64 (exp.f64 (neg.f64 im))) (cbrt.f64 (pow.f64 (exp.f64 im) -2)))
(*.f64 -1 (/.f64 -1 (exp.f64 im)))
(exp.f64 (neg.f64 im))
(*.f64 (/.f64 -1 (exp.f64 im)) -1)
(exp.f64 (neg.f64 im))
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) -1) (pow.f64 (sqrt.f64 (exp.f64 im)) -1))
(pow.f64 (sqrt.f64 (exp.f64 im)) -2)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) -1) (pow.f64 (cbrt.f64 (exp.f64 im)) -1))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 1 (cbrt.f64 (exp.f64 im))))
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (exp.f64 im)))
(pow.f64 (exp.f64 im) -1)
(exp.f64 (neg.f64 im))
(pow.f64 (exp.f64 (neg.f64 im)) 1)
(exp.f64 (neg.f64 im))
(pow.f64 (pow.f64 (exp.f64 im) -1/2) 2)
(exp.f64 (neg.f64 im))
(pow.f64 (cbrt.f64 (exp.f64 (neg.f64 im))) 3)
(exp.f64 (neg.f64 im))
(pow.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) 1/3)
(exp.f64 (neg.f64 im))
(sqrt.f64 (pow.f64 (exp.f64 im) -2))
(fabs.f64 (exp.f64 (neg.f64 im)))
(log.f64 (exp.f64 (exp.f64 (neg.f64 im))))
(exp.f64 (neg.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (exp.f64 (neg.f64 im)))))
(exp.f64 (neg.f64 im))
(cbrt.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3))
(exp.f64 (neg.f64 im))
(expm1.f64 (log1p.f64 (exp.f64 (neg.f64 im))))
(exp.f64 (neg.f64 im))
(exp.f64 (neg.f64 im))
(exp.f64 (*.f64 im -1))
(exp.f64 (neg.f64 im))
(exp.f64 (*.f64 (neg.f64 im) 1))
(exp.f64 (neg.f64 im))
(log1p.f64 (expm1.f64 (exp.f64 (neg.f64 im))))
(exp.f64 (neg.f64 im))
(+.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(+.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 1))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(+.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 1 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 1)))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(+.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 1) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))) 1)
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(/.f64 (sin.f64 re) (/.f64 1 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (/.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (sin.f64 re)))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))) (sin.f64 re)))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))) (-.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re)))) (*.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re))))) (-.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (-.f64 (/.f64 (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 (exp.f64 im) 2) (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))))) (-.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))))
(/.f64 (-.f64 (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 (+.f64 im im)) (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))))) (-.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3)) (+.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3)) (fma.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (-.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re)))))))
(/.f64 (+.f64 (/.f64 1/8 (pow.f64 (/.f64 (exp.f64 im) (sin.f64 re)) 3)) (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 3)) (fma.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 -1/2 (/.f64 (exp.f64 im) (sin.f64 re)))) (/.f64 (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 im)) (exp.f64 im))))
(/.f64 (+.f64 (pow.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) 3) (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 3)) (fma.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (*.f64 (/.f64 -1/2 (exp.f64 im)) (sin.f64 re))) (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (*.f64 1 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 1 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re))) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (*.f64 1 (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))) (-.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re)))) (*.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re))))) (-.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (-.f64 (/.f64 (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 (exp.f64 im) 2) (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))))) (-.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))))
(/.f64 (-.f64 (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 (+.f64 im im)) (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))))) (-.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3))) (+.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3)) (fma.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (-.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re)))))))
(/.f64 (+.f64 (/.f64 1/8 (pow.f64 (/.f64 (exp.f64 im) (sin.f64 re)) 3)) (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 3)) (fma.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 -1/2 (/.f64 (exp.f64 im) (sin.f64 re)))) (/.f64 (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 im)) (exp.f64 im))))
(/.f64 (+.f64 (pow.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) 3) (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 3)) (fma.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (*.f64 (/.f64 -1/2 (exp.f64 im)) (sin.f64 re))) (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (/.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (-.f64 (*.f64 (exp.f64 im) 1/2) (/.f64 1/2 (exp.f64 im))))
(/.f64 (sin.f64 re) (/.f64 (-.f64 (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (exp.f64 im))) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (/.f64 1/4 (pow.f64 (exp.f64 im) 2)))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (/.f64 -1/4 (pow.f64 (exp.f64 im) 2)))) (fma.f64 1/2 (exp.f64 im) (/.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im))))) (fma.f64 1/2 (exp.f64 im) (/.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (sin.f64 re) (neg.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (neg.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 (sin.f64 re) (neg.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (neg.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (-.f64 (pow.f64 (exp.f64 im) -2) (pow.f64 (exp.f64 im) 2))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (pow.f64 (exp.f64 im) -2) (pow.f64 (exp.f64 im) 2))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (-.f64 (pow.f64 (exp.f64 im) -2) (pow.f64 (exp.f64 im) 2)))
(*.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 1/2 (-.f64 (pow.f64 (exp.f64 im) -2) (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 (pow.f64 (exp.f64 im) 3) (pow.f64 (exp.f64 (neg.f64 im)) 3))) (+.f64 (pow.f64 (exp.f64 im) -2) (-.f64 (pow.f64 (exp.f64 im) 2) (/.f64 (exp.f64 im) (exp.f64 im)))))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -2) (+.f64 (pow.f64 (exp.f64 im) 2) -1)) (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) (pow.f64 (exp.f64 im) 3))))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 (exp.f64 im) -2) (fma.f64 (exp.f64 im) (exp.f64 im) -1))) (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) (pow.f64 (exp.f64 im) 3)))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 -1 (+.f64 (pow.f64 (exp.f64 im) -2) (exp.f64 (+.f64 im im))))) (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) (pow.f64 (exp.f64 im) 3)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) (sqrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) (/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sqrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))))))
(*.f64 (/.f64 (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))
(/.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) (/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 (+.f64 im im)) -1/4))))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) (sqrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (sqrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))) (/.f64 (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im)))))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3)))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4)))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))) (sqrt.f64 (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4)))) (sqrt.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 2))) (cbrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 2))) (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))))))
(/.f64 (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4))) (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) 2)))))
(*.f64 (/.f64 (sin.f64 re) (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 (+.f64 im im)) -1/4))))) (cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) 2)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 2))) (cbrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 2))) (/.f64 (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im)))))) (cbrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3))))))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) 2))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4)))) (cbrt.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (cbrt.f64 (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4)))) (*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))) 2)) (cbrt.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (/.f64 1/4 (pow.f64 (exp.f64 im) 2))) (sin.f64 re)) (-.f64 (*.f64 (exp.f64 im) 1/2) (/.f64 1/2 (exp.f64 im))))
(/.f64 (sin.f64 re) (/.f64 (-.f64 (*.f64 1/2 (exp.f64 im)) (/.f64 1/2 (exp.f64 im))) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (/.f64 1/4 (pow.f64 (exp.f64 im) 2)))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) (/.f64 -1/4 (pow.f64 (exp.f64 im) 2)))) (fma.f64 1/2 (exp.f64 im) (/.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im))))) (fma.f64 1/2 (exp.f64 im) (/.f64 -1/2 (exp.f64 im))))
(/.f64 (*.f64 (neg.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (sin.f64 re)) (neg.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 (neg.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (sin.f64 re)) (neg.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (*.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (*.f64 (-.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))) 1) (-.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re)))) (*.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re))))) (-.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (-.f64 (/.f64 (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 im)) (exp.f64 im)) (*.f64 (pow.f64 (exp.f64 im) 2) (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))))) (-.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))))
(/.f64 (-.f64 (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 (+.f64 im im)) (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))))) (-.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3)) 1) (+.f64 (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))) (-.f64 (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))) (*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) 3) (pow.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) 3)) (fma.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) (*.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (-.f64 (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re)))))))
(/.f64 (+.f64 (/.f64 1/8 (pow.f64 (/.f64 (exp.f64 im) (sin.f64 re)) 3)) (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 3)) (fma.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 -1/2 (/.f64 (exp.f64 im) (sin.f64 re)))) (/.f64 (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 im)) (exp.f64 im))))
(/.f64 (+.f64 (pow.f64 (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))) 3) (pow.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) 3)) (fma.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (*.f64 (/.f64 -1/2 (exp.f64 im)) (sin.f64 re))) (/.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (sin.f64 re))) (exp.f64 (+.f64 im im)))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (*.f64 (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) (sin.f64 re))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) (/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sqrt.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))))))
(*.f64 (/.f64 (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))
(/.f64 (sqrt.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))) (/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 (+.f64 im im)) -1/4))))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (*.f64 (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) (sin.f64 re))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (sqrt.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))) (/.f64 (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im)))))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3)))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4)))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))) (sqrt.f64 (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4)))) (sqrt.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) 1/2) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (*.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4))) (+.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2)))) (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (*.f64 (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.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 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))))) (/.f64 (sin.f64 re) (+.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))))))
(*.f64 (/.f64 (sin.f64 re) (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))))) (/.f64 (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 (+.f64 im im)) -1/4)) (+.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8))) (*.f64 (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) 1) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) 1/2) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (sqrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (*.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (cbrt.f64 (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2))) (*.f64 1/2 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sin.f64 re))
(*.f64 2 (/.f64 (sin.f64 re) (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)))))
(*.f64 (/.f64 (/.f64 (sin.f64 re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) -1/2) (fma.f64 1/4 (exp.f64 (+.f64 im im)) (/.f64 -1/4 (exp.f64 (+.f64 im im)))))
(/.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) 1/4)) (sin.f64 re)) (+.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2)))) (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 (exp.f64 im) 1/2))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 1/4 (pow.f64 (exp.f64 im) 2)))) (*.f64 (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.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 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (pow.f64 (exp.f64 im) 2) -1/4)) (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))))) (/.f64 (sin.f64 re) (+.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))))))
(*.f64 (/.f64 (sin.f64 re) (-.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))))) (/.f64 (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 (+.f64 im im)) -1/4)) (+.f64 (sqrt.f64 (/.f64 1/2 (exp.f64 im))) (sqrt.f64 (*.f64 1/2 (exp.f64 im))))))
(/.f64 (/.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) 1) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (/.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im)))))) (sqrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(/.f64 (/.f64 (*.f64 (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 (pow.f64 (exp.f64 im) 3) 1/8)) (sin.f64 re)) (*.f64 (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))) (cbrt.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1/4) (*.f64 (/.f64 1/4 (exp.f64 im)) (exp.f64 im))))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (-.f64 (*.f64 1/4 (pow.f64 (exp.f64 im) 2)) (*.f64 (exp.f64 im) (/.f64 1/4 (exp.f64 im))))) (+.f64 (/.f64 1/8 (pow.f64 (exp.f64 im) 3)) (*.f64 1/8 (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (/.f64 1/4 (pow.f64 (exp.f64 im) 2)) (fma.f64 1/4 (pow.f64 (exp.f64 im) 2) -1/4))) (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 (exp.f64 im) 3) (/.f64 1/8 (pow.f64 (exp.f64 im) 3))) (+.f64 (/.f64 1/4 (exp.f64 (+.f64 im im))) (fma.f64 1/4 (exp.f64 (+.f64 im im)) -1/4))))
(pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 1)
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.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) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) 2)
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) 3)
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 3) 1/3)
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 2))
(fabs.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im)))))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))))))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im)))) 3))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 3)))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))) 3) (pow.f64 (sin.f64 re) 3)))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))) 1))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) 1/2 (/.f64 1/2 (exp.f64 im))))))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(fma.f64 (sin.f64 re) (/.f64 1/2 (exp.f64 im)) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(fma.f64 (/.f64 1/2 (exp.f64 im)) (sin.f64 re) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (/.f64 1/2 (/.f64 (exp.f64 im) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))

localize3.0ms (0%)

Compiler

Compiled 5 to 3 computations (40% saved)

localize11.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/2 (*.f64 im im))
0.0b
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
Compiler

Compiled 33 to 17 computations (48.5% saved)

series3.0ms (0%)

Counts
2 → 36
Calls

9 calls:

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

rewrite72.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1006×*-commutative
756×unswap-sqr
618×swap-sqr
486×associate-*r/
414×sqr-pow
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01238
124438
2292738
Stop Event
node limit
Counts
2 → 67
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
(*.f64 1/2 (*.f64 im im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 re) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 re) (*.f64 1 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) 1) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 re))) (-.f64 1 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (exp.f64 (log1p.f64 (sin.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 re) (/.f64 1 (fma.f64 (*.f64 1/2 im) im 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (/.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (fma.f64 1/2 (*.f64 im im) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1))) (fma.f64 1/2 (*.f64 im im) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 -1/4 (pow.f64 im 4)))) (-.f64 1 (*.f64 im (*.f64 1/2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (neg.f64 (*.f64 (pow.f64 im 4) 1/4)) 1)) (-.f64 1 (*.f64 im (*.f64 1/2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (neg.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 1/2 im) im 1)) 2)) (cbrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 1/2 im) im 1)) 2)) (cbrt.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1))) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (*.f64 -1/4 (pow.f64 im 4))) (sin.f64 re)) (-.f64 1 (*.f64 im (*.f64 1/2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (neg.f64 (*.f64 (pow.f64 im 4) 1/4)) 1) (sin.f64 re)) (-.f64 1 (*.f64 im (*.f64 1/2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (sin.f64 re)) (neg.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) 1) (fma.f64 1/2 (*.f64 im im) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) 1) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) 1) (fma.f64 1/2 (*.f64 im im) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (+.f64 1 (*.f64 im (sqrt.f64 1/2)))) (-.f64 (*.f64 im (sqrt.f64 1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) 1) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (*.f64 (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))) (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))) (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))) (pow.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 (*.f64 1/2 im) im 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 (*.f64 1/2 im) im 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 im (*.f64 1/2 im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (fma.f64 1/2 (*.f64 im im) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 (*.f64 1/2 im) im 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 1/2 im) im 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 4) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) 1/4)) (+.f64 (/.f64 1 (fma.f64 1/2 (*.f64 im im) -1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (*.f64 1/2 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 im (*.f64 1/2 im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 im 6) 1/8) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 im 4) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 1/2 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 im 6) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 im (*.f64 1/2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 im (*.f64 1/2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (*.f64 1/2 im))))))))

simplify107.0ms (1.2%)

Algorithm
egg-herbie
Rules
1408×associate-/l*
998×distribute-lft-in
900×times-frac
896×*-commutative
896×distribute-rgt-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02244127
15993613
223083517
Stop Event
node limit
Counts
103 → 139
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 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 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 3))) (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 3))) (+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 5))) (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 3))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 7))) (+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 5))) (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 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 (sin.f64 re) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) 1))
(+.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (sin.f64 re))
(+.f64 (*.f64 1 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))) (sin.f64 re))
(+.f64 (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) 1) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) (-.f64 1 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)))) 1)
(-.f64 (+.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (exp.f64 (log1p.f64 (sin.f64 re)))) 1)
(/.f64 (sin.f64 re) (/.f64 1 (fma.f64 (*.f64 1/2 im) im 1)))
(/.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) (sin.f64 re)))
(/.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (/.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (fma.f64 1/2 (*.f64 im im) -1))
(/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1))) (fma.f64 1/2 (*.f64 im im) -1))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 -1/4 (pow.f64 im 4)))) (-.f64 1 (*.f64 im (*.f64 1/2 im))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (neg.f64 (*.f64 (pow.f64 im 4) 1/4)) 1)) (-.f64 1 (*.f64 im (*.f64 1/2 im))))
(/.f64 (*.f64 (sin.f64 re) (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (neg.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 1/2 im) im 1)) 2)) (cbrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 1/2 im) im 1)) 2)) (cbrt.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1))) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1/4 (pow.f64 im 4))) (sin.f64 re)) (-.f64 1 (*.f64 im (*.f64 1/2 im))))
(/.f64 (*.f64 (+.f64 (neg.f64 (*.f64 (pow.f64 im 4) 1/4)) 1) (sin.f64 re)) (-.f64 1 (*.f64 im (*.f64 1/2 im))))
(/.f64 (*.f64 (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (sin.f64 re)) (neg.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) 1) (fma.f64 1/2 (*.f64 im im) -1))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) 1) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) 1) (fma.f64 1/2 (*.f64 im im) -1))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (+.f64 1 (*.f64 im (sqrt.f64 1/2)))) (-.f64 (*.f64 im (sqrt.f64 1/2)) 1))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) 1) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (*.f64 (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))) (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))) (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))) (pow.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (sin.f64 re)))
(pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 1)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))) 2)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 (*.f64 1/2 im) im 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 (*.f64 1/2 im) im 1) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))))
(+.f64 (*.f64 im (*.f64 1/2 im)) 0)
(+.f64 1 (fma.f64 1/2 (*.f64 im im) -1))
(-.f64 (fma.f64 (*.f64 1/2 im) im 1) 1)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 1/2 im) im 1))) 2)
(-.f64 (/.f64 (pow.f64 im 4) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) 1/4)) (+.f64 (/.f64 1 (fma.f64 1/2 (*.f64 im im) -1)) 1))
(pow.f64 (*.f64 im (*.f64 1/2 im)) 1)
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 1/2 im))) 3)
(pow.f64 (*.f64 (pow.f64 im 6) 1/8) 1/3)
(sqrt.f64 (*.f64 (pow.f64 im 4) 1/4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 1/2 im)))))
(cbrt.f64 (*.f64 (pow.f64 im 6) 1/8))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 1/2 im))))
(exp.f64 (log.f64 (*.f64 im (*.f64 1/2 im))))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 1/2 im))))
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))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.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 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.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 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.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 im (*.f64 1/2 im)))
(*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/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) (fma.f64 im (*.f64 1/2 im) 1))
(*.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 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.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 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.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 im (*.f64 1/2 im)))
(*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/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) (fma.f64 im (*.f64 1/2 im) 1))
(*.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 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.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 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.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 1/2 im) 1))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 3))) (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re))
(fma.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (pow.f64 re 3)) (*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im)))))
(fma.f64 re (fma.f64 im (*.f64 1/2 im) 1) (*.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 im (*.f64 1/2 im) 1))))
(*.f64 (fma.f64 1/2 (*.f64 im im) 1) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 3))) (+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 5))) (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)))
(fma.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (pow.f64 re 3)) (fma.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (pow.f64 re 5)) (*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 im (*.f64 1/2 im) 1)) (fma.f64 re (fma.f64 im (*.f64 1/2 im) 1) (*.f64 (pow.f64 re 5) (*.f64 1/120 (fma.f64 im (*.f64 1/2 im) 1)))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (*.f64 im im) 1)) (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 3))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 7))) (+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 5))) (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re))))
(fma.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (pow.f64 re 3)) (fma.f64 -1/5040 (*.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (pow.f64 re 7)) (fma.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (pow.f64 re 5)) (*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 im (*.f64 1/2 im) 1)) (fma.f64 -1/5040 (*.f64 (pow.f64 re 7) (fma.f64 im (*.f64 1/2 im) 1)) (fma.f64 re (fma.f64 im (*.f64 1/2 im) 1) (*.f64 (pow.f64 re 5) (*.f64 1/120 (fma.f64 im (*.f64 1/2 im) 1))))))
(+.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(+.f64 (sin.f64 re) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (sin.f64 re) (*.f64 1 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.f64 1 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) 1) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) (-.f64 1 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) (-.f64 1 (*.f64 (sin.f64 re) (*.f64 im (*.f64 1/2 im)))))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 1/2 im)) (expm1.f64 (log1p.f64 (sin.f64 re))))
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 1/2 im)) (expm1.f64 (log1p.f64 (sin.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)))) 1)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(-.f64 (+.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (exp.f64 (log1p.f64 (sin.f64 re)))) 1)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) (-.f64 1 (*.f64 (sin.f64 re) (*.f64 im (*.f64 1/2 im)))))
(fma.f64 (sin.f64 re) (*.f64 im (*.f64 1/2 im)) (expm1.f64 (log1p.f64 (sin.f64 re))))
(fma.f64 im (*.f64 (sin.f64 re) (*.f64 1/2 im)) (expm1.f64 (log1p.f64 (sin.f64 re))))
(/.f64 (sin.f64 re) (/.f64 1 (fma.f64 (*.f64 1/2 im) im 1)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(/.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) (sin.f64 re)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)) (fma.f64 (pow.f64 im 4) 1/4 -1))
(*.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (/.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))) (sin.f64 re)))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (sin.f64 re))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 1) (/.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 6) 1/8 1)) (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (fma.f64 1/2 (*.f64 im im) -1))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)) (fma.f64 (pow.f64 im 4) 1/4 -1))
(*.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (sin.f64 re))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 1) (/.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 6) 1/8 1)) (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1))) (fma.f64 1/2 (*.f64 im im) -1))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)) (fma.f64 (pow.f64 im 4) 1/4 -1))
(*.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (sin.f64 re))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 1) (/.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 6) 1/8 1)) (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))
(/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 -1/4 (pow.f64 im 4)))) (-.f64 1 (*.f64 im (*.f64 1/2 im))))
(/.f64 (sin.f64 re) (/.f64 (-.f64 1 (*.f64 im (*.f64 1/2 im))) (+.f64 1 (*.f64 (pow.f64 im 4) -1/4))))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (-.f64 1 (*.f64 im (*.f64 1/2 im)))) (sin.f64 re))
(/.f64 (sin.f64 re) (/.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2))) (fma.f64 (pow.f64 im 4) -1/4 1)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (neg.f64 (*.f64 (pow.f64 im 4) 1/4)) 1)) (-.f64 1 (*.f64 im (*.f64 1/2 im))))
(/.f64 (sin.f64 re) (/.f64 (-.f64 1 (*.f64 im (*.f64 1/2 im))) (+.f64 1 (*.f64 (pow.f64 im 4) -1/4))))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (-.f64 1 (*.f64 im (*.f64 1/2 im)))) (sin.f64 re))
(/.f64 (sin.f64 re) (/.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2))) (fma.f64 (pow.f64 im 4) -1/4 1)))
(/.f64 (*.f64 (sin.f64 re) (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (neg.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (sin.f64 re))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 1) (/.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 6) 1/8 1)) (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(/.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))) (sqrt.f64 (fma.f64 (pow.f64 im 6) 1/8 1)))
(*.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 im 6) 1/8 1)) (sqrt.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1)) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 -1))))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1))) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 -1)))
(*.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 -1)) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 1/2 im) im 1)) 2)) (cbrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))) (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(/.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 1/2 im) im 1)) 2)) (/.f64 (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (cbrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 im (*.f64 1/2 im) 1)) 2)) (cbrt.f64 (fma.f64 (pow.f64 im 6) 1/8 1))) (cbrt.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1)))
(*.f64 (/.f64 (cbrt.f64 (fma.f64 (pow.f64 im 6) 1/8 1)) (cbrt.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))) (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 1/2 im) im 1)) 2)) (cbrt.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1))) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 1/2 im) im 1)) 2)) (/.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)) (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/4 -1))))
(/.f64 (sin.f64 re) (/.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)) (*.f64 (pow.f64 (cbrt.f64 (fma.f64 im (*.f64 1/2 im) 1)) 2) (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/4 -1)))))
(*.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/4 -1)) (/.f64 (sin.f64 re) (/.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2))))
(/.f64 (*.f64 (+.f64 1 (*.f64 -1/4 (pow.f64 im 4))) (sin.f64 re)) (-.f64 1 (*.f64 im (*.f64 1/2 im))))
(/.f64 (sin.f64 re) (/.f64 (-.f64 1 (*.f64 im (*.f64 1/2 im))) (+.f64 1 (*.f64 (pow.f64 im 4) -1/4))))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (-.f64 1 (*.f64 im (*.f64 1/2 im)))) (sin.f64 re))
(/.f64 (sin.f64 re) (/.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2))) (fma.f64 (pow.f64 im 4) -1/4 1)))
(/.f64 (*.f64 (+.f64 (neg.f64 (*.f64 (pow.f64 im 4) 1/4)) 1) (sin.f64 re)) (-.f64 1 (*.f64 im (*.f64 1/2 im))))
(/.f64 (sin.f64 re) (/.f64 (-.f64 1 (*.f64 im (*.f64 1/2 im))) (+.f64 1 (*.f64 (pow.f64 im 4) -1/4))))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (-.f64 1 (*.f64 im (*.f64 1/2 im)))) (sin.f64 re))
(/.f64 (sin.f64 re) (/.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2))) (fma.f64 (pow.f64 im 4) -1/4 1)))
(/.f64 (*.f64 (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (sin.f64 re)) (neg.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (sin.f64 re))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 1) (/.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 6) 1/8 1)) (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) 1) (fma.f64 1/2 (*.f64 im im) -1))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)) (fma.f64 (pow.f64 im 4) 1/4 -1))
(*.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) 1) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (sin.f64 re))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 1) (/.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 6) 1/8 1)) (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(/.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)))))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))) (sqrt.f64 (fma.f64 (pow.f64 im 6) 1/8 1)))
(*.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 im 6) 1/8 1)) (sqrt.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1)) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 -1))))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1))) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 -1)))
(*.f64 (*.f64 (sin.f64 re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 -1)) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1))))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) 1) (fma.f64 1/2 (*.f64 im im) -1))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)) (fma.f64 (pow.f64 im 4) 1/4 -1))
(*.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)) (fma.f64 (pow.f64 im 4) 1/4 -1))
(*.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)) (fma.f64 (pow.f64 im 4) 1/4 -1))
(*.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (/.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 4) 1/4) -1)) (+.f64 1 (*.f64 im (sqrt.f64 1/2)))) (-.f64 (*.f64 im (sqrt.f64 1/2)) 1))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/4 -1)) (*.f64 (fma.f64 im (sqrt.f64 1/2) -1) (+.f64 1 (*.f64 im (sqrt.f64 1/2)))))
(/.f64 (sin.f64 re) (*.f64 (fma.f64 im (sqrt.f64 1/2) -1) (/.f64 (fma.f64 im (sqrt.f64 1/2) 1) (fma.f64 (pow.f64 im 4) 1/4 -1))))
(*.f64 (/.f64 (sin.f64 re) (*.f64 (fma.f64 im (sqrt.f64 1/2) 1) (fma.f64 im (sqrt.f64 1/2) -1))) (fma.f64 (pow.f64 im 4) 1/4 -1))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) 1) (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (sin.f64 re))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 1) (/.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 6) 1/8 1)) (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2))))) (sqrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (sin.f64 re))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 1) (/.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 6) 1/8 1)) (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))
(/.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 (pow.f64 im 6) 1/8))) (*.f64 (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))) (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))) (cbrt.f64 (+.f64 1 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 1/2 im) 2) 1/2)))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 6) 1/8)) (+.f64 1 (*.f64 (*.f64 im im) (+.f64 (pow.f64 (*.f64 1/2 im) 2) -1/2)))) (sin.f64 re))
(/.f64 (fma.f64 (pow.f64 im 6) 1/8 1) (/.f64 (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1) (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 6) 1/8 1)) (fma.f64 im (*.f64 im (+.f64 (*.f64 (*.f64 im im) 1/4) -1/2)) 1))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (*.f64 im (*.f64 1/2 im))) (pow.f64 (sin.f64 re) 2))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 im (*.f64 1/2 im)))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/4)))) (*.f64 (-.f64 1 (*.f64 im (*.f64 1/2 im))) (sin.f64 re)))
(/.f64 (/.f64 (*.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (pow.f64 (sin.f64 re) 2)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) (sin.f64 re))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re))) (pow.f64 (sin.f64 re) 2)) (-.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re)) (sin.f64 re)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im (*.f64 1/2 im)) (*.f64 im (*.f64 1/2 im))) (pow.f64 (sin.f64 re) 2)) (pow.f64 (sin.f64 re) 2)) (fma.f64 (*.f64 im (*.f64 1/2 im)) (sin.f64 re) (neg.f64 (sin.f64 re))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/4)) (sin.f64 re))) (-.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 1/2 im))) (sin.f64 re)))
(/.f64 (*.f64 (pow.f64 (sin.f64 re) 2) (fma.f64 (pow.f64 im 4) 1/4 -1)) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) -1)))
(pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 1)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))) 2)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))) 3)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(pow.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 3) 1/3)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 2))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 (*.f64 1/2 im) im 1)) 2))
(fabs.f64 (*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1)))
(fabs.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 (*.f64 1/2 im) im 1)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re)) 3))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 (*.f64 1/2 im) im 1) 3)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (log.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 (*.f64 1/2 im) im 1) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 1/2 im) 1))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.f64 im (*.f64 1/2 im)) 0)
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(+.f64 1 (fma.f64 1/2 (*.f64 im im) -1))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(-.f64 (fma.f64 (*.f64 1/2 im) im 1) 1)
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 1/2 im) im 1))) 2)
(+.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 1/2 im) im 1))) -2)
(+.f64 (exp.f64 (log1p.f64 (fma.f64 im (*.f64 1/2 im) 1))) -2)
(+.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) 1))) -2)
(-.f64 (/.f64 (pow.f64 im 4) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) 1/4)) (+.f64 (/.f64 1 (fma.f64 1/2 (*.f64 im im) -1)) 1))
(-.f64 (/.f64 (pow.f64 im 4) (/.f64 (fma.f64 1/2 (*.f64 im im) -1) 1/4)) (+.f64 1 (/.f64 1 (fma.f64 1/2 (*.f64 im im) -1))))
(-.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) -1))) (+.f64 1 (/.f64 1 (fma.f64 1/2 (*.f64 im im) -1))))
(+.f64 -1 (fma.f64 (/.f64 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) -1)) 1/4 (/.f64 -1 (fma.f64 1/2 (*.f64 im im) -1))))
(pow.f64 (*.f64 im (*.f64 1/2 im)) 1)
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 1/2 im))) 3)
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(pow.f64 (*.f64 (pow.f64 im 6) 1/8) 1/3)
(cbrt.f64 (*.f64 (pow.f64 im 6) 1/8))
(sqrt.f64 (*.f64 (pow.f64 im 4) 1/4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) 1/2))
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 1/2 im)))))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(cbrt.f64 (*.f64 (pow.f64 im 6) 1/8))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 1/2 im))))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(exp.f64 (log.f64 (*.f64 im (*.f64 1/2 im))))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 1/2 im))))
(*.f64 1/2 (*.f64 im im))
(*.f64 im (*.f64 1/2 im))

localize57.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/2 (*.f64 im im))
0.0b
(+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))
0.0b
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
0.1b
(*.f64 1/24 (pow.f64 im 4))
Compiler

Compiled 66 to 42 computations (36.4% saved)

series5.0ms (0.1%)

Counts
3 → 36
Calls

12 calls:

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

rewrite107.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1380×associate-*r/
1120×associate-*l/
428×associate-+l+
358×add-sqr-sqrt
344×*-un-lft-identity
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01783
136683
2457283
Stop Event
node limit
Counts
3 → 151
Calls
Call 1
Inputs
(*.f64 1/24 (pow.f64 im 4))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/24)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/24) (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 re) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (sin.f64 re) (+.f64 1 (*.f64 im (*.f64 im 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)) (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)) (+.f64 (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re)) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re)) (+.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (sin.f64 re)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sin.f64 re) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))) (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sin.f64 re) (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re))) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 re))) (-.f64 1 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 re))) (-.f64 1 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (exp.f64 (log1p.f64 (sin.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 re) (/.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 re) (/.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (sin.f64 re)) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (sin.f64 re)) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (-.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) 1)) (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (-.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (*.f64 (pow.f64 im 8) 1/576))) (+.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (pow.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) 3))) (+.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (neg.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (neg.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (neg.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (neg.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (sin.f64 re) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (sin.f64 re))) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (sin.f64 re))) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3))) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) (sqrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (sqrt.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (sqrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 2)) (cbrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (cbrt.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 2)) (cbrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (cbrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) 1) (sin.f64 re)) (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (*.f64 (pow.f64 im 8) 1/576)) (sin.f64 re)) (+.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (pow.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) 3)) (sin.f64 re)) (+.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (sin.f64 re)) (neg.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) (sin.f64 re)) (neg.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) 1) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) 1) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (sin.f64 re)) 1) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (sin.f64 re)) 1) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 1) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) 1) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) (*.f64 (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sin.f64 re))) (sqrt.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (*.f64 (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sin.f64 re))) (sqrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3) (pow.f64 (sin.f64 re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (log.f64 (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (+.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (log.f64 (sin.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 re) 1 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (-.f64 1 (*.f64 1/24 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) (-.f64 1 (*.f64 im (*.f64 im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log.f64 (+.f64 2 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (/.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 im 4) 1/4) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))) (/.f64 (*.f64 (pow.f64 im 8) 1/576) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (/.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (/.f64 1 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))) (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (neg.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (neg.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4))) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))) (neg.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))) (neg.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))) (sqrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))) (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))) (cbrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))) (cbrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) 1) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) 1) (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4)) 1) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) 1) (neg.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) 1) (neg.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sqrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2)) (cbrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2)) (cbrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 8) 1/576))) (/.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/4) 3) (pow.f64 (*.f64 (pow.f64 im 8) 1/576) 3)) (/.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))) (+.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 4) 1/4)) (+.f64 (*.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 1/8 (pow.f64 im 6))) (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (/.f64 1 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))) (-.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/8 (pow.f64 im 6)) 3) (pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 3)) (/.f64 1 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))) (+.f64 (*.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 1/8 (pow.f64 im 6))) (-.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (*.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/24 (pow.f64 im 4) (*.f64 im (*.f64 im 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 im 4) 1/24 (*.f64 im (*.f64 im 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 im (*.f64 im 1/2)) (*.f64 1/24 (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 1/2)) (*.f64 1/24 (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/24)) (*.f64 (*.f64 im im) (sqrt.f64 1/24)) (*.f64 im (*.f64 im 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 im (*.f64 im 1/2))) (*.f64 1/24 (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (*.f64 im (*.f64 im 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 im 1/2) im (*.f64 1/24 (pow.f64 im 4)))))))

simplify163.0ms (1.8%)

Algorithm
egg-herbie
Rules
1014×associate-/r*
882×associate-+r+
818×associate-+l+
764×+-commutative
626×associate-*r*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
043812081
1119311405
2474311405
Stop Event
node limit
Counts
187 → 265
Calls
Call 1
Inputs
(*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re)
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re)))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 3))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 7))) (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) 1)
(pow.f64 (*.f64 1/24 (pow.f64 im 4)) 1)
(pow.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/24)) 2)
(pow.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) 3)
(pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 1/3)
(sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))
(log.f64 (pow.f64 (exp.f64 1/24) (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))
(expm1.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))) 1))
(log1p.f64 (expm1.f64 (*.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 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1))
(+.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (sin.f64 re) (+.f64 1 (*.f64 im (*.f64 im 1/2)))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))) (sin.f64 re)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(+.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)) (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (sin.f64 re)))
(+.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)) (+.f64 (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re)) (sin.f64 re)))
(+.f64 (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re)) (+.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)) (sin.f64 re)))
(+.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (sin.f64 re)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1) (sin.f64 re))
(+.f64 (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))))
(+.f64 (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (+.f64 (sin.f64 re) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))) (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re)))
(+.f64 (+.f64 (sin.f64 re) (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re))) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))) 1)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) (-.f64 1 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) (-.f64 1 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1)))
(-.f64 (+.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (exp.f64 (log1p.f64 (sin.f64 re)))) 1)
(/.f64 (sin.f64 re) (/.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (sin.f64 re)) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (sin.f64 re)) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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 (*.f64 (sin.f64 re) (-.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) 1)) (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (*.f64 (pow.f64 im 8) 1/576))) (+.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (pow.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) 3))) (+.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (sin.f64 re) (neg.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (neg.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (sin.f64 re) (neg.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (neg.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 1 (*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (sin.f64 re))) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 1 (*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (sin.f64 re))) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 1 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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 (*.f64 1 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3))) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) (sqrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (sqrt.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (sqrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 2)) (cbrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (cbrt.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 2)) (cbrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (cbrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) 1) (sin.f64 re)) (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1))
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (*.f64 (pow.f64 im 8) 1/576)) (sin.f64 re)) (+.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (pow.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) 3)) (sin.f64 re)) (+.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (neg.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (sin.f64 re)) (neg.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (neg.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) (sin.f64 re)) (neg.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) 1) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) 1) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (sin.f64 re)) 1) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (sin.f64 re)) 1) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 1) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) 1) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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 (*.f64 (sqrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) (*.f64 (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sin.f64 re))) (sqrt.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (*.f64 (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sin.f64 re))) (sqrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 1)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 2)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 2))
(log.f64 (pow.f64 (exp.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3) (pow.f64 (sin.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(exp.f64 (+.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (log.f64 (sin.f64 re))))
(exp.f64 (*.f64 (+.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (log.f64 (sin.f64 re))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(fma.f64 (sin.f64 re) 1 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 1 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(-.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1)
(-.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (-.f64 1 (*.f64 1/24 (pow.f64 im 4))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) (-.f64 1 (*.f64 im (*.f64 im 1/2))))
(-.f64 (exp.f64 (log.f64 (+.f64 2 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 2)
(-.f64 (/.f64 1 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (/.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 1))
(-.f64 (/.f64 (*.f64 (pow.f64 im 4) 1/4) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))) (/.f64 (*.f64 (pow.f64 im 8) 1/576) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(-.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))) 1)
(*.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1)
(*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (/.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (/.f64 1 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 1 (/.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))))
(/.f64 1 (/.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))) (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (neg.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (neg.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4))) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))
(/.f64 (*.f64 1 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))) (neg.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 1 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))) (neg.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))) (sqrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))) (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))) (cbrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))) (cbrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) 1) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) 1) (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4)) 1) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) 1) (neg.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) 1) (neg.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sqrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2)) (cbrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (*.f64 (cbrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2)) (cbrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 8) 1/576))) (/.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/4) 3) (pow.f64 (*.f64 (pow.f64 im 8) 1/576) 3)) (/.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))) (+.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 4) 1/4)) (+.f64 (*.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 1/8 (pow.f64 im 6))) (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (/.f64 1 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))) (-.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/8 (pow.f64 im 6)) 3) (pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 3)) (/.f64 1 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))) (+.f64 (*.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 1/8 (pow.f64 im 6))) (-.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (*.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))))
(pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1)
(pow.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2)
(pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)
(pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3) 1/3)
(sqrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))
(log.f64 (exp.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(exp.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 im (*.f64 im 1/2)))
(fma.f64 (pow.f64 im 4) 1/24 (*.f64 im (*.f64 im 1/2)))
(fma.f64 1 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))
(fma.f64 1 (*.f64 im (*.f64 im 1/2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 1/2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/24)) (*.f64 (*.f64 im im) (sqrt.f64 1/24)) (*.f64 im (*.f64 im 1/2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 im (*.f64 im 1/2))) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (*.f64 im (*.f64 im 1/2)))
(fma.f64 (*.f64 im 1/2) im (*.f64 1/24 (pow.f64 im 4)))
Outputs
(*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re)
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) re)
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) re)
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re))
(fma.f64 -1/6 (*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 3)) (*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) re))
(fma.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) re (*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (*.f64 (pow.f64 re 3) -1/6)))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 3))) (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re)))
(fma.f64 1/120 (*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 5)) (fma.f64 -1/6 (*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 3)) (*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) re)))
(fma.f64 1/120 (*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (pow.f64 re 5)) (fma.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) re (*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (*.f64 (pow.f64 re 3) -1/6))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 3))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 7))) (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re))))
(fma.f64 1/120 (*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 5)) (fma.f64 -1/6 (*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 3)) (fma.f64 -1/5040 (*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 re 7)) (*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) re))))
(fma.f64 1/120 (*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (pow.f64 re 5)) (fma.f64 (*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) -1/6) (pow.f64 re 3) (fma.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) re (*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (*.f64 (pow.f64 re 7) -1/5040)))))
(fma.f64 1/120 (*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (pow.f64 re 5)) (fma.f64 -1/6 (*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (pow.f64 re 3)) (fma.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) re (*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (*.f64 (pow.f64 re 7) -1/5040)))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (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))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (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 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.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 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (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 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 (*.f64 im im) (sin.f64 re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.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 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (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 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) 1)
(*.f64 1/24 (pow.f64 im 4))
(pow.f64 (*.f64 1/24 (pow.f64 im 4)) 1)
(*.f64 1/24 (pow.f64 im 4))
(pow.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/24)) 2)
(pow.f64 (*.f64 im (*.f64 im (sqrt.f64 1/24))) 2)
(pow.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) 3)
(*.f64 1/24 (pow.f64 im 4))
(pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 1/3)
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))
(sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))
(log.f64 (pow.f64 (exp.f64 1/24) (pow.f64 im 4)))
(*.f64 1/24 (pow.f64 im 4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 1/24 (pow.f64 im 4))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))
(expm1.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (pow.f64 im 4))
(exp.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (pow.f64 im 4))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (pow.f64 im 4))) 1))
(*.f64 1/24 (pow.f64 im 4))
(log1p.f64 (expm1.f64 (*.f64 1/24 (pow.f64 im 4))))
(*.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 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (sin.f64 re) (+.f64 1 (*.f64 im (*.f64 im 1/2)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))) (sin.f64 re)))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)) (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (sin.f64 re)))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)) (+.f64 (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re)) (sin.f64 re)))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re)) (+.f64 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)) (sin.f64 re)))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (sin.f64 re)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1) (sin.f64 re))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (+.f64 (sin.f64 re) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))) (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re)))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(+.f64 (+.f64 (sin.f64 re) (*.f64 (*.f64 im (*.f64 im 1/2)) (sin.f64 re))) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re)))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))) 1)
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) (-.f64 1 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(+.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 1) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (expm1.f64 (log1p.f64 (sin.f64 re))))
(fma.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) (expm1.f64 (log1p.f64 (sin.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) (-.f64 1 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1)))
(+.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 1) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (expm1.f64 (log1p.f64 (sin.f64 re))))
(fma.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) (expm1.f64 (log1p.f64 (sin.f64 re))))
(-.f64 (+.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (exp.f64 (log1p.f64 (sin.f64 re)))) 1)
(+.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 re))) 1) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (expm1.f64 (log1p.f64 (sin.f64 re))))
(fma.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) (expm1.f64 (log1p.f64 (sin.f64 re))))
(/.f64 (sin.f64 re) (/.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))))
(*.f64 (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (/.f64 (sin.f64 re) (-.f64 1 (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3)) (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (/.f64 (sin.f64 re) (-.f64 1 (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3)) (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2))))
(/.f64 (*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (sin.f64 re)) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (sin.f64 re)) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (/.f64 (sin.f64 re) (-.f64 1 (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3)) (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (-.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) 1)) (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1))
(/.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) -1) (/.f64 (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) -1) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) -1)) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) -1))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) -1)) (+.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2) -1))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (*.f64 (pow.f64 im 8) 1/576))) (+.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 1 (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24))) (fma.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (neg.f64 (*.f64 (pow.f64 im 8) 1/576)))))
(/.f64 (fma.f64 (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 im 8) -1/576)) (/.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24))) (sin.f64 re)))
(*.f64 (/.f64 (fma.f64 (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 im 8) -1/576)) (+.f64 1 (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))) (sin.f64 re))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (pow.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) 3))) (+.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (pow.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) 3))) (fma.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 1 (*.f64 1/2 (*.f64 im im)))))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (pow.f64 (fma.f64 1/2 (*.f64 im im) 1) 3))) (fma.f64 (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 (pow.f64 im 8) 1/576 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 im 4) -1/24)))))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 (pow.f64 im 8) 1/576 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 im 4) -1/24))))) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (pow.f64 (fma.f64 1/2 (*.f64 im im) 1) 3)))
(/.f64 (*.f64 (sin.f64 re) (neg.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (neg.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) -1) (/.f64 (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) -1) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) -1)) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) -1))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) -1)) (+.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2) -1))
(/.f64 (*.f64 (sin.f64 re) (neg.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (neg.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 re) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (neg.f64 (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))))
(*.f64 (/.f64 (sin.f64 re) (-.f64 (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) -1) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (-.f64 -1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))
(*.f64 (/.f64 (sin.f64 re) (+.f64 -1 (-.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2)))) (-.f64 -1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3)))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (/.f64 (sin.f64 re) (-.f64 1 (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3)) (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2))))
(/.f64 (*.f64 1 (*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (sin.f64 re))) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (*.f64 1 (*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (sin.f64 re))) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (/.f64 (sin.f64 re) (-.f64 1 (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3)) (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2))))
(/.f64 (*.f64 1 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3))) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (-.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) (sqrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (sqrt.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (sqrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) (/.f64 (sqrt.f64 (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))
(*.f64 (/.f64 (hypot.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3/2)) (sqrt.f64 (-.f64 1 (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)))))
(*.f64 (/.f64 (hypot.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3/2)) (sqrt.f64 (+.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2)))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (sqrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (/.f64 (sqrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 2)) (cbrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (cbrt.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 2)) (/.f64 (cbrt.f64 (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (cbrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))))
(/.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1))) 2)) (/.f64 (cbrt.f64 (-.f64 1 (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (cbrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))))
(/.f64 (cbrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3))) (/.f64 (/.f64 (cbrt.f64 (+.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2))) (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1))) 2)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 2)) (cbrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))) (cbrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 2)) (/.f64 (cbrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (cbrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1))) 2)) (cbrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) (cbrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1))) 2)) (cbrt.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))))) (cbrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2))))
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) 1) (sin.f64 re)) (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1))
(/.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) -1) (/.f64 (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) -1) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) -1)) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) -1))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) -1)) (+.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2) -1))
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (*.f64 (pow.f64 im 8) 1/576)) (sin.f64 re)) (+.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (sin.f64 re) (/.f64 (+.f64 1 (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24))) (fma.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (neg.f64 (*.f64 (pow.f64 im 8) 1/576)))))
(/.f64 (fma.f64 (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 im 8) -1/576)) (/.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24))) (sin.f64 re)))
(*.f64 (/.f64 (fma.f64 (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 im 8) -1/576)) (+.f64 1 (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))) (sin.f64 re))
(/.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (pow.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) 3)) (sin.f64 re)) (+.f64 (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (+.f64 1 (*.f64 im (*.f64 im 1/2)))) (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (pow.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) 3))) (fma.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (+.f64 1 (*.f64 1/2 (*.f64 im im))) (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 1 (*.f64 1/2 (*.f64 im im)))))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (pow.f64 (fma.f64 1/2 (*.f64 im im) 1) 3))) (fma.f64 (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 (pow.f64 im 8) 1/576 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 im 4) -1/24)))))
(*.f64 (/.f64 (sin.f64 re) (fma.f64 (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 1/2 (*.f64 im im) 1) (fma.f64 (pow.f64 im 8) 1/576 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 im 4) -1/24))))) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (pow.f64 (fma.f64 1/2 (*.f64 im im) 1) 3)))
(/.f64 (*.f64 (neg.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (sin.f64 re)) (neg.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) -1) (/.f64 (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) -1) (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) -1)) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) -1))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) -1)) (+.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2) -1))
(/.f64 (*.f64 (neg.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) (sin.f64 re)) (neg.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 re) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))) (neg.f64 (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))))
(*.f64 (/.f64 (sin.f64 re) (-.f64 (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) -1) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (-.f64 -1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))
(*.f64 (/.f64 (sin.f64 re) (+.f64 -1 (-.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2)))) (-.f64 -1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) 1) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) 1) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (/.f64 (sin.f64 re) (-.f64 1 (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3)) (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2))))
(/.f64 (*.f64 (*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (sin.f64 re)) 1) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (-.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2)) (/.f64 (sin.f64 re) (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (*.f64 (*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (sin.f64 re)) 1) (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3)) (/.f64 (sin.f64 re) (-.f64 1 (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2)))))
(*.f64 (+.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3)) (/.f64 (sin.f64 re) (+.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2))))
(/.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 1) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (sin.f64 re) (*.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2) (sin.f64 re)))) (-.f64 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) 1) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.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 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (-.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) (*.f64 (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sin.f64 re))) (sqrt.f64 (+.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(/.f64 (sqrt.f64 (+.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))) (/.f64 (sqrt.f64 (+.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))
(*.f64 (/.f64 (hypot.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3/2)) (sqrt.f64 (-.f64 1 (-.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)))))
(*.f64 (/.f64 (hypot.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 3/2)) (sqrt.f64 (+.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2)))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (*.f64 (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sin.f64 re))) (sqrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(/.f64 (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (/.f64 (sqrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 (sin.f64 re) (sqrt.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 1 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))))) (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)))))
(pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 1)
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 2)
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 3)
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 3) 1/3)
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 2))
(sqrt.f64 (pow.f64 (*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re)) 2))
(fabs.f64 (*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re)))
(log.f64 (pow.f64 (exp.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sin.f64 re)))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 3))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3) (pow.f64 (sin.f64 re) 3)))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(exp.f64 (+.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (log.f64 (sin.f64 re))))
(*.f64 (sin.f64 re) (exp.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (sin.f64 re) (exp.f64 (log1p.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(exp.f64 (*.f64 (+.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (log.f64 (sin.f64 re))) 1))
(exp.f64 (+.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (log.f64 (sin.f64 re))))
(*.f64 (sin.f64 re) (exp.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (sin.f64 re) (exp.f64 (log1p.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(fma.f64 1 (sin.f64 re) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (fma.f64 1/2 (*.f64 im im) 1)) (sin.f64 re))
(-.f64 (+.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1)
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(-.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) (-.f64 1 (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4)))) (-.f64 1 (*.f64 im (*.f64 im 1/2))))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(-.f64 (exp.f64 (log.f64 (+.f64 2 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) 2)
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(-.f64 (/.f64 1 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (/.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) 1))
(-.f64 (/.f64 1 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 1 (/.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))))
(+.f64 (-.f64 (/.f64 1 (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (/.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2) (-.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))) -1)
(+.f64 (-.f64 (/.f64 1 (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))) (/.f64 (pow.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))) 2) (-.f64 1 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))))) -1)
(-.f64 (/.f64 (*.f64 (pow.f64 im 4) 1/4) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))) (/.f64 (*.f64 (pow.f64 im 8) 1/576) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))
(-.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (exp.f64 (log1p.f64 (*.f64 1/24 (pow.f64 im 4))))) 1)
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(*.f64 1 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(*.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1)
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(*.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(*.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (/.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (/.f64 1 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6))) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))
(/.f64 1 (/.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))
(/.f64 1 (/.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))) (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6))) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6))) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4)) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (neg.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))
(/.f64 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (neg.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6))) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))
(/.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4))) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))
(/.f64 (*.f64 1 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))) (neg.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))
(/.f64 (*.f64 1 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))) (neg.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6))) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))) (sqrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (/.f64 (sqrt.f64 (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))) (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (/.f64 (sqrt.f64 (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im))))) (sqrt.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6))))) (sqrt.f64 (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2))))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6))))) (sqrt.f64 (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2))))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))) (cbrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (/.f64 (cbrt.f64 (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24))) (cbrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))) (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) 2) (cbrt.f64 (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))) (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))) (cbrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (/.f64 (cbrt.f64 (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im))))) (cbrt.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))) (cbrt.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) 2) (cbrt.f64 (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))) (cbrt.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6)))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) 1) (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) 1) (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6))) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 4) 1/4)) 1) (-.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) 1) (neg.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))
(/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))
(/.f64 (*.f64 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) 1) (neg.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im)))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6))) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sqrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (/.f64 (sqrt.f64 (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))) (sqrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (/.f64 (sqrt.f64 (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im))))) (sqrt.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) (sqrt.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6))))) (sqrt.f64 (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2))))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6))))) (sqrt.f64 (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2))))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2)) (cbrt.f64 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4)))))
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (/.f64 (cbrt.f64 (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24))) (cbrt.f64 (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24)))) (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) 2) (cbrt.f64 (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im))))) (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) -1/576))))
(/.f64 (*.f64 (cbrt.f64 (+.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2)) (cbrt.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))))))
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (/.f64 (cbrt.f64 (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im))))) (cbrt.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2) (cbrt.f64 (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))) (cbrt.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))) 2) (cbrt.f64 (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))) (cbrt.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 1/8 (pow.f64 im 6)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 8) 1/576))) (/.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))) (+.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))
(/.f64 (-.f64 (*.f64 (pow.f64 im 8) 1/16) (*.f64 (*.f64 (pow.f64 im 8) (pow.f64 im 8)) 1/331776)) (/.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (/.f64 1 (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))))
(/.f64 (fma.f64 (pow.f64 im 8) 1/16 (*.f64 (pow.f64 im 16) -1/331776)) (*.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24))))
(/.f64 (fma.f64 (pow.f64 im 8) 1/16 (*.f64 (pow.f64 im 16) -1/331776)) (*.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/4) 3) (pow.f64 (*.f64 (pow.f64 im 8) 1/576) 3)) (/.f64 1 (+.f64 (*.f64 im (*.f64 im 1/2)) (*.f64 -1/24 (pow.f64 im 4))))) (+.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 4) 1/4)) (+.f64 (*.f64 (*.f64 (pow.f64 im 8) 1/576) (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (pow.f64 im 8) 1/576)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/64) (pow.f64 (*.f64 (pow.f64 im 8) 1/576) 3)) (/.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/16) (*.f64 (*.f64 (pow.f64 im 8) 1/576) (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)))) (/.f64 1 (fma.f64 im (*.f64 1/2 im) (*.f64 (pow.f64 im 4) -1/24)))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/64 (*.f64 (pow.f64 (pow.f64 im 4) 6) -1/191102976)) (*.f64 (fma.f64 (pow.f64 im 8) 1/16 (fma.f64 (pow.f64 im 4) (*.f64 1/2304 (pow.f64 im 8)) (*.f64 (pow.f64 im 16) 1/331776))) (fma.f64 1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/24))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/64 (*.f64 (pow.f64 (pow.f64 im 8) 3) -1/191102976)) (*.f64 (fma.f64 (pow.f64 im 8) 1/16 (fma.f64 (pow.f64 im 4) (*.f64 1/2304 (pow.f64 im 8)) (*.f64 (pow.f64 im 16) 1/331776))) (fma.f64 (pow.f64 im 4) -1/24 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 1/8 (pow.f64 im 6))) (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824))) (/.f64 1 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))) (-.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))
(/.f64 (-.f64 (*.f64 1/64 (*.f64 (pow.f64 im 6) (pow.f64 im 6))) (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (pow.f64 im 4) 3)) 1/191102976)) (/.f64 (-.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (/.f64 1 (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im)))))))
(/.f64 (fma.f64 1/64 (pow.f64 im 12) (*.f64 (pow.f64 (pow.f64 im 4) 6) -1/191102976)) (*.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) -1/13824)) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2))))))
(/.f64 (fma.f64 1/64 (pow.f64 im 12) (*.f64 (pow.f64 (pow.f64 im 8) 3) -1/191102976)) (*.f64 (fma.f64 1/8 (pow.f64 im 6) (*.f64 (pow.f64 (pow.f64 im 4) 3) -1/13824)) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/8 (pow.f64 im 6)) 3) (pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 3)) (/.f64 1 (+.f64 (*.f64 (pow.f64 im 8) 1/576) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2))))))) (+.f64 (*.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 1/8 (pow.f64 im 6))) (-.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)) (*.f64 (*.f64 1/8 (pow.f64 im 6)) (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824)))))
(/.f64 (*.f64 (/.f64 1 (-.f64 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (pow.f64 im 8) 1/576)) (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (*.f64 im im))))) (+.f64 (*.f64 1/512 (pow.f64 (pow.f64 im 6) 3)) (pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 3))) (+.f64 (*.f64 1/64 (*.f64 (pow.f64 im 6) (pow.f64 im 6))) (*.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (-.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (*.f64 1/8 (pow.f64 im 6))))))
(/.f64 (/.f64 (fma.f64 1/512 (pow.f64 (pow.f64 im 6) 3) (pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 3)) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2))))) (fma.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 (pow.f64 im 6) -1/8)) (*.f64 1/64 (pow.f64 im 12))))
(/.f64 (/.f64 (fma.f64 1/512 (pow.f64 (pow.f64 im 6) 3) (pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) 3)) (fma.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/13824 (*.f64 (pow.f64 im 6) -1/8)) (*.f64 1/64 (pow.f64 im 12)))) (fma.f64 (pow.f64 im 8) 1/576 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 (*.f64 im im) -1/2)))))
(pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 1)
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(pow.f64 (sqrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 2)
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 3)
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(pow.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3) 1/3)
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(sqrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 2))
(fabs.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))
(fabs.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im))))
(log.f64 (exp.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(cbrt.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) 3))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(expm1.f64 (log1p.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(exp.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(exp.f64 (*.f64 (log.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))) 1))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(log1p.f64 (expm1.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 im (*.f64 im 1/2)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (pow.f64 im 4) 1/24 (*.f64 im (*.f64 im 1/2)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1 (*.f64 1/24 (pow.f64 im 4)) (*.f64 im (*.f64 im 1/2)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1 (*.f64 im (*.f64 im 1/2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (*.f64 im im) 1/2 (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (*.f64 im (sqrt.f64 1/2)) (*.f64 im (sqrt.f64 1/2)) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/24)) (*.f64 (*.f64 im im) (sqrt.f64 1/24)) (*.f64 im (*.f64 im 1/2)))
(+.f64 (pow.f64 (*.f64 im (*.f64 im (sqrt.f64 1/24))) 2) (*.f64 1/2 (*.f64 im im)))
(+.f64 (pow.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/24)) 2) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 im (*.f64 im 1/2))) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (*.f64 im (*.f64 im 1/2)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 8) 1/576)) (cbrt.f64 (*.f64 1/24 (pow.f64 im 4))) (*.f64 1/2 (*.f64 im im)))
(fma.f64 (*.f64 im 1/2) im (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4)))
(fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (*.f64 im im)))

localize20.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.1b
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
0.2b
(log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
Compiler

Compiled 65 to 18 computations (72.3% saved)

series112.0ms (1.2%)

Counts
3 → 72
Calls

18 calls:

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

rewrite110.0ms (1.2%)

Algorithm
egg-rewrite-iter-limit
egg-rewrite
batch-egg-rewrite
Rules
302×add-sqr-sqrt
302×add-sqr-sqrt
300×add-sqr-sqrt
292×*-un-lft-identity
292×*-un-lft-identity
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
015109
1311109
24460109
01439
129239
2439739
01439
01535
131135
2446035
01535
01129
123029
2359529
01129
Stop Event
iter limit
unsound
iter limit
unsound
iter limit
unsound
unsound
Counts
3 → 29
Calls
Call 1
Inputs
(log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (sqrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (cbrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (cbrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sqrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.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 (neg.f64 im)) (exp.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))) (*.f64 (sin.f64 re) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)) (*.f64 (exp.f64 im) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))))

simplify127.0ms (1.4%)

Algorithm
egg-herbie
Rules
1662×associate-*r/
1238×associate-*l/
1028×*-commutative
952×distribute-lft-in
884×distribute-rgt-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02024633
15524427
221854297
364674297
Stop Event
node limit
Counts
101 → 121
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 3)) (*.f64 -1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (pow.f64 re 3)))))
(+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 -3/8 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 4)) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2)) (pow.f64 re 4))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 3)) (*.f64 -1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (pow.f64 re 3))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 (sin.f64 re) 1))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) (+.f64 (sin.f64 re) 1))) (log.f64 (+.f64 (sin.f64 re) 1)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) (+.f64 (sin.f64 re) 1))) (+.f64 (log.f64 (+.f64 (sin.f64 re) 1)) (*.f64 1/24 (*.f64 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 (sin.f64 re) 1) 2))) (/.f64 (sin.f64 re) (+.f64 (sin.f64 re) 1))) (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) (+.f64 (sin.f64 re) 1))) (+.f64 (log.f64 (+.f64 (sin.f64 re) 1)) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 (sin.f64 re) 1) 2))) (/.f64 (sin.f64 re) (+.f64 (sin.f64 re) 1))) (pow.f64 im 4))) (*.f64 1/720 (*.f64 (+.f64 (/.f64 (sin.f64 re) (+.f64 (sin.f64 re) 1)) (+.f64 (*.f64 30 (/.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (+.f64 (sin.f64 re) 1) 3))) (*.f64 -15 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 (sin.f64 re) 1) 2))))) (pow.f64 im 6))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 -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)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 2 (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 1/12 (*.f64 (sin.f64 re) (pow.f64 im 4))) (+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (*.f64 1/12 (*.f64 (sin.f64 re) (pow.f64 im 4))) (+.f64 (*.f64 1/360 (*.f64 (sin.f64 re) (pow.f64 im 6))) (+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(*.f64 1 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (sqrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (sqrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(*.f64 (*.f64 (cbrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (cbrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (cbrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(pow.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 1)
(log.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(log.f64 (+.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(cbrt.f64 (*.f64 (*.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(expm1.f64 (log1p.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(exp.f64 (log.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) 1)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 1/2)
(*.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sqrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sqrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (cbrt.f64 (*.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 (neg.f64 im)) (exp.f64 im)))
(pow.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 1)
(log.f64 (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(cbrt.f64 (*.f64 (*.f64 (*.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 (neg.f64 im)) (exp.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(exp.f64 (log.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(+.f64 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))) (*.f64 (sin.f64 re) (exp.f64 im)))
(+.f64 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)) (*.f64 (exp.f64 im) (sin.f64 re)))
(pow.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 1)
(log.f64 (exp.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(cbrt.f64 (*.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
Outputs
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 -1/8 (*.f64 (*.f64 re re) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2)) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2) (*.f64 -1/8 (*.f64 re re))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/2 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re (*.f64 re -1/8)))))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 3)) (*.f64 -1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (pow.f64 re 3)))))
(fma.f64 -1/8 (*.f64 (*.f64 re re) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2)) (fma.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 1/6 (*.f64 (fma.f64 1/4 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 3) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) -1/2)) (pow.f64 re 3)))))
(fma.f64 -1/8 (*.f64 re (*.f64 re (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2))) (fma.f64 1/6 (*.f64 (fma.f64 1/4 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 3) (fma.f64 (exp.f64 im) -1/2 (/.f64 -1/2 (exp.f64 im)))) (pow.f64 re 3)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))))
(fma.f64 -1/8 (*.f64 (*.f64 re re) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2)) (fma.f64 1/6 (*.f64 (fma.f64 1/4 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 3) (fma.f64 (exp.f64 im) -1/2 (/.f64 -1/2 (exp.f64 im)))) (pow.f64 re 3)) (*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))))
(+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 -3/8 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 4)) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2)) (pow.f64 re 4))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 3)) (*.f64 -1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (pow.f64 re 3))))))
(fma.f64 1/24 (*.f64 (fma.f64 -3/8 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 4) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2)) (pow.f64 re 4)) (fma.f64 -1/8 (*.f64 (*.f64 re re) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2)) (fma.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 1/6 (*.f64 (fma.f64 1/4 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 3) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) -1/2)) (pow.f64 re 3))))))
(fma.f64 1/24 (*.f64 (fma.f64 -3/8 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 4) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2)) (pow.f64 re 4)) (fma.f64 -1/8 (*.f64 re (*.f64 re (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2))) (fma.f64 1/6 (*.f64 (fma.f64 1/4 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 3) (fma.f64 (exp.f64 im) -1/2 (/.f64 -1/2 (exp.f64 im)))) (pow.f64 re 3)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re)))))
(fma.f64 1/24 (*.f64 (fma.f64 -3/8 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 4) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2)) (pow.f64 re 4)) (fma.f64 -1/8 (*.f64 (*.f64 re re) (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 2)) (fma.f64 1/6 (*.f64 (fma.f64 1/4 (pow.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 3) (fma.f64 (exp.f64 im) -1/2 (/.f64 -1/2 (exp.f64 im)))) (pow.f64 re 3)) (*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 (sin.f64 re) 1))
(log.f64 (+.f64 1 (sin.f64 re)))
(log1p.f64 (sin.f64 re))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) (+.f64 (sin.f64 re) 1))) (log.f64 (+.f64 (sin.f64 re) 1)))
(fma.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (*.f64 im im)) (+.f64 1 (sin.f64 re))) (log.f64 (+.f64 1 (sin.f64 re))))
(fma.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 1 (sin.f64 re)) (*.f64 im im))) (log1p.f64 (sin.f64 re)))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 im im) (+.f64 1 (sin.f64 re))) (sin.f64 re)) (log1p.f64 (sin.f64 re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) (+.f64 (sin.f64 re) 1))) (+.f64 (log.f64 (+.f64 (sin.f64 re) 1)) (*.f64 1/24 (*.f64 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 (sin.f64 re) 1) 2))) (/.f64 (sin.f64 re) (+.f64 (sin.f64 re) 1))) (pow.f64 im 4)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (*.f64 im im)) (+.f64 1 (sin.f64 re))) (log.f64 (+.f64 1 (sin.f64 re)))) (*.f64 1/24 (*.f64 (fma.f64 -3 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 1 (sin.f64 re)) 2)) (/.f64 (sin.f64 re) (+.f64 1 (sin.f64 re)))) (pow.f64 im 4))))
(fma.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 1 (sin.f64 re)) (*.f64 im im))) (fma.f64 1/24 (*.f64 (fma.f64 -3 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 1 (sin.f64 re)) 2)) (/.f64 (sin.f64 re) (+.f64 1 (sin.f64 re)))) (pow.f64 im 4)) (log1p.f64 (sin.f64 re))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 im im) (+.f64 1 (sin.f64 re))) (sin.f64 re)) (fma.f64 1/24 (*.f64 (fma.f64 -3 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 1 (sin.f64 re)) 2)) (/.f64 (sin.f64 re) (+.f64 1 (sin.f64 re)))) (pow.f64 im 4)) (log1p.f64 (sin.f64 re))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) (+.f64 (sin.f64 re) 1))) (+.f64 (log.f64 (+.f64 (sin.f64 re) 1)) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 (sin.f64 re) 1) 2))) (/.f64 (sin.f64 re) (+.f64 (sin.f64 re) 1))) (pow.f64 im 4))) (*.f64 1/720 (*.f64 (+.f64 (/.f64 (sin.f64 re) (+.f64 (sin.f64 re) 1)) (+.f64 (*.f64 30 (/.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (+.f64 (sin.f64 re) 1) 3))) (*.f64 -15 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 (sin.f64 re) 1) 2))))) (pow.f64 im 6))))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (*.f64 im im)) (+.f64 1 (sin.f64 re))) (log.f64 (+.f64 1 (sin.f64 re)))) (fma.f64 1/24 (*.f64 (fma.f64 -3 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 1 (sin.f64 re)) 2)) (/.f64 (sin.f64 re) (+.f64 1 (sin.f64 re)))) (pow.f64 im 4)) (*.f64 1/720 (*.f64 (+.f64 (/.f64 (sin.f64 re) (+.f64 1 (sin.f64 re))) (fma.f64 30 (/.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (+.f64 1 (sin.f64 re)) 3)) (*.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 1 (sin.f64 re)) 2)) -15))) (pow.f64 im 6)))))
(+.f64 (fma.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 1 (sin.f64 re)) (*.f64 im im))) (log1p.f64 (sin.f64 re))) (fma.f64 1/24 (*.f64 (fma.f64 -3 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 1 (sin.f64 re)) 2)) (/.f64 (sin.f64 re) (+.f64 1 (sin.f64 re)))) (pow.f64 im 4)) (*.f64 (+.f64 (/.f64 (sin.f64 re) (+.f64 1 (sin.f64 re))) (fma.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 1 (sin.f64 re)) 2)) -15 (*.f64 30 (/.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (+.f64 1 (sin.f64 re)) 3))))) (*.f64 (pow.f64 im 6) 1/720))))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 (*.f64 im im) (+.f64 1 (sin.f64 re))) (sin.f64 re)) (log1p.f64 (sin.f64 re))) (fma.f64 1/24 (*.f64 (fma.f64 -3 (/.f64 (pow.f64 (sin.f64 re) 2) (pow.f64 (+.f64 1 (sin.f64 re)) 2)) (/.f64 (sin.f64 re) (+.f64 1 (sin.f64 re)))) (pow.f64 im 4)) (*.f64 (+.f64 (/.f64 (sin.f64 re) (+.f64 1 (sin.f64 re))) (fma.f64 30 (pow.f64 (/.f64 (sin.f64 re) (+.f64 1 (sin.f64 re))) 3) (/.f64 (pow.f64 (sin.f64 re) 2) (/.f64 (pow.f64 (+.f64 1 (sin.f64 re)) 2) -15)))) (*.f64 1/720 (pow.f64 im 6)))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/2 re) (*.f64 (pow.f64 re 3) -1/12)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re (+.f64 (*.f64 (*.f64 re re) -1/12) 1/2)))
(+.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 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5)))))
(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 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re))))
(+.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 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5))))))
(+.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 (pow.f64 re 3) -1/12))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re)) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 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 (*.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 (sin.f64 re) (*.f64 im im)) (sin.f64 re)) (*.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 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 (sin.f64 re) (*.f64 im im)) (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 (sin.f64 re) (*.f64 im im)) (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 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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))) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(fma.f64 -1/6 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re)))
(fma.f64 -1/6 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (fma.f64 1/120 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5)) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) -1/6 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 re (*.f64 (pow.f64 re 5) 1/120))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 re (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 5) 1/120))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))))
(fma.f64 -1/6 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (fma.f64 1/120 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5)) (fma.f64 -1/5040 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 7)) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 re (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 5) 1/120))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (+.f64 re (*.f64 (pow.f64 re 7) -1/5040)) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 5) 1/120))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 2 (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(fma.f64 2 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2))
(*.f64 (sin.f64 re) (+.f64 2 (*.f64 im im)))
(+.f64 (*.f64 1/12 (*.f64 (sin.f64 re) (pow.f64 im 4))) (+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/12 (*.f64 (sin.f64 re) (pow.f64 im 4)) (fma.f64 2 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 im im))))
(fma.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/12 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2)))
(*.f64 (sin.f64 re) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (*.f64 1/12 (*.f64 (sin.f64 re) (pow.f64 im 4))) (+.f64 (*.f64 1/360 (*.f64 (sin.f64 re) (pow.f64 im 6))) (+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(fma.f64 1/12 (*.f64 (sin.f64 re) (pow.f64 im 4)) (fma.f64 1/360 (*.f64 (sin.f64 re) (pow.f64 im 6)) (fma.f64 2 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 im im)))))
(fma.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/12 (fma.f64 (*.f64 (sin.f64 re) (pow.f64 im 6)) 1/360 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2))))
(fma.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 1/12 (*.f64 (sin.f64 re) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 6) 1/360))))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(*.f64 1 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(*.f64 (sqrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (sqrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(*.f64 (*.f64 (cbrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (cbrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (cbrt.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(pow.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 1)
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(log.f64 (+.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(cbrt.f64 (*.f64 (*.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(expm1.f64 (log1p.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(exp.f64 (log.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
(log1p.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2)))
(log1p.f64 (*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) 1)
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.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 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 1/2)
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (sqrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(pow.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 1)
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(log.f64 (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(cbrt.f64 (*.f64 (*.f64 (*.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 (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) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(exp.f64 (log.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (sin.f64 re) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(+.f64 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))) (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(+.f64 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)) (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(pow.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 1)
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(log.f64 (exp.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(cbrt.f64 (*.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re))

eval506.0ms (5.6%)

Compiler

Compiled 20248 to 12698 computations (37.3% saved)

prune205.0ms (2.3%)

Pruning

10 alts after pruning (5 fresh and 5 done)

PrunedKeptTotal
New7215726
Fresh000
Picked101
Done055
Total72210732
Error
0b
Counts
732 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
0.3b
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
60.7b
(*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))
0.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.0b
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
0.2b
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
0.5b
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/24 (pow.f64 im 4))))
28.8b
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
60.9b
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
0.5b
(sin.f64 re)
0.3b
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2)))))
Compiler

Compiled 177 to 136 computations (23.2% saved)

localize21.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2))
0.1b
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2)))))
0.2b
(log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2))))
Compiler

Compiled 57 to 29 computations (49.1% saved)

series39.0ms (0.4%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
17.0ms
re
@inf
(log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2))))
14.0ms
re
@-inf
(log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2))))
2.0ms
re
@0
(log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2))))
1.0ms
im
@inf
(log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2))))
1.0ms
re
@0
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2)))))

rewrite96.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
922×associate-*r/
798×swap-sqr
714×distribute-rgt-in
680×associate-*l/
674×distribute-lft-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01473
129573
2342073
Stop Event
node limit
Counts
3 → 200
Calls
Call 1
Inputs
(log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2))))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) (sqrt.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) (pow.f64 (cbrt.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 2) (cbrt.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) (*.f64 1/2 (*.f64 (sin.f64 re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 (sin.f64 re) 2)) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) (*.f64 (*.f64 1/2 (sin.f64 re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) (*.f64 (*.f64 (sin.f64 re) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 re) 2) 1/2) (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re))) (*.f64 2 (*.f64 1/2 (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1)) (*.f64 1/2 (*.f64 (*.f64 (sin.f64 re) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (*.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))) (*.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) 2)) (*.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2)) (*.f64 1 (*.f64 (*.f64 (sin.f64 re) 2) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)))) (*.f64 1 (*.f64 2 (*.f64 1/2 (sin.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 2 (*.f64 1/2 (sin.f64 re)))) (*.f64 1 (*.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) (*.f64 im im)) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1) 1/2) (*.f64 (*.f64 (*.f64 (sin.f64 re) 2) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))) 1) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) 1) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) 1) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2) 1) (*.f64 (*.f64 (*.f64 (sin.f64 re) 2) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re))) 1) (*.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) 1) (*.f64 (*.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 1/2 (sin.f64 re)) 1)) (*.f64 2 (*.f64 (*.f64 1/2 (sin.f64 re)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 (*.f64 1/2 (sin.f64 re)) 1)) (*.f64 (*.f64 im im) (*.f64 (*.f64 1/2 (sin.f64 re)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 2 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 2) (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 2)) (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) (fma.f64 im im 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (fma.f64 im im 2)) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 im 4) -4)) (+.f64 (pow.f64 im 4) -4)) (fma.f64 im im 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 im 4) -4)) (-.f64 (pow.f64 im 6) 8)) (+.f64 (pow.f64 im 4) (*.f64 2 (fma.f64 im im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 im 6))) (-.f64 (*.f64 (*.f64 im im) (pow.f64 im 6)) (*.f64 (-.f64 4 (*.f64 im (*.f64 im 2))) (-.f64 4 (*.f64 im (*.f64 im 2)))))) (-.f64 (pow.f64 im 4) (-.f64 4 (*.f64 im (*.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 im 6))) (+.f64 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (-.f64 4 (*.f64 im (*.f64 im 2))) 3))) (+.f64 (*.f64 (*.f64 im im) (pow.f64 im 6)) (*.f64 (-.f64 4 (*.f64 im (*.f64 im 2))) (-.f64 (-.f64 4 (*.f64 im (*.f64 im 2))) (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 1 (fma.f64 im im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) (/.f64 1 (fma.f64 im im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 im 4) -4)) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 im 6))) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)) 1) (+.f64 2 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1) 3) 1) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)) (+.f64 2 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (pow.f64 im 4) -4))) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 8 (pow.f64 im 6)))) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 (+.f64 (pow.f64 im 4) -4) (sin.f64 re))) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 (+.f64 8 (pow.f64 im 6)) (sin.f64 re))) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (-.f64 (*.f64 (pow.f64 im 4) (pow.f64 (sin.f64 re) 2)) (*.f64 4 (pow.f64 (sin.f64 re) 2)))) (*.f64 (sin.f64 re) (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 3) (pow.f64 (*.f64 (sin.f64 re) 2) 3))) (+.f64 (*.f64 (pow.f64 im 4) (pow.f64 (sin.f64 re) 2)) (*.f64 (*.f64 (sin.f64 re) 2) (-.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 im 4) -4))) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 im 6)))) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)) 1)) (+.f64 2 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (pow.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1) 3) 1)) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)) (+.f64 2 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (neg.f64 (pow.f64 im 4)) 4)) (neg.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 -8 (neg.f64 (pow.f64 im 6)))) (neg.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) 1) (/.f64 1 (fma.f64 im im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) (+.f64 (pow.f64 im 4) -4)) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) (+.f64 8 (pow.f64 im 6))) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) (+.f64 (neg.f64 (pow.f64 im 4)) 4)) (neg.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1) (+.f64 -8 (neg.f64 (pow.f64 im 6)))) (neg.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (+.f64 (pow.f64 im 4) -4))) (sqrt.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (+.f64 8 (pow.f64 im 6)))) (sqrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (+.f64 (pow.f64 im 4) -4))) (cbrt.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (+.f64 8 (pow.f64 im 6)))) (cbrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 im 4) -4) (*.f64 1/2 (sin.f64 re))) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (*.f64 1/2 (sin.f64 re))) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) (*.f64 1/2 (sin.f64 re))) (-.f64 2 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 im 4)) 4) (*.f64 1/2 (sin.f64 re))) (neg.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -8 (neg.f64 (pow.f64 im 6))) (*.f64 1/2 (sin.f64 re))) (neg.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 im 4) -4)) 1/2) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 8 (pow.f64 im 6))) 1/2) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 (pow.f64 im 4) -4) (sin.f64 re)) 1/2) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (sin.f64 re)) 1/2) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im 4) (pow.f64 (sin.f64 re) 2)) (*.f64 4 (pow.f64 (sin.f64 re) 2))) 1/2) (*.f64 (sin.f64 re) (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 3) (pow.f64 (*.f64 (sin.f64 re) 2) 3)) 1/2) (+.f64 (*.f64 (pow.f64 im 4) (pow.f64 (sin.f64 re) 2)) (*.f64 (*.f64 (sin.f64 re) 2) (-.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 im 4) -4)) 1) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 im 6))) 1) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)) 1) 1) (+.f64 2 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1) 3) 1) 1) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)) (+.f64 2 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 im 4) -4)) 1) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 im 4) -4)) (sqrt.f64 (fma.f64 im im -2))) (sqrt.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 im 4) -4)) (*.f64 (cbrt.f64 (fma.f64 im im -2)) (cbrt.f64 (fma.f64 im im -2)))) (cbrt.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 im 6))) 1) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 im 6))) (sqrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))) (sqrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 im 6))) (*.f64 (cbrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))) (cbrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))) (cbrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 im im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (*.f64 im im)) (*.f64 (sin.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1) (*.f64 (*.f64 (sin.f64 re) 2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 re) 2) 1) (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1)) (*.f64 1 (*.f64 (*.f64 (sin.f64 re) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1) 1) (*.f64 (*.f64 (*.f64 (sin.f64 re) 2) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 re) (/.f64 1 (fma.f64 im im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 im 4) -4) (/.f64 (fma.f64 im im -2) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 8 (pow.f64 im 6)) (/.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 im 4) -4)) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 8 (pow.f64 im 6))) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 im 4) -4) (sin.f64 re)) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (sin.f64 re)) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 im 4) (pow.f64 (sin.f64 re) 2)) (*.f64 4 (pow.f64 (sin.f64 re) 2))) (*.f64 (sin.f64 re) (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 3) (pow.f64 (*.f64 (sin.f64 re) 2) 3)) (+.f64 (*.f64 (pow.f64 im 4) (pow.f64 (sin.f64 re) 2)) (*.f64 (*.f64 (sin.f64 re) 2) (-.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (neg.f64 (pow.f64 im 4)) 4)) (neg.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 -8 (neg.f64 (pow.f64 im 6)))) (neg.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 (pow.f64 im 4) -4))) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (sin.f64 re) (+.f64 8 (pow.f64 im 6)))) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (+.f64 (pow.f64 im 4) -4) (sin.f64 re))) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (+.f64 8 (pow.f64 im 6)) (sin.f64 re))) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 im 4) (pow.f64 (sin.f64 re) 2)) (*.f64 4 (pow.f64 (sin.f64 re) 2)))) (*.f64 (sin.f64 re) (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 3) (pow.f64 (*.f64 (sin.f64 re) 2) 3))) (+.f64 (*.f64 (pow.f64 im 4) (pow.f64 (sin.f64 re) 2)) (*.f64 (*.f64 (sin.f64 re) 2) (-.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (+.f64 (pow.f64 im 4) -4))) (sqrt.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (+.f64 8 (pow.f64 im 6)))) (sqrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (+.f64 (pow.f64 im 4) -4))) (cbrt.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (+.f64 8 (pow.f64 im 6)))) (cbrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) (sin.f64 re)) (-.f64 2 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 im 4)) 4) (sin.f64 re)) (neg.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -8 (neg.f64 (pow.f64 im 6))) (sin.f64 re)) (neg.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 im 4) -4)) 1) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 8 (pow.f64 im 6))) 1) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 (pow.f64 im 4) -4) (sin.f64 re)) 1) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (sin.f64 re)) 1) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im 4) (pow.f64 (sin.f64 re) 2)) (*.f64 4 (pow.f64 (sin.f64 re) 2))) 1) (*.f64 (sin.f64 re) (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 3) (pow.f64 (*.f64 (sin.f64 re) 2) 3)) 1) (+.f64 (*.f64 (pow.f64 im 4) (pow.f64 (sin.f64 re) 2)) (*.f64 (*.f64 (sin.f64 re) 2) (-.f64 (*.f64 (sin.f64 re) 2) (*.f64 (sin.f64 re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 im 4) -4)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sin.f64 re))) (sqrt.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 8 (pow.f64 im 6))) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sin.f64 re))) (sqrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 im 4) -4)) 1) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 im 4) -4)) (sqrt.f64 (fma.f64 im im -2))) (sqrt.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 im 4) -4)) (*.f64 (cbrt.f64 (fma.f64 im im -2)) (cbrt.f64 (fma.f64 im im -2)))) (cbrt.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 8 (pow.f64 im 6))) 1) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 8 (pow.f64 im 6))) (sqrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))) (sqrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 8 (pow.f64 im 6))) (*.f64 (cbrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))) (cbrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))) (cbrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (pow.f64 im 4) -4) (sin.f64 re)) 1) (fma.f64 im im -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (pow.f64 im 4) -4) (sin.f64 re)) (sqrt.f64 (fma.f64 im im -2))) (sqrt.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (pow.f64 im 4) -4) (sin.f64 re)) (*.f64 (cbrt.f64 (fma.f64 im im -2)) (cbrt.f64 (fma.f64 im im -2)))) (cbrt.f64 (fma.f64 im im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (sin.f64 re)) 1) (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (sin.f64 re)) (sqrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2))))) (sqrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (sin.f64 re)) (*.f64 (cbrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))) (cbrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))) (cbrt.f64 (+.f64 4 (*.f64 (*.f64 im im) (fma.f64 im im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 im im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 im im 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (sin.f64 re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 re) (*.f64 im im) (*.f64 (sin.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 im im) (sin.f64 re) (*.f64 (sin.f64 re) 2))))))

simplify153.0ms (1.7%)

Algorithm
egg-herbie
Rules
1242×associate-/l*
990×associate-*l*
962×associate-*r*
880×+-commutative
612×fma-def
Iterations

Useful iterations: 2 (0.0ms)

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

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/2 (*.f64 im im))
0.0b
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
Compiler

Compiled 30 to 16 computations (46.7% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.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
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))))

rewrite62.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
914×*-commutative
742×unswap-sqr
564×swap-sqr
504×associate-*r/
488×distribute-lft-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01025
120921
2263121
Stop Event
node limit
Counts
1 → 55
Calls
Call 1
Inputs
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 re (*.f64 (*.f64 im im) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 re)) (-.f64 1 (*.f64 (*.f64 im im) (*.f64 re 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (exp.f64 (log1p.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 re (/.f64 1 (fma.f64 1/2 (*.f64 im im) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (/.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2))) re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))) (/.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re))) (+.f64 re (*.f64 (*.f64 im (*.f64 im -1/2)) re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) 3)) (+.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (-.f64 (*.f64 1/4 (pow.f64 im 4)) 1)) (-.f64 (*.f64 1/2 (*.f64 im im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))) (+.f64 -1 (neg.f64 (*.f64 im (*.f64 im -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (+.f64 -1 (neg.f64 (*.f64 1/8 (pow.f64 im 6))))) (neg.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4)))) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6))))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (*.f64 re re) (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re)))) (+.f64 re (*.f64 (*.f64 im (*.f64 im -1/2)) re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) 3))) (+.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2)) (cbrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))))) (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2)) (cbrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))) (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) 1) re) (-.f64 (*.f64 1/2 (*.f64 im im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4))) re) (+.f64 -1 (neg.f64 (*.f64 im (*.f64 im -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -1 (neg.f64 (*.f64 1/8 (pow.f64 im 6)))) re) (neg.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) 1) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) 1) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re))) 1) (+.f64 re (*.f64 (*.f64 im (*.f64 im -1/2)) re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) 3)) 1) (+.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6)))) (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4))) (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) 1) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2))))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) (*.f64 (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))) (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))) (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) 1) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) (*.f64 (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))) (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))) (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re)) (*.f64 re re)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) 1) 3) (pow.f64 re 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 re 1 (*.f64 (*.f64 im im) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 re (*.f64 (*.f64 im im) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2)))))))

simplify82.0ms (0.9%)

Algorithm
egg-herbie
Rules
1422×times-frac
1166×associate-+r+
958×associate-/l*
904×associate-+l+
686×*-commutative
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01873099
14882845
216732821
366572821
Stop Event
node limit
Counts
79 → 88
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 re (*.f64 (*.f64 im im) (*.f64 re 1/2)))
(+.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re)
(-.f64 (exp.f64 (log1p.f64 re)) (-.f64 1 (*.f64 (*.f64 im im) (*.f64 re 1/2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))) 1)
(-.f64 (+.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (exp.f64 (log1p.f64 re))) 1)
(/.f64 re (/.f64 1 (fma.f64 1/2 (*.f64 im im) 1)))
(/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (/.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2))) re))
(/.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))) (/.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re))
(/.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) (+.f64 1 (*.f64 im (*.f64 im -1/2))))
(/.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re))) (+.f64 re (*.f64 (*.f64 im (*.f64 im -1/2)) re)))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) 3)) (+.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))))
(/.f64 (*.f64 re (-.f64 (*.f64 1/4 (pow.f64 im 4)) 1)) (-.f64 (*.f64 1/2 (*.f64 im im)) 1))
(/.f64 (*.f64 re (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))) (+.f64 -1 (neg.f64 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (*.f64 re (+.f64 -1 (neg.f64 (*.f64 1/8 (pow.f64 im 6))))) (neg.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (*.f64 1 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4)))) (+.f64 1 (*.f64 im (*.f64 im -1/2))))
(/.f64 (*.f64 1 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6))))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (*.f64 1 (-.f64 (*.f64 re re) (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re)))) (+.f64 re (*.f64 (*.f64 im (*.f64 im -1/2)) re)))
(/.f64 (*.f64 1 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) 3))) (+.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))))
(/.f64 (*.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (*.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (*.f64 (*.f64 re (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2)) (cbrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))))) (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (*.f64 (*.f64 re (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2)) (cbrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))) (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (*.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) 1) re) (-.f64 (*.f64 1/2 (*.f64 im im)) 1))
(/.f64 (*.f64 (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4))) re) (+.f64 -1 (neg.f64 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (*.f64 (+.f64 -1 (neg.f64 (*.f64 1/8 (pow.f64 im 6)))) re) (neg.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (*.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) 1) (+.f64 1 (*.f64 im (*.f64 im -1/2))))
(/.f64 (*.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) 1) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re))) 1) (+.f64 re (*.f64 (*.f64 im (*.f64 im -1/2)) re)))
(/.f64 (*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) 3)) 1) (+.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6)))) (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4))) (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) 1) (+.f64 1 (*.f64 im (*.f64 im -1/2))))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2))))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) (*.f64 (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))) (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))) (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) 1) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) (*.f64 (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))) (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))) (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re)) (*.f64 re re)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))
(pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 1)
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 2)
(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)) 3) 1/3)
(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)))))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) 1) 3) (pow.f64 re 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))))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))
(fma.f64 re 1 (*.f64 (*.f64 im im) (*.f64 re 1/2)))
(fma.f64 1 re (*.f64 (*.f64 im im) (*.f64 re 1/2)))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2)))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2)))
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 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 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 re (*.f64 (*.f64 im im) (*.f64 re 1/2)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(-.f64 (exp.f64 (log1p.f64 re)) (-.f64 1 (*.f64 (*.f64 im im) (*.f64 re 1/2))))
(*.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 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (exp.f64 (log1p.f64 re))) 1)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(/.f64 re (/.f64 1 (fma.f64 1/2 (*.f64 im im) 1)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (/.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2))) re))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))) (/.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re))
(/.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))) (/.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) 1) re) (fma.f64 (pow.f64 im 4) 1/4 (fma.f64 im (*.f64 im -1/2) 1)))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (fma.f64 im (*.f64 im -1/2) (fma.f64 (pow.f64 im 4) 1/4 1)))
(/.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) (+.f64 1 (*.f64 im (*.f64 im -1/2))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))) (/.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) 1) re) (fma.f64 (pow.f64 im 4) 1/4 (fma.f64 im (*.f64 im -1/2) 1)))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (fma.f64 im (*.f64 im -1/2) (fma.f64 (pow.f64 im 4) 1/4 1)))
(/.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re))) (+.f64 re (*.f64 (*.f64 im (*.f64 im -1/2)) re)))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) 3)) (+.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) 3)) (fma.f64 re re (*.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) (-.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) re))))
(/.f64 (fma.f64 (pow.f64 im 6) (*.f64 1/8 (pow.f64 re 3)) (pow.f64 re 3)) (fma.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) (-.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) re) (*.f64 re re)))
(/.f64 (fma.f64 1/8 (*.f64 (pow.f64 im 6) (pow.f64 re 3)) (pow.f64 re 3)) (fma.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) (*.f64 re (fma.f64 1/2 (*.f64 im im) -1)) (*.f64 re re)))
(/.f64 (*.f64 re (-.f64 (*.f64 1/4 (pow.f64 im 4)) 1)) (-.f64 (*.f64 1/2 (*.f64 im im)) 1))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 re (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))) (+.f64 -1 (neg.f64 (*.f64 im (*.f64 im -1/2)))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 re (+.f64 -1 (neg.f64 (*.f64 1/8 (pow.f64 im 6))))) (neg.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (*.f64 re (+.f64 -1 (*.f64 -1/8 (pow.f64 im 6)))) (neg.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(*.f64 (/.f64 re (+.f64 (*.f64 (pow.f64 im 4) -1/4) (fma.f64 1/2 (*.f64 im im) -1))) (fma.f64 -1/8 (pow.f64 im 6) -1))
(*.f64 (fma.f64 (pow.f64 im 6) -1/8 -1) (/.f64 re (fma.f64 (pow.f64 im 4) -1/4 (fma.f64 1/2 (*.f64 im im) -1))))
(/.f64 (*.f64 1 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4)))) (+.f64 1 (*.f64 im (*.f64 im -1/2))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 1 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6))))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))) (/.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) 1) re) (fma.f64 (pow.f64 im 4) 1/4 (fma.f64 im (*.f64 im -1/2) 1)))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (fma.f64 im (*.f64 im -1/2) (fma.f64 (pow.f64 im 4) 1/4 1)))
(/.f64 (*.f64 1 (-.f64 (*.f64 re re) (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re)))) (+.f64 re (*.f64 (*.f64 im (*.f64 im -1/2)) re)))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 1 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) 3))) (+.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) 3)) (fma.f64 re re (*.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) (-.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) re))))
(/.f64 (fma.f64 (pow.f64 im 6) (*.f64 1/8 (pow.f64 re 3)) (pow.f64 re 3)) (fma.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) (-.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) re) (*.f64 re re)))
(/.f64 (fma.f64 1/8 (*.f64 (pow.f64 im 6) (pow.f64 re 3)) (pow.f64 re 3)) (fma.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) (*.f64 re (fma.f64 1/2 (*.f64 im im) -1)) (*.f64 re re)))
(/.f64 (*.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2))))) (sqrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 1/8 (pow.f64 im 6) 1)) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 (fma.f64 im (*.f64 im -1/2) 1)))) (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (/.f64 re (sqrt.f64 (fma.f64 im (*.f64 im -1/2) (fma.f64 (pow.f64 im 4) 1/4 1)))) (*.f64 (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (fma.f64 1/8 (pow.f64 im 6) 1))))
(/.f64 (*.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))) (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) -1/4 1)) (/.f64 (/.f64 (sqrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) -1/4 1)) (sqrt.f64 (fma.f64 im (*.f64 im -1/2) 1))))
(/.f64 (*.f64 (*.f64 re (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2)) (cbrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))))) (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (*.f64 (*.f64 re (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2)) (cbrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))))) (cbrt.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(*.f64 (/.f64 (*.f64 re (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2)) (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/4 (fma.f64 im (*.f64 im -1/2) 1)))) (cbrt.f64 (fma.f64 1/8 (pow.f64 im 6) 1)))
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2) (/.f64 (cbrt.f64 (fma.f64 im (*.f64 im -1/2) (fma.f64 (pow.f64 im 4) 1/4 1))) (*.f64 re (cbrt.f64 (fma.f64 1/8 (pow.f64 im 6) 1)))))
(/.f64 (*.f64 (*.f64 re (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2)) (cbrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))) (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (*.f64 re (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2)) (/.f64 (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))) (cbrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))))
(*.f64 (/.f64 (*.f64 re (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2)) (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1))) (cbrt.f64 (fma.f64 (pow.f64 im 4) -1/4 1)))
(*.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) -1/4 1)) (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/2 (*.f64 im im) 1)) 2) (/.f64 (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) re)))
(/.f64 (*.f64 (-.f64 (*.f64 1/4 (pow.f64 im 4)) 1) re) (-.f64 (*.f64 1/2 (*.f64 im im)) 1))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (neg.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4))) re) (+.f64 -1 (neg.f64 (*.f64 im (*.f64 im -1/2)))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (+.f64 -1 (neg.f64 (*.f64 1/8 (pow.f64 im 6)))) re) (neg.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (*.f64 re (+.f64 -1 (*.f64 -1/8 (pow.f64 im 6)))) (neg.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(*.f64 (/.f64 re (+.f64 (*.f64 (pow.f64 im 4) -1/4) (fma.f64 1/2 (*.f64 im im) -1))) (fma.f64 -1/8 (pow.f64 im 6) -1))
(*.f64 (fma.f64 (pow.f64 im 6) -1/8 -1) (/.f64 re (fma.f64 (pow.f64 im 4) -1/4 (fma.f64 1/2 (*.f64 im im) -1))))
(/.f64 (*.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) 1) (+.f64 1 (*.f64 im (*.f64 im -1/2))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) 1) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))) (/.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) 1) re) (fma.f64 (pow.f64 im 4) 1/4 (fma.f64 im (*.f64 im -1/2) 1)))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (fma.f64 im (*.f64 im -1/2) (fma.f64 (pow.f64 im 4) 1/4 1)))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re))) 1) (+.f64 re (*.f64 (*.f64 im (*.f64 im -1/2)) re)))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) 3)) 1) (+.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))))
(/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) 3)) (fma.f64 re re (*.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) (-.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) re))))
(/.f64 (fma.f64 (pow.f64 im 6) (*.f64 1/8 (pow.f64 re 3)) (pow.f64 re 3)) (fma.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) (-.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) re) (*.f64 re re)))
(/.f64 (fma.f64 1/8 (*.f64 (pow.f64 im 6) (pow.f64 re 3)) (pow.f64 re 3)) (fma.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) (*.f64 re (fma.f64 1/2 (*.f64 im im) -1)) (*.f64 re re)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6)))) (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2))))) (sqrt.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 1/8 (pow.f64 im 6) 1)) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/4 (fma.f64 im (*.f64 im -1/2) 1)))) (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (/.f64 re (sqrt.f64 (fma.f64 im (*.f64 im -1/2) (fma.f64 (pow.f64 im 4) 1/4 1)))) (*.f64 (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (fma.f64 1/8 (pow.f64 im 6) 1))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4))) (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2))))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))) (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) -1/4 1)) (/.f64 (/.f64 (sqrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) re) (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))))
(*.f64 (*.f64 re (hypot.f64 1 (*.f64 im (sqrt.f64 1/2)))) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) -1/4 1)) (sqrt.f64 (fma.f64 im (*.f64 im -1/2) 1))))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) 1) (+.f64 1 (*.f64 im (*.f64 im -1/2))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2))))) (sqrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 (pow.f64 im 4) -1/4))) (*.f64 (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))) (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))) (cbrt.f64 (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re)
(/.f64 (fma.f64 (pow.f64 im 4) -1/4 1) (/.f64 (fma.f64 im (*.f64 im -1/2) 1) re))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im 4) 1/4 -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) 1) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))
(/.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))) (/.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) 1) re) (fma.f64 (pow.f64 im 4) 1/4 (fma.f64 im (*.f64 im -1/2) 1)))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (fma.f64 im (*.f64 im -1/2) (fma.f64 (pow.f64 im 4) 1/4 1)))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2)))))) (sqrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))) (/.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) 1) re) (fma.f64 (pow.f64 im 4) 1/4 (fma.f64 im (*.f64 im -1/2) 1)))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (fma.f64 im (*.f64 im -1/2) (fma.f64 (pow.f64 im 4) 1/4 1)))
(/.f64 (/.f64 (+.f64 re (*.f64 re (*.f64 1/8 (pow.f64 im 6)))) (*.f64 (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))) (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))) (cbrt.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 1 (*.f64 im (*.f64 im -1/2))))))
(/.f64 (+.f64 1 (*.f64 1/8 (pow.f64 im 6))) (/.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 im (*.f64 im -1/2)))) re))
(/.f64 (*.f64 (fma.f64 1/8 (pow.f64 im 6) 1) re) (fma.f64 (pow.f64 im 4) 1/4 (fma.f64 im (*.f64 im -1/2) 1)))
(/.f64 (*.f64 re (fma.f64 1/8 (pow.f64 im 6) 1)) (fma.f64 im (*.f64 im -1/2) (fma.f64 (pow.f64 im 4) 1/4 1)))
(/.f64 (-.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 re re)) (*.f64 re re)) (-.f64 (*.f64 (*.f64 im im) (*.f64 re 1/2)) re))
(/.f64 (-.f64 (*.f64 1/4 (*.f64 (pow.f64 im 4) (*.f64 re re))) (*.f64 re re)) (-.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) re))
(/.f64 (*.f64 re (*.f64 re (fma.f64 (pow.f64 im 4) 1/4 -1))) (-.f64 (*.f64 1/2 (*.f64 re (*.f64 im im))) re))
(/.f64 re (/.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) -1)) (*.f64 re (fma.f64 (pow.f64 im 4) 1/4 -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 (sqrt.f64 (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))) 2)
(*.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)) 3) 1/3)
(*.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))
(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))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) 1) 3) (pow.f64 re 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))
(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 im im) (*.f64 re 1/2)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 1 re (*.f64 (*.f64 im im) (*.f64 re 1/2)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 re) (*.f64 (*.f64 im im) (*.f64 re 1/2)))
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))
Compiler

Compiled 22 to 10 computations (54.5% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite61.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1852×add-sqr-sqrt
1834×*-un-lft-identity
1698×add-cube-cbrt
1674×add-cbrt-cube
196×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01023
120023
2237423
Stop Event
node limit
Counts
1 → 13
Calls
Call 1
Inputs
(*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 1/4 (pow.f64 (sin.f64 re) 2)) (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))))))))

simplify63.0ms (0.7%)

Algorithm
egg-herbie
Rules
1334×fma-def
966×associate-+r+
910×associate-+l+
828×distribute-lft-in
780×distribute-rgt-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
071991
1189963
2734927
31961923
46999923
Stop Event
node limit
Counts
37 → 35
Calls
Call 1
Inputs
(*.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 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 (exp.f64 (log1p.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)))) 1)
(pow.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)) 1)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 2)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)) 3) 1/3)
(sqrt.f64 (*.f64 (*.f64 1/4 (pow.f64 (sin.f64 re) 2)) (pow.f64 im 4)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (*.f64 im im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))))
(exp.f64 (log.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))))
Outputs
(*.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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 re im)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (*.f64 im im))))
(*.f64 (*.f64 im im) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(*.f64 (*.f64 im im) (fma.f64 1/2 re (*.f64 -1/12 (pow.f64 re 3))))
(*.f64 im (*.f64 im (*.f64 re (fma.f64 -1/12 (*.f64 re re) 1/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)))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (*.f64 im im) (pow.f64 re 5)) (*.f64 1/2 (*.f64 re (*.f64 im im)))))
(fma.f64 -1/12 (*.f64 im (*.f64 im (pow.f64 re 3))) (*.f64 (*.f64 im im) (+.f64 (*.f64 1/2 re) (*.f64 1/240 (pow.f64 re 5)))))
(*.f64 (*.f64 im im) (+.f64 (fma.f64 -1/12 (pow.f64 re 3) (*.f64 1/240 (pow.f64 re 5))) (*.f64 1/2 re)))
(*.f64 (*.f64 im im) (fma.f64 re (fma.f64 -1/12 (*.f64 re re) 1/2) (*.f64 1/240 (pow.f64 re 5))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (*.f64 im im) (pow.f64 re 5)) (fma.f64 -1/10080 (*.f64 (*.f64 im im) (pow.f64 re 7)) (*.f64 1/2 (*.f64 re (*.f64 im im))))))
(+.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 1/2 re) (*.f64 -1/10080 (pow.f64 re 7)))) (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/240 (pow.f64 re 5)))))
(*.f64 (*.f64 im im) (+.f64 (fma.f64 1/2 re (*.f64 -1/10080 (pow.f64 re 7))) (fma.f64 -1/12 (pow.f64 re 3) (*.f64 1/240 (pow.f64 re 5)))))
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (fma.f64 1/2 re (fma.f64 -1/10080 (pow.f64 re 7) (*.f64 1/240 (pow.f64 re 5))))))
(*.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 (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 (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 (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 (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 (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 (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 (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 (exp.f64 (log1p.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)))) 1)
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(pow.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)) 1)
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 2)
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))) 3)
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(pow.f64 (pow.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)) 3) 1/3)
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(sqrt.f64 (*.f64 (*.f64 1/4 (pow.f64 (sin.f64 re) 2)) (pow.f64 im 4)))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (*.f64 im im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2)) 3))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(exp.f64 (log.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))) 1))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im)))

localize11.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (pow.f64 im 4) (sin.f64 re))
0.1b
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
Compiler

Compiled 25 to 15 computations (40% saved)

series3.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite60.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1976×add-sqr-sqrt
1954×*-un-lft-identity
1820×add-cube-cbrt
1796×add-cbrt-cube
210×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01140
122440
2253840
Stop Event
node limit
Counts
2 → 26
Calls
Call 1
Inputs
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (sin.f64 re))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/576 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/24) (*.f64 (pow.f64 im 4) (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))))))))

simplify55.0ms (0.6%)

Algorithm
egg-herbie
Rules
1736×associate-+l+
970×associate-*r/
846×associate-*l/
660×unswap-sqr
632×fma-def
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01001770
12501714
29451636
336681636
Stop Event
node limit
Counts
74 → 65
Calls
Call 1
Inputs
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (*.f64 1/24 (*.f64 re (pow.f64 im 4))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4)))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4))) (*.f64 -1/120960 (*.f64 (pow.f64 re 7) (pow.f64 im 4))))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 re (pow.f64 im 4))
(+.f64 (*.f64 re (pow.f64 im 4)) (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 4))))
(+.f64 (*.f64 re (pow.f64 im 4)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 4))) (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 4)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (pow.f64 im 4))) (+.f64 (*.f64 re (pow.f64 im 4)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 4))) (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 4))))))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))) 1)
(pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) 1)
(pow.f64 (sqrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 2)
(pow.f64 (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) 3) 1/3)
(sqrt.f64 (*.f64 1/576 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 2)))
(log.f64 (pow.f64 (exp.f64 1/24) (*.f64 (pow.f64 im 4) (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))))
(cbrt.f64 (pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(exp.f64 (log.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 1)
(pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 1)
(pow.f64 (sqrt.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))) 2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))))
Outputs
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 re))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (*.f64 1/24 (*.f64 re (pow.f64 im 4))))
(fma.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/24 (*.f64 re (pow.f64 im 4))))
(*.f64 (pow.f64 im 4) (+.f64 (*.f64 1/24 re) (*.f64 -1/144 (pow.f64 re 3))))
(*.f64 (pow.f64 im 4) (fma.f64 1/24 re (*.f64 -1/144 (pow.f64 re 3))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4)))))
(fma.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (*.f64 1/2880 (*.f64 (pow.f64 im 4) (pow.f64 re 5)))))
(fma.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 1/24 re) (*.f64 1/2880 (pow.f64 re 5)))))
(*.f64 (pow.f64 im 4) (+.f64 (*.f64 -1/144 (pow.f64 re 3)) (fma.f64 1/24 re (*.f64 1/2880 (pow.f64 re 5)))))
(*.f64 (pow.f64 im 4) (+.f64 (*.f64 1/2880 (pow.f64 re 5)) (fma.f64 1/24 re (*.f64 -1/144 (pow.f64 re 3)))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4))) (*.f64 -1/120960 (*.f64 (pow.f64 re 7) (pow.f64 im 4))))))
(fma.f64 -1/144 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (fma.f64 1/2880 (*.f64 (pow.f64 im 4) (pow.f64 re 5)) (*.f64 -1/120960 (*.f64 (pow.f64 im 4) (pow.f64 re 7))))))
(+.f64 (*.f64 (pow.f64 im 4) (+.f64 (*.f64 1/24 re) (*.f64 -1/144 (pow.f64 re 3)))) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 1/2880 (pow.f64 re 5)) (*.f64 -1/120960 (pow.f64 re 7)))))
(*.f64 (pow.f64 im 4) (+.f64 (fma.f64 1/24 re (*.f64 -1/144 (pow.f64 re 3))) (fma.f64 1/2880 (pow.f64 re 5) (*.f64 -1/120960 (pow.f64 re 7)))))
(*.f64 (pow.f64 im 4) (+.f64 (fma.f64 1/2880 (pow.f64 re 5) (*.f64 -1/120960 (pow.f64 re 7))) (fma.f64 1/24 re (*.f64 -1/144 (pow.f64 re 3)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 re (pow.f64 im 4))
(+.f64 (*.f64 re (pow.f64 im 4)) (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 4))))
(fma.f64 re (pow.f64 im 4) (*.f64 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) -1/6))
(*.f64 (pow.f64 im 4) (+.f64 re (*.f64 (pow.f64 re 3) -1/6)))
(*.f64 (pow.f64 im 4) (fma.f64 (pow.f64 re 3) -1/6 re))
(+.f64 (*.f64 re (pow.f64 im 4)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 4))) (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 4)))))
(fma.f64 re (pow.f64 im 4) (fma.f64 1/120 (*.f64 (pow.f64 im 4) (pow.f64 re 5)) (*.f64 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) -1/6)))
(fma.f64 re (pow.f64 im 4) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 5) 1/120))))
(*.f64 (pow.f64 im 4) (+.f64 re (fma.f64 (pow.f64 re 3) -1/6 (*.f64 (pow.f64 re 5) 1/120))))
(*.f64 (pow.f64 im 4) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (fma.f64 (pow.f64 re 3) -1/6 re)))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (pow.f64 im 4))) (+.f64 (*.f64 re (pow.f64 im 4)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 4))) (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 4))))))
(fma.f64 -1/5040 (*.f64 (pow.f64 im 4) (pow.f64 re 7)) (fma.f64 re (pow.f64 im 4) (fma.f64 1/120 (*.f64 (pow.f64 im 4) (pow.f64 re 5)) (*.f64 (*.f64 (pow.f64 im 4) (pow.f64 re 3)) -1/6))))
(+.f64 (*.f64 (pow.f64 im 4) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 5) 1/120))) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) re)))
(*.f64 (pow.f64 im 4) (+.f64 (fma.f64 (pow.f64 re 3) -1/6 (*.f64 (pow.f64 re 5) 1/120)) (fma.f64 (pow.f64 re 7) -1/5040 re)))
(*.f64 (pow.f64 im 4) (+.f64 (fma.f64 (pow.f64 re 7) -1/5040 re) (fma.f64 (pow.f64 re 3) -1/6 (*.f64 (pow.f64 re 5) 1/120))))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))) 1)
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) 1)
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 2)
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 3)
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(pow.f64 (pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) 3) 1/3)
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(sqrt.f64 (*.f64 1/576 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 2)))
(sqrt.f64 (*.f64 1/576 (pow.f64 (*.f64 (sin.f64 re) (pow.f64 im 4)) 2)))
(sqrt.f64 (pow.f64 (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))) 2))
(fabs.f64 (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(fabs.f64 (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re))))
(log.f64 (pow.f64 (exp.f64 1/24) (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) 3))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(exp.f64 (log.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 1))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(*.f64 (*.f64 1/24 (pow.f64 im 4)) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)))) 1)
(*.f64 (sin.f64 re) (pow.f64 im 4))
(pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 1)
(*.f64 (sin.f64 re) (pow.f64 im 4))
(pow.f64 (sqrt.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))) 2)
(*.f64 (sin.f64 re) (pow.f64 im 4))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))) 3)
(*.f64 (sin.f64 re) (pow.f64 im 4))
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 3) 1/3)
(*.f64 (sin.f64 re) (pow.f64 im 4))
(sqrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 2))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) 3))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))) 1))
(*.f64 (sin.f64 re) (pow.f64 im 4))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (pow.f64 im 4))

localize15.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 1/24 (pow.f64 im 4))
Compiler

Compiled 34 to 25 computations (26.5% saved)

eval233.0ms (2.6%)

Compiler

Compiled 11909 to 8082 computations (32.1% saved)

prune544.0ms (6%)

Pruning

13 alts after pruning (4 fresh and 9 done)

PrunedKeptTotal
New5654569
Fresh000
Picked011
Done189
Total56613579
Error
0b
Counts
579 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
60.9b
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
0.3b
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
60.7b
(*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))
0.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.0b
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
0.2b
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
0.5b
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/24 (pow.f64 im 4))))
28.8b
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
60.9b
(*.f64 1/2 (*.f64 re (*.f64 im im)))
60.9b
(*.f64 1/2 (*.f64 im (*.f64 re im)))
0.5b
(sin.f64 re)
0.3b
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2)))))
28.8b
re
Compiler

Compiled 141 to 106 computations (24.8% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/2 (*.f64 im (*.f64 re im)))
0.1b
(*.f64 im (*.f64 re im))
Compiler

Compiled 20 to 7 computations (65% saved)

series4.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite55.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1526×add-sqr-sqrt
1510×*-un-lft-identity
1400×add-cube-cbrt
1378×add-cbrt-cube
1362×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
116132
2189932
Stop Event
node limit
Counts
2 → 24
Calls
Call 1
Inputs
(*.f64 im (*.f64 re im))
(*.f64 1/2 (*.f64 im (*.f64 re im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 im (*.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (*.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 im (*.f64 im re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 im (*.f64 im re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (*.f64 im re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 im (*.f64 im re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 im) re) im))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 im (*.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 im (*.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 im (*.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (*.f64 im re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (*.f64 im (*.f64 im re)) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 im) re) im) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))))))))

simplify67.0ms (0.7%)

Algorithm
egg-herbie
Rules
1430×distribute-lft-in
1410×distribute-rgt-in
1052×fma-def
666×log-prod
636×unswap-sqr
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0641152
11601152
26801152
323501152
470631152
Stop Event
node limit
Counts
72 → 31
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 im (*.f64 im re))) 1)
(pow.f64 (*.f64 im (*.f64 im re)) 1)
(pow.f64 (sqrt.f64 (*.f64 im (*.f64 im re))) 2)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im re))) 3)
(pow.f64 (pow.f64 (*.f64 im (*.f64 im re)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 im (*.f64 im re)) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) re) im))
(cbrt.f64 (pow.f64 (*.f64 im (*.f64 im re)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (*.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im re))) 1))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im re))))
(-.f64 (+.f64 1 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 1)
(pow.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2)) 1)
(pow.f64 (sqrt.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 2)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2)) 3) 1/3)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (*.f64 im re)) 2) 1/4))
(log.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 im) re) im) 1/2))
(cbrt.f64 (pow.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))))
(exp.f64 (log.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))))
Outputs
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 re (pow.f64 im 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(-.f64 (+.f64 1 (*.f64 im (*.f64 im re))) 1)
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(pow.f64 (*.f64 im (*.f64 im re)) 1)
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(pow.f64 (sqrt.f64 (*.f64 im (*.f64 im re))) 2)
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im re))) 3)
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(pow.f64 (pow.f64 (*.f64 im (*.f64 im re)) 3) 1/3)
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(sqrt.f64 (pow.f64 (*.f64 im (*.f64 im re)) 2))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) re) im))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(cbrt.f64 (pow.f64 (*.f64 im (*.f64 im re)) 3))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im re))))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(exp.f64 (log.f64 (*.f64 im (*.f64 im re))))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im re))) 1))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im re))))
(*.f64 im (*.f64 re im))
(*.f64 re (*.f64 im im))
(-.f64 (+.f64 1 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 1)
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(pow.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2)) 1)
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(pow.f64 (sqrt.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 2)
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 3)
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(pow.f64 (pow.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2)) 3) 1/3)
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (*.f64 im re)) 2) 1/4))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(log.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 im) re) im) 1/2))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(cbrt.f64 (pow.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2)) 3))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(exp.f64 (log.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))) 1))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 (*.f64 im re) 1/2))))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/2 (*.f64 re (*.f64 im im)))
9.5b
(*.f64 re (*.f64 im im))
Compiler

Compiled 20 to 7 computations (65% saved)

series1.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
re
@inf
(*.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)))

rewrite55.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1508×add-sqr-sqrt
1490×*-un-lft-identity
1384×add-cube-cbrt
1366×add-cbrt-cube
1352×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
116332
2195232
Stop Event
node limit
Counts
2 → 24
Calls
Call 1
Inputs
(*.f64 re (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 re (*.f64 im im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 re (*.f64 im im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (sqrt.f64 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 re (*.f64 im im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (*.f64 im im)) re))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 im im))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 re (*.f64 im im))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 im im)) re) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))))))

simplify70.0ms (0.8%)

Algorithm
egg-herbie
Rules
972×log-prod
726×distribute-lft-out
698×hypot-def
532×unswap-sqr
506×cancel-sign-sub-inv
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0691152
11721152
27221152
323241152
453051152
Stop Event
node limit
Counts
72 → 31
Calls
Call 1
Inputs
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 re (pow.f64 im 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(-.f64 (+.f64 1 (*.f64 re (*.f64 im im))) 1)
(pow.f64 (*.f64 re (*.f64 im im)) 1)
(pow.f64 (*.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 im im))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3) 1/3)
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)))
(log.f64 (pow.f64 (exp.f64 (*.f64 im im)) re))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 im im))))
(exp.f64 (log.f64 (*.f64 re (*.f64 im im))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 im im))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 im im))))
(-.f64 (+.f64 1 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 1)
(pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 1)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 2)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 3) 1/3)
(sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)) 1/4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 im im)) re) 1/2))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))
(exp.f64 (log.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))
Outputs
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 re (pow.f64 im 2))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(-.f64 (+.f64 1 (*.f64 re (*.f64 im im))) 1)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(pow.f64 (*.f64 re (*.f64 im im)) 1)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(pow.f64 (*.f64 im (sqrt.f64 re)) 2)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 im im))) 3)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(pow.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3) 1/3)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(log.f64 (pow.f64 (exp.f64 (*.f64 im im)) re))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(exp.f64 (log.f64 (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 im im))) 1))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 re im))
(-.f64 (+.f64 1 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 1)
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 1)
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 2)
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 3)
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(pow.f64 (pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 3) 1/3)
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) (*.f64 re re)) 1/4))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (*.f64 im im)) re) 1/2))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 3))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(exp.f64 (log.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 1))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 im (*.f64 im (*.f64 re 1/2)))

localize11.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
0.3b
(*.f64 1/24 (sin.f64 re))
Compiler

Compiled 23 to 14 computations (39.1% saved)

series1.0ms (0%)

Counts
2 → 28
Calls

9 calls:

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

rewrite65.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1976×add-sqr-sqrt
1954×*-un-lft-identity
1820×add-cube-cbrt
1796×add-cbrt-cube
210×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01134
122434
2253834
Stop Event
node limit
Counts
2 → 26
Calls
Call 1
Inputs
(*.f64 1/24 (sin.f64 re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (sin.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/24 (sin.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/24 (sin.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/24 (sin.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/24 (sin.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 1/24 (sin.f64 re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/24) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (sin.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/24 (sin.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/24 (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/24 (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/24 (sin.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/24 (sin.f64 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 1/24 (sin.f64 re))) (*.f64 im im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 im 8) (pow.f64 (*.f64 1/24 (sin.f64 re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) (*.f64 1/24 (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))))))

simplify76.0ms (0.8%)

Algorithm
egg-herbie
Rules
848×log-prod
834×associate-/l*
818×unswap-sqr
544×associate-/l/
530×fma-def
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01021246
12511210
29241174
334191174
463271174
Stop Event
node limit
Counts
54 → 55
Calls
Call 1
Inputs
(*.f64 1/24 re)
(+.f64 (*.f64 1/24 re) (*.f64 -1/144 (pow.f64 re 3)))
(+.f64 (*.f64 1/24 re) (+.f64 (*.f64 -1/144 (pow.f64 re 3)) (*.f64 1/2880 (pow.f64 re 5))))
(+.f64 (*.f64 1/24 re) (+.f64 (*.f64 -1/120960 (pow.f64 re 7)) (+.f64 (*.f64 -1/144 (pow.f64 re 3)) (*.f64 1/2880 (pow.f64 re 5)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (*.f64 1/24 (*.f64 re (pow.f64 im 4))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4)))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4))) (*.f64 -1/120960 (*.f64 (pow.f64 re 7) (pow.f64 im 4))))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (sin.f64 re)))) 1)
(pow.f64 (*.f64 1/24 (sin.f64 re)) 1)
(pow.f64 (sqrt.f64 (*.f64 1/24 (sin.f64 re))) 2)
(pow.f64 (cbrt.f64 (*.f64 1/24 (sin.f64 re))) 3)
(pow.f64 (pow.f64 (*.f64 1/24 (sin.f64 re)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 1/24 (sin.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 1/24) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 1/24 (sin.f64 re)) 3))
(expm1.f64 (log1p.f64 (*.f64 1/24 (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 1/24 (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (sin.f64 re))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/24 (sin.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))) 1)
(pow.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) 1)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 1/24 (sin.f64 re))) (*.f64 im im)) 2)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))) 3)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) 3) 1/3)
(sqrt.f64 (*.f64 (pow.f64 im 8) (pow.f64 (*.f64 1/24 (sin.f64 re)) 2)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) (*.f64 1/24 (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) 3))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
Outputs
(*.f64 1/24 re)
(+.f64 (*.f64 1/24 re) (*.f64 -1/144 (pow.f64 re 3)))
(fma.f64 1/24 re (*.f64 -1/144 (pow.f64 re 3)))
(fma.f64 -1/144 (pow.f64 re 3) (*.f64 1/24 re))
(+.f64 (*.f64 1/24 re) (+.f64 (*.f64 -1/144 (pow.f64 re 3)) (*.f64 1/2880 (pow.f64 re 5))))
(fma.f64 1/24 re (fma.f64 -1/144 (pow.f64 re 3) (*.f64 1/2880 (pow.f64 re 5))))
(fma.f64 -1/144 (pow.f64 re 3) (fma.f64 1/2880 (pow.f64 re 5) (*.f64 1/24 re)))
(+.f64 (*.f64 1/24 re) (+.f64 (*.f64 -1/120960 (pow.f64 re 7)) (+.f64 (*.f64 -1/144 (pow.f64 re 3)) (*.f64 1/2880 (pow.f64 re 5)))))
(fma.f64 1/24 re (fma.f64 -1/120960 (pow.f64 re 7) (fma.f64 -1/144 (pow.f64 re 3) (*.f64 1/2880 (pow.f64 re 5)))))
(fma.f64 1/24 re (fma.f64 1/2880 (pow.f64 re 5) (fma.f64 -1/144 (pow.f64 re 3) (*.f64 -1/120960 (pow.f64 re 7)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(*.f64 (*.f64 1/24 re) (pow.f64 im 4))
(*.f64 re (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (*.f64 1/24 (*.f64 re (pow.f64 im 4))))
(fma.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4)) (*.f64 (*.f64 1/24 re) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (fma.f64 1/24 re (*.f64 -1/144 (pow.f64 re 3))))
(*.f64 (fma.f64 1/24 re (*.f64 -1/144 (pow.f64 re 3))) (pow.f64 im 4))
(*.f64 (fma.f64 -1/144 (pow.f64 re 3) (*.f64 1/24 re)) (pow.f64 im 4))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4)))))
(fma.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4)))))
(+.f64 (*.f64 (pow.f64 im 4) (fma.f64 1/24 re (*.f64 -1/144 (pow.f64 re 3)))) (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4))))
(*.f64 (pow.f64 im 4) (fma.f64 1/24 re (fma.f64 -1/144 (pow.f64 re 3) (*.f64 1/2880 (pow.f64 re 5)))))
(*.f64 (pow.f64 im 4) (fma.f64 -1/144 (pow.f64 re 3) (fma.f64 1/2880 (pow.f64 re 5) (*.f64 1/24 re))))
(+.f64 (*.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4))) (*.f64 -1/120960 (*.f64 (pow.f64 re 7) (pow.f64 im 4))))))
(fma.f64 -1/144 (*.f64 (pow.f64 re 3) (pow.f64 im 4)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (fma.f64 1/2880 (*.f64 (pow.f64 re 5) (pow.f64 im 4)) (*.f64 -1/120960 (*.f64 (pow.f64 re 7) (pow.f64 im 4))))))
(+.f64 (*.f64 (pow.f64 im 4) (fma.f64 1/24 re (*.f64 -1/144 (pow.f64 re 3)))) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 -1/120960 (pow.f64 re 7)) (*.f64 1/2880 (pow.f64 re 5)))))
(*.f64 (pow.f64 im 4) (fma.f64 1/24 re (fma.f64 1/2880 (pow.f64 re 5) (fma.f64 -1/144 (pow.f64 re 3) (*.f64 -1/120960 (pow.f64 re 7))))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/24 (sin.f64 re)))) 1)
(*.f64 1/24 (sin.f64 re))
(pow.f64 (*.f64 1/24 (sin.f64 re)) 1)
(*.f64 1/24 (sin.f64 re))
(pow.f64 (sqrt.f64 (*.f64 1/24 (sin.f64 re))) 2)
(*.f64 1/24 (sin.f64 re))
(pow.f64 (cbrt.f64 (*.f64 1/24 (sin.f64 re))) 3)
(*.f64 1/24 (sin.f64 re))
(pow.f64 (pow.f64 (*.f64 1/24 (sin.f64 re)) 3) 1/3)
(*.f64 1/24 (sin.f64 re))
(sqrt.f64 (pow.f64 (*.f64 1/24 (sin.f64 re)) 2))
(*.f64 1/24 (sin.f64 re))
(log.f64 (pow.f64 (exp.f64 1/24) (sin.f64 re)))
(*.f64 1/24 (sin.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (sin.f64 re)))))
(*.f64 1/24 (sin.f64 re))
(cbrt.f64 (pow.f64 (*.f64 1/24 (sin.f64 re)) 3))
(*.f64 1/24 (sin.f64 re))
(expm1.f64 (log1p.f64 (*.f64 1/24 (sin.f64 re))))
(*.f64 1/24 (sin.f64 re))
(exp.f64 (log.f64 (*.f64 1/24 (sin.f64 re))))
(*.f64 1/24 (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 1/24 (sin.f64 re))) 1))
(*.f64 1/24 (sin.f64 re))
(log1p.f64 (expm1.f64 (*.f64 1/24 (sin.f64 re))))
(*.f64 1/24 (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))) 1)
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(pow.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) 1)
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(pow.f64 (*.f64 (sqrt.f64 (*.f64 1/24 (sin.f64 re))) (*.f64 im im)) 2)
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))) 3)
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) 3) 1/3)
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(sqrt.f64 (*.f64 (pow.f64 im 8) (pow.f64 (*.f64 1/24 (sin.f64 re)) 2)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 4)) (*.f64 1/24 (sin.f64 re))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))) 3))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))) 1))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))

eval30.0ms (0.3%)

Compiler

Compiled 1353 to 899 computations (33.6% saved)

prune21.0ms (0.2%)

Pruning

14 alts after pruning (3 fresh and 11 done)

PrunedKeptTotal
New1152117
Fresh011
Picked011
Done11011
Total11614130
Error
0b
Counts
130 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
61.1b
(-.f64 (+.f64 1 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 1)
60.9b
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
0.3b
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
60.7b
(*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))
0.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.0b
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
0.2b
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
0.5b
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/24 (pow.f64 im 4))))
28.8b
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
60.9b
(*.f64 re (*.f64 (*.f64 im im) 1/2))
60.9b
(*.f64 1/2 (*.f64 im (*.f64 re im)))
0.5b
(sin.f64 re)
0.3b
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2)))))
28.8b
re
Compiler

Compiled 154 to 116 computations (24.7% saved)

regimes57.0ms (0.6%)

Counts
19 → 1
Calls
Call 1
Inputs
re
(*.f64 1/2 (*.f64 im (*.f64 re im)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(-.f64 (+.f64 1 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 1)
(sin.f64 re)
(*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (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) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
Outputs
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
Calls

6 calls:

10.0ms
re
10.0ms
(sin.f64 re)
10.0ms
im
9.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
9.0ms
(*.f64 1/2 (sin.f64 re))
Results
ErrorSegmentsBranch
0.0b1re
0.0b1im
0.0b1(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
0.0b1(*.f64 1/2 (sin.f64 re))
0.0b1(sin.f64 re)
0.0b1(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
Compiler

Compiled 218 to 130 computations (40.4% saved)

regimes50.0ms (0.6%)

Counts
16 → 1
Calls
Call 1
Inputs
re
(*.f64 1/2 (*.f64 im (*.f64 re im)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(*.f64 re (*.f64 (*.f64 im im) 1/2))
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(-.f64 (+.f64 1 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 1)
(sin.f64 re)
(*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 im im) 2)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Calls

6 calls:

10.0ms
re
9.0ms
im
8.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
8.0ms
(sin.f64 re)
8.0ms
(*.f64 1/2 (sin.f64 re))
Results
ErrorSegmentsBranch
0.0b1re
0.0b1im
0.0b1(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
0.0b1(*.f64 1/2 (sin.f64 re))
0.0b1(sin.f64 re)
0.0b1(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
Compiler

Compiled 180 to 112 computations (37.8% saved)

regimes27.0ms (0.3%)

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

3 calls:

9.0ms
re
8.0ms
(sin.f64 re)
7.0ms
im
Results
ErrorSegmentsBranch
0.2b1re
0.2b1im
0.2b1(sin.f64 re)
Compiler

Compiled 116 to 68 computations (41.4% saved)

regimes27.0ms (0.3%)

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

3 calls:

9.0ms
im
8.0ms
(sin.f64 re)
7.0ms
re
Results
ErrorSegmentsBranch
0.3b1re
0.3b1im
0.3b1(sin.f64 re)
Compiler

Compiled 100 to 58 computations (42% saved)

regimes20.0ms (0.2%)

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

3 calls:

7.0ms
re
7.0ms
(sin.f64 re)
5.0ms
im
Results
ErrorSegmentsBranch
0.5b1re
0.5b1im
0.5b1(sin.f64 re)
Compiler

Compiled 64 to 36 computations (43.8% saved)

regimes12.0ms (0.1%)

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

2 calls:

6.0ms
re
5.0ms
im
Results
ErrorSegmentsBranch
28.8b1re
28.8b1im
Compiler

Compiled 50 to 29 computations (42% saved)

regimes10.0ms (0.1%)

Accuracy

Total -32.5b remaining (-112.9%)

Threshold costs -32.5b (-112.9%)

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

2 calls:

5.0ms
re
4.0ms
im
Results
ErrorSegmentsBranch
28.8b1re
28.8b1im
Compiler

Compiled 30 to 17 computations (43.3% saved)

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Rules
22×*-commutative
12×+-commutative
sub-neg
1-exp
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
032185
152185
254185
355185
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
(sin.f64 re)
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
re
Outputs
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (/.f64 1 (exp.f64 im))) (*.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(sin.f64 re)
(*.f64 re (+.f64 1 (*.f64 1/2 (*.f64 im im))))
re
Compiler

Compiled 77 to 58 computations (24.7% saved)

soundness183.0ms (2%)

Algorithm
egg-herbie
Rules
1680×unswap-sqr
1028×associate-/r*
996×fma-def
676×*-commutative
576×associate-/l*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01435
12935
27035
312333
420533
530233
649733
7125533
8318633
9354133
10397233
11588733
12689833
Stop Event
node limit
Compiler

Compiled 129 to 77 computations (40.3% saved)

end45.0ms (0.5%)

Compiler

Compiled 65 to 39 computations (40% saved)

Profiling

Loading profile data...