Details

Time bar (total: 9.5s)

analyze211.0ms (2.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.4s (46.7%)

Results
1.3s2064×body1024valid
1.2s2020×body1024infinite
925.0ms5177×body256valid
338.0ms1008×body512valid
330.0ms1622×body256infinite
306.0ms1019×body512infinite
7.0msbody2048valid
1.0msbody2048infinite
Bogosity

preprocess67.0ms (0.7%)

Algorithm
egg-herbie
Rules
692×times-frac_binary64
614×fma-def_binary64
432×unswap-sqr_binary64
342×associate-/r/_binary64
305×associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01936
15036
213536
327334
436134
548934
683834
7219634
8483534
9545234
10690934
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) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (-.f64 0 re)) (exp.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)))
(*.f64 1/2 (*.f64 (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)

simplify64.0ms (0.7%)

Algorithm
egg-herbie
Rules
784×unswap-sqr_binary64
582×fma-def_binary64
476×fabs-mul_binary64
425×associate-/r*_binary64
357×associate-/l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01218
12818
27118
314017
418517
525217
642917
7111617
8328817
9367117
10416217
11579617
12678817
Stop Event
node limit
Counts
1 → 3
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))

eval1.0ms (0%)

Compiler

Compiled 36 to 22 computations (38.9% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New213
Fresh101
Picked000
Done000
Total314
Error
0.0b
Counts
4 → 1
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)))
Compiler

Compiled 13 to 10 computations (23.1% saved)

localize13.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
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)

series26.0ms (0.3%)

Counts
2 → 36
Calls

9 calls:

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

Compiled 2245 to 930 computations (58.6% saved)

rewrite53.0ms (0.6%)

Algorithm
egg-rewrite-iter-limit
egg-rewrite
batch-egg-rewrite
Rules
121×add-sqr-sqrt_binary64
121×add-sqr-sqrt_binary64
116×*-un-lft-identity_binary64
116×pow1_binary64
116×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01128
123328
2378028
01118
123318
2378018
01118
0610
112610
2208210
0610
Stop Event
iter limit
unsound
iter limit
unsound
unsound
Counts
2 → 19
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Outputs
((#(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 +.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 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 log1p.f64 (expm1.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 *.f64 1 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (cbrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (sqrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) (pow.f64 (exp.f64 im) 3)) (+.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) (exp.f64 im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))

simplify68.0ms (0.7%)

Algorithm
egg-herbie
Rules
595×fma-def_binary64
546×times-frac_binary64
413×associate-/l*_binary64
318×*-commutative_binary64
314×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0121972
1366924
21449859
35116845
Stop Event
node limit
Counts
55 → 77
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/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5))) (+.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/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.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)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (*.f64 (exp.f64 (neg.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 (neg.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))
(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))))))
(log1p.f64 (expm1.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))))))
(*.f64 1 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 (cbrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (cbrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sqrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (sqrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) (pow.f64 (exp.f64 im) 3)) (+.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) (exp.f64 im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(pow.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) 1)
(log.f64 (exp.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(cbrt.f64 (*.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(expm1.f64 (log1p.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(log1p.f64 (expm1.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(exp.f64 (log.f64 (+.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 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (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 (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 (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 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 -1/12 (pow.f64 re 3) (*.f64 1/2 re)))
(+.f64 (*.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5))) (+.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/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (fma.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/240 (*.f64 (pow.f64 re 5) (+.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))) (+.f64 (fma.f64 1/2 re (*.f64 -1/12 (pow.f64 re 3))) (*.f64 1/240 (pow.f64 re 5))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (fma.f64 -1/12 (pow.f64 re 3) (*.f64 1/2 re)) (*.f64 1/240 (pow.f64 re 5))))
(+.f64 (*.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))
(fma.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (fma.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/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.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))))))
(fma.f64 (pow.f64 re 5) (fma.f64 (exp.f64 im) 1/240 (/.f64 1/240 (exp.f64 im))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/2 re) (fma.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 (*.f64 1/2 re) (+.f64 (*.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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.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 (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/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 (*.f64 im im) (*.f64 1/2 (sin.f64 re)))))
(+.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 im im)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(+.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 (*.f64 1/24 (sin.f64 re)) (pow.f64 im 4)))))
(+.f64 (fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re)) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/720))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(+.f64 (+.f64 2 (*.f64 im im)) (fma.f64 1/12 (pow.f64 im 4) (*.f64 (pow.f64 im 6) 1/360)))
(+.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 im 6) 1/360 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 2 (fma.f64 (pow.f64 im 6) 1/360 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 (pow.f64 im 6) 1/360 (*.f64 im im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (*.f64 (exp.f64 (neg.f64 im)) (*.f64 1/2 (sin.f64 re))) (*.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 (*.f64 (cbrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (cbrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (cbrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 (sqrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (sqrt.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(/.f64 (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) (pow.f64 (exp.f64 im) 3)) (+.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (+.f64 (neg.f64 im) (neg.f64 im))) (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (+.f64 -1 (exp.f64 (+.f64 im im)))))
(/.f64 (+.f64 (exp.f64 (*.f64 im -3)) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (-.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) (exp.f64 im))) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(pow.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) 1)
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(log.f64 (exp.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(cbrt.f64 (*.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(expm1.f64 (log1p.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(log1p.f64 (expm1.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(exp.f64 (log.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))

eval23.0ms (0.2%)

Compiler

Compiled 1465 to 689 computations (53% saved)

prune21.0ms (0.2%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New69877
Fresh000
Picked011
Done000
Total69978
Error
0b
Counts
78 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))
0.8b
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
0.8b
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
27.7b
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
0.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) (pow.f64 (exp.f64 im) 3)) (+.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))
0.1b
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (exp.f64 (*.f64 im -3)) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (expm1.f64 (+.f64 im im)))))
0.7b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12)))
0.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0b
(sin.f64 re)
Compiler

Compiled 295 to 202 computations (31.5% saved)

localize39.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (exp.f64 im) (exp.f64 im))
0.0b
(pow.f64 (exp.f64 im) 3)
0.0b
(pow.f64 (exp.f64 (neg.f64 im)) 3)
5.2b
(-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 155 to 39 computations (74.8% saved)

series21.0ms (0.2%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
im
@-inf
(pow.f64 (exp.f64 (neg.f64 im)) 3)
1.0ms
im
@inf
(pow.f64 (exp.f64 (neg.f64 im)) 3)
1.0ms
im
@-inf
(-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
im
@inf
(-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
im
@-inf
(pow.f64 (exp.f64 im) 3)
Compiler

Compiled 2065 to 1285 computations (37.8% saved)

rewrite120.0ms (1.3%)

Algorithm
egg-rewrite
egg-rewrite-iter-limit
batch-egg-rewrite
Rules
437×pow1_binary64
429×add-sqr-sqrt_binary64
416×*-un-lft-identity_binary64
411×add-log-exp_binary64
410×log1p-expm1-u_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01160
125660
2382860
0815
118415
2313615
0815
068
11286
214356
056
11046
210776
046
1776
28833
Stop Event
node limit
node limit
node limit
iter limit
unsound
unsound
Counts
4 → 121
Calls
Call 1
Inputs
(-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(pow.f64 (exp.f64 (neg.f64 im)) 3)
(pow.f64 (exp.f64 im) 3)
(*.f64 (exp.f64 im) (exp.f64 im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (+.f64 im im)) (neg.f64 (exp.f64 (+.f64 (neg.f64 im) im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (+.f64 im im)) (*.f64 (neg.f64 (exp.f64 (neg.f64 im))) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (fma.f64 (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im)) (exp.f64 (+.f64 (neg.f64 im) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (cbrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))) (cbrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (sqrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 (+.f64 im im)) 3) (pow.f64 (exp.f64 (+.f64 (neg.f64 im) im)) 3)) (+.f64 (*.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 im im))) (+.f64 (*.f64 (exp.f64 (+.f64 (neg.f64 im) im)) (exp.f64 (+.f64 (neg.f64 im) im))) (*.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 (neg.f64 im) im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 (+.f64 (neg.f64 im) im)) (exp.f64 (+.f64 (neg.f64 im) im)))) (+.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 (neg.f64 im) im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (exp.f64 im) (exp.f64 im) (neg.f64 (exp.f64 (+.f64 (neg.f64 im) im))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (exp.f64 im) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 im) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (exp.f64 im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (*.f64 (cbrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sqrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 im) 3/2) (pow.f64 (exp.f64 im) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) 3) (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) 3) (pow.f64 (sqrt.f64 (exp.f64 im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1) (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (pow.f64 (exp.f64 im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1) (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (exp.f64 im) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (exp.f64 im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (exp.f64 im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 im 3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (exp.f64 im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (exp.f64 im) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 im) (pow.f64 (*.f64 (cbrt.f64 (exp.f64 im)) (exp.f64 im)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 im) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (exp.f64 im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (*.f64 (cbrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sqrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 im) 3/2) (pow.f64 (exp.f64 im) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 3/2) (pow.f64 (exp.f64 im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) 3/2) (pow.f64 (pow.f64 (exp.f64 im) 3/2) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (pow.f64 (exp.f64 im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (exp.f64 im) 3/2) 3/2) (pow.f64 (sqrt.f64 (exp.f64 im)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) 2) 3/2) (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (exp.f64 im) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) 3/2) (sqrt.f64 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 im) 6) (exp.f64 im)) 1/3) (pow.f64 (cbrt.f64 (exp.f64 im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 im) 6) (pow.f64 (exp.f64 im) 2)) 1/3) (cbrt.f64 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 im) 6) (pow.f64 (exp.f64 im) 3/2)) 1/3) (sqrt.f64 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 1 3/2) 2) (pow.f64 (exp.f64 im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (exp.f64 im) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (exp.f64 im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (exp.f64 im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 im 3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (expm1.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (exp.f64 im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (exp.f64 im))) 2)) (log.f64 (cbrt.f64 (exp.f64 (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (exp.f64 im)))) (log.f64 (sqrt.f64 (exp.f64 (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 (exp.f64 (+.f64 1 im)) (E.f64))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (E.f64) (+.f64 1 im)) (E.f64))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 1 (exp.f64 im)) 3) 1) (+.f64 (*.f64 (+.f64 1 (exp.f64 im)) (+.f64 1 (exp.f64 im))) (+.f64 1 (*.f64 (+.f64 1 (exp.f64 im)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (expm1.f64 im) 3)) (+.f64 1 (-.f64 (pow.f64 (expm1.f64 im) 2) (expm1.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 1 (exp.f64 im)) (+.f64 1 (exp.f64 im))) 1) (+.f64 (+.f64 1 (exp.f64 im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (expm1.f64 im) 2)) (-.f64 1 (expm1.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) im)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 8)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 12)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 5/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 5)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) 5/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) (*.f64 im 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) (*.f64 im 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) (/.f64 im 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 2) im)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) im)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (*.f64 im 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (*.f64 im 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (/.f64 im 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (E.f64) (E.f64)) im)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 1 (+.f64 1 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (exp.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 im)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 im 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 im 1/3))))))

simplify55.0ms (0.6%)

Algorithm
egg-herbie
Rules
832×times-frac_binary64
713×unswap-sqr_binary64
576×distribute-rgt-in_binary64
356×prod-exp_binary64
174×sqr-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02801794
17251396
223311274
Stop Event
node limit
Counts
169 → 200
Calls
Call 1
Inputs
(*.f64 2 im)
(+.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 2 im))
(+.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 2 im) (*.f64 4/3 (pow.f64 im 3))))
(+.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 2/3 (pow.f64 im 4)) (+.f64 (*.f64 2 im) (*.f64 4/3 (pow.f64 im 3)))))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
1
(+.f64 1 (*.f64 -3 im))
(+.f64 1 (+.f64 (*.f64 -3 im) (*.f64 9/2 (pow.f64 im 2))))
(+.f64 1 (+.f64 (*.f64 -3 im) (+.f64 (*.f64 -9/2 (pow.f64 im 3)) (*.f64 9/2 (pow.f64 im 2)))))
(*.f64 (pow.f64 (exp.f64 (neg.f64 im)) 2) (exp.f64 (neg.f64 im)))
(*.f64 (pow.f64 (exp.f64 (neg.f64 im)) 2) (exp.f64 (neg.f64 im)))
(*.f64 (pow.f64 (exp.f64 (neg.f64 im)) 2) (exp.f64 (neg.f64 im)))
(*.f64 (pow.f64 (exp.f64 (neg.f64 im)) 2) (exp.f64 (neg.f64 im)))
(*.f64 (exp.f64 (*.f64 -1 im)) (pow.f64 (exp.f64 (*.f64 -1 im)) 2))
(*.f64 (exp.f64 (*.f64 -1 im)) (pow.f64 (exp.f64 (*.f64 -1 im)) 2))
(*.f64 (exp.f64 (*.f64 -1 im)) (pow.f64 (exp.f64 (*.f64 -1 im)) 2))
(*.f64 (exp.f64 (*.f64 -1 im)) (pow.f64 (exp.f64 (*.f64 -1 im)) 2))
1
(+.f64 1 (*.f64 3 im))
(+.f64 1 (+.f64 (*.f64 3 im) (*.f64 9/2 (pow.f64 im 2))))
(+.f64 1 (+.f64 (*.f64 3 im) (+.f64 (*.f64 9/2 (pow.f64 im 3)) (*.f64 9/2 (pow.f64 im 2)))))
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
1
(+.f64 1 (*.f64 2 im))
(+.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 1 (*.f64 2 im)))
(+.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 1 (+.f64 (*.f64 2 im) (*.f64 4/3 (pow.f64 im 3)))))
(pow.f64 (exp.f64 im) 2)
(pow.f64 (exp.f64 im) 2)
(pow.f64 (exp.f64 im) 2)
(pow.f64 (exp.f64 im) 2)
(pow.f64 (exp.f64 im) 2)
(pow.f64 (exp.f64 im) 2)
(pow.f64 (exp.f64 im) 2)
(pow.f64 (exp.f64 im) 2)
(+.f64 (exp.f64 (+.f64 im im)) (neg.f64 (exp.f64 (+.f64 (neg.f64 im) im))))
(+.f64 (exp.f64 (+.f64 im im)) (*.f64 (neg.f64 (exp.f64 (neg.f64 im))) (exp.f64 im)))
(+.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (fma.f64 (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im)) (exp.f64 (+.f64 (neg.f64 im) im))))
(*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (cbrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))) (cbrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (sqrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 (+.f64 im im)) 3) (pow.f64 (exp.f64 (+.f64 (neg.f64 im) im)) 3)) (+.f64 (*.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 im im))) (+.f64 (*.f64 (exp.f64 (+.f64 (neg.f64 im) im)) (exp.f64 (+.f64 (neg.f64 im) im))) (*.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 (neg.f64 im) im))))))
(/.f64 (-.f64 (*.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 (+.f64 (neg.f64 im) im)) (exp.f64 (+.f64 (neg.f64 im) im)))) (+.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 (neg.f64 im) im))))
(pow.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) 1)
(log.f64 (exp.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(cbrt.f64 (*.f64 (*.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(exp.f64 (log.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 (exp.f64 im) (exp.f64 im) (neg.f64 (exp.f64 (+.f64 (neg.f64 im) im))))
(-.f64 (+.f64 1 (pow.f64 (exp.f64 im) 3)) 1)
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(*.f64 (pow.f64 (exp.f64 im) 3) 1)
(*.f64 1 (pow.f64 (exp.f64 im) 3))
(*.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (*.f64 (cbrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))
(*.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sqrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))
(*.f64 (pow.f64 (exp.f64 im) 3/2) (pow.f64 (exp.f64 im) 3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) 3) (exp.f64 im))
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) 3) (pow.f64 (sqrt.f64 (exp.f64 im)) 3))
(*.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1) (exp.f64 im))
(*.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (exp.f64 im)))
(*.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)))
(/.f64 1 (pow.f64 (exp.f64 im) 3))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(/.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1) (exp.f64 im))
(sqrt.f64 (pow.f64 (exp.f64 im) 6))
(log.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))
(cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3))
(expm1.f64 (log1p.f64 (pow.f64 (exp.f64 im) 3)))
(log1p.f64 (expm1.f64 (pow.f64 (exp.f64 im) 3)))
(exp.f64 (*.f64 im 3))
(+.f64 0 (pow.f64 (exp.f64 im) 3))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))))
(-.f64 (+.f64 1 (pow.f64 (exp.f64 im) 3)) 1)
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(*.f64 (exp.f64 im) (pow.f64 (*.f64 (cbrt.f64 (exp.f64 im)) (exp.f64 im)) 3/2))
(*.f64 (pow.f64 (exp.f64 im) 3) 1)
(*.f64 1 (pow.f64 (exp.f64 im) 3))
(*.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (*.f64 (cbrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))
(*.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sqrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))
(*.f64 (pow.f64 (exp.f64 im) 3/2) (pow.f64 (exp.f64 im) 3/2))
(*.f64 (pow.f64 1 3/2) (pow.f64 (exp.f64 im) 3))
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) 3/2) (pow.f64 (pow.f64 (exp.f64 im) 3/2) 3/2))
(*.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (exp.f64 im)))
(*.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)))
(*.f64 (pow.f64 1 1/3) (pow.f64 (exp.f64 im) 3))
(*.f64 (pow.f64 (pow.f64 (exp.f64 im) 3/2) 3/2) (pow.f64 (sqrt.f64 (exp.f64 im)) 3/2))
(*.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) 2) 3/2) (exp.f64 im))
(*.f64 (pow.f64 (*.f64 (exp.f64 im) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) 3/2) (sqrt.f64 (exp.f64 im)))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3)) 1/3))
(*.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 im) 6) (exp.f64 im)) 1/3) (pow.f64 (cbrt.f64 (exp.f64 im)) 2))
(*.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 im) 6) (pow.f64 (exp.f64 im) 2)) 1/3) (cbrt.f64 (exp.f64 im)))
(*.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 im) 6) (pow.f64 (exp.f64 im) 3/2)) 1/3) (sqrt.f64 (exp.f64 im)))
(*.f64 (pow.f64 (pow.f64 1 3/2) 2) (pow.f64 (exp.f64 im) 3))
(sqrt.f64 (pow.f64 (exp.f64 im) 6))
(log.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))
(cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3))
(expm1.f64 (log1p.f64 (pow.f64 (exp.f64 im) 3)))
(log1p.f64 (expm1.f64 (pow.f64 (exp.f64 im) 3)))
(exp.f64 (*.f64 im 3))
(+.f64 1 (expm1.f64 im))
(+.f64 (+.f64 1 (exp.f64 im)) -1)
(+.f64 0 (exp.f64 im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (exp.f64 im))) 2)) (log.f64 (cbrt.f64 (exp.f64 (exp.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (exp.f64 im)))) (log.f64 (sqrt.f64 (exp.f64 (exp.f64 im)))))
(-.f64 (+.f64 1 (exp.f64 im)) 1)
(/.f64 (exp.f64 (+.f64 1 im)) (E.f64))
(/.f64 (pow.f64 (E.f64) (+.f64 1 im)) (E.f64))
(/.f64 (-.f64 (pow.f64 (+.f64 1 (exp.f64 im)) 3) 1) (+.f64 (*.f64 (+.f64 1 (exp.f64 im)) (+.f64 1 (exp.f64 im))) (+.f64 1 (*.f64 (+.f64 1 (exp.f64 im)) 1))))
(/.f64 (+.f64 1 (pow.f64 (expm1.f64 im) 3)) (+.f64 1 (-.f64 (pow.f64 (expm1.f64 im) 2) (expm1.f64 im))))
(/.f64 (-.f64 (*.f64 (+.f64 1 (exp.f64 im)) (+.f64 1 (exp.f64 im))) 1) (+.f64 (+.f64 1 (exp.f64 im)) 1))
(/.f64 (-.f64 1 (pow.f64 (expm1.f64 im) 2)) (-.f64 1 (expm1.f64 im)))
(pow.f64 (exp.f64 im) 1)
(pow.f64 (exp.f64 im) 2)
(pow.f64 (exp.f64 im) im)
(pow.f64 (exp.f64 im) 4)
(pow.f64 (exp.f64 im) 8)
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 im) 1/3)
(pow.f64 (exp.f64 im) 1/2)
(pow.f64 (exp.f64 im) 9)
(pow.f64 (exp.f64 im) 1/4)
(pow.f64 (exp.f64 im) 1/9)
(pow.f64 (exp.f64 im) 1/6)
(pow.f64 (exp.f64 im) 3/2)
(pow.f64 (exp.f64 im) 6)
(pow.f64 (exp.f64 im) 2/3)
(pow.f64 (exp.f64 im) 4/3)
(pow.f64 (exp.f64 im) 12)
(pow.f64 (exp.f64 im) 5/2)
(pow.f64 (exp.f64 im) 5)
(pow.f64 (exp.f64 im) 5/6)
(pow.f64 (exp.f64 im) (*.f64 im 1/2))
(pow.f64 (exp.f64 im) (*.f64 im 1/3))
(pow.f64 (exp.f64 im) (/.f64 im 2))
(pow.f64 (exp.f64 2) im)
(pow.f64 (E.f64) im)
(pow.f64 (E.f64) (*.f64 im 1/2))
(pow.f64 (E.f64) (*.f64 im 1/3))
(pow.f64 (E.f64) (/.f64 im 2))
(pow.f64 (*.f64 (E.f64) (E.f64)) im)
(sqrt.f64 (exp.f64 im))
(fabs.f64 (exp.f64 im))
(fabs.f64 (neg.f64 (exp.f64 im)))
(fabs.f64 (-.f64 1 (+.f64 1 (exp.f64 im))))
(log.f64 (exp.f64 (exp.f64 im)))
(cbrt.f64 (exp.f64 im))
(expm1.f64 (log1p.f64 (exp.f64 im)))
(log1p.f64 (expm1.f64 (exp.f64 im)))
(exp.f64 im)
(exp.f64 (*.f64 im 1/2))
(exp.f64 (*.f64 im 1/3))
Outputs
(*.f64 2 im)
(+.f64 im im)
(+.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 2 im))
(*.f64 2 (+.f64 (*.f64 im im) im))
(*.f64 2 (fma.f64 im im im))
(+.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 2 im) (*.f64 4/3 (pow.f64 im 3))))
(fma.f64 2 (*.f64 im im) (fma.f64 2 im (*.f64 4/3 (pow.f64 im 3))))
(fma.f64 2 (fma.f64 im im im) (*.f64 4/3 (pow.f64 im 3)))
(+.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 2/3 (pow.f64 im 4)) (+.f64 (*.f64 2 im) (*.f64 4/3 (pow.f64 im 3)))))
(fma.f64 2 (*.f64 im im) (fma.f64 2/3 (pow.f64 im 4) (fma.f64 2 im (*.f64 4/3 (pow.f64 im 3)))))
(+.f64 (fma.f64 2 (fma.f64 im im im) (*.f64 4/3 (pow.f64 im 3))) (*.f64 2/3 (pow.f64 im 4)))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(-.f64 (pow.f64 (exp.f64 im) 2) (*.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
1
(+.f64 1 (*.f64 -3 im))
(+.f64 1 (*.f64 im -3))
(fma.f64 im -3 1)
(+.f64 1 (+.f64 (*.f64 -3 im) (*.f64 9/2 (pow.f64 im 2))))
(+.f64 1 (fma.f64 -3 im (*.f64 (*.f64 im im) 9/2)))
(+.f64 1 (fma.f64 (*.f64 im im) 9/2 (*.f64 im -3)))
(+.f64 1 (*.f64 im (+.f64 (*.f64 9/2 im) -3)))
(+.f64 1 (+.f64 (*.f64 -3 im) (+.f64 (*.f64 -9/2 (pow.f64 im 3)) (*.f64 9/2 (pow.f64 im 2)))))
(+.f64 1 (fma.f64 -3 im (fma.f64 -9/2 (pow.f64 im 3) (*.f64 (*.f64 im im) 9/2))))
(+.f64 (fma.f64 im -3 1) (fma.f64 (*.f64 im im) 9/2 (*.f64 (pow.f64 im 3) -9/2)))
(+.f64 (fma.f64 im -3 1) (*.f64 (*.f64 im im) (+.f64 9/2 (*.f64 -9/2 im))))
(*.f64 (pow.f64 (exp.f64 (neg.f64 im)) 2) (exp.f64 (neg.f64 im)))
(pow.f64 (exp.f64 (neg.f64 im)) 3)
(exp.f64 (*.f64 im -3))
(*.f64 (pow.f64 (exp.f64 (neg.f64 im)) 2) (exp.f64 (neg.f64 im)))
(pow.f64 (exp.f64 (neg.f64 im)) 3)
(exp.f64 (*.f64 im -3))
(*.f64 (pow.f64 (exp.f64 (neg.f64 im)) 2) (exp.f64 (neg.f64 im)))
(pow.f64 (exp.f64 (neg.f64 im)) 3)
(exp.f64 (*.f64 im -3))
(*.f64 (pow.f64 (exp.f64 (neg.f64 im)) 2) (exp.f64 (neg.f64 im)))
(pow.f64 (exp.f64 (neg.f64 im)) 3)
(exp.f64 (*.f64 im -3))
(*.f64 (exp.f64 (*.f64 -1 im)) (pow.f64 (exp.f64 (*.f64 -1 im)) 2))
(pow.f64 (exp.f64 (neg.f64 im)) 3)
(exp.f64 (*.f64 im -3))
(*.f64 (exp.f64 (*.f64 -1 im)) (pow.f64 (exp.f64 (*.f64 -1 im)) 2))
(pow.f64 (exp.f64 (neg.f64 im)) 3)
(exp.f64 (*.f64 im -3))
(*.f64 (exp.f64 (*.f64 -1 im)) (pow.f64 (exp.f64 (*.f64 -1 im)) 2))
(pow.f64 (exp.f64 (neg.f64 im)) 3)
(exp.f64 (*.f64 im -3))
(*.f64 (exp.f64 (*.f64 -1 im)) (pow.f64 (exp.f64 (*.f64 -1 im)) 2))
(pow.f64 (exp.f64 (neg.f64 im)) 3)
(exp.f64 (*.f64 im -3))
1
(+.f64 1 (*.f64 3 im))
(+.f64 1 (*.f64 im 3))
(fma.f64 im 3 1)
(+.f64 1 (+.f64 (*.f64 3 im) (*.f64 9/2 (pow.f64 im 2))))
(+.f64 1 (fma.f64 3 im (*.f64 (*.f64 im im) 9/2)))
(+.f64 1 (fma.f64 im 3 (*.f64 im (*.f64 im 9/2))))
(+.f64 1 (*.f64 im (+.f64 (*.f64 9/2 im) 3)))
(+.f64 1 (+.f64 (*.f64 3 im) (+.f64 (*.f64 9/2 (pow.f64 im 3)) (*.f64 9/2 (pow.f64 im 2)))))
(+.f64 1 (fma.f64 3 im (*.f64 9/2 (+.f64 (pow.f64 im 3) (*.f64 im im)))))
(+.f64 (fma.f64 im 3 1) (*.f64 9/2 (*.f64 im (fma.f64 im im im))))
(+.f64 1 (fma.f64 im 3 (*.f64 (*.f64 im 9/2) (fma.f64 im im im))))
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
1
(+.f64 1 (*.f64 2 im))
(+.f64 1 (+.f64 im im))
(fma.f64 2 im 1)
(+.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 1 (*.f64 2 im)))
(fma.f64 2 (*.f64 im im) (+.f64 1 (+.f64 im im)))
(+.f64 1 (*.f64 2 (fma.f64 im im im)))
(+.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 1 (+.f64 (*.f64 2 im) (*.f64 4/3 (pow.f64 im 3)))))
(fma.f64 2 (*.f64 im im) (+.f64 (fma.f64 2 im (*.f64 4/3 (pow.f64 im 3))) 1))
(+.f64 (fma.f64 2 (fma.f64 im im im) (*.f64 4/3 (pow.f64 im 3))) 1)
(pow.f64 (exp.f64 im) 2)
(exp.f64 (+.f64 im im))
(pow.f64 (exp.f64 im) 2)
(exp.f64 (+.f64 im im))
(pow.f64 (exp.f64 im) 2)
(exp.f64 (+.f64 im im))
(pow.f64 (exp.f64 im) 2)
(exp.f64 (+.f64 im im))
(pow.f64 (exp.f64 im) 2)
(exp.f64 (+.f64 im im))
(pow.f64 (exp.f64 im) 2)
(exp.f64 (+.f64 im im))
(pow.f64 (exp.f64 im) 2)
(exp.f64 (+.f64 im im))
(pow.f64 (exp.f64 im) 2)
(exp.f64 (+.f64 im im))
(+.f64 (exp.f64 (+.f64 im im)) (neg.f64 (exp.f64 (+.f64 (neg.f64 im) im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(+.f64 (exp.f64 (+.f64 im im)) (*.f64 (neg.f64 (exp.f64 (neg.f64 im))) (exp.f64 im)))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(+.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (fma.f64 (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im)) (exp.f64 (+.f64 (neg.f64 im) im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(*.f64 1 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(*.f64 (*.f64 (cbrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (cbrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))) (cbrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(*.f64 (sqrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (sqrt.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(/.f64 (-.f64 (pow.f64 (exp.f64 (+.f64 im im)) 3) (pow.f64 (exp.f64 (+.f64 (neg.f64 im) im)) 3)) (+.f64 (*.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 im im))) (+.f64 (*.f64 (exp.f64 (+.f64 (neg.f64 im) im)) (exp.f64 (+.f64 (neg.f64 im) im))) (*.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 (neg.f64 im) im))))))
(/.f64 (-.f64 (pow.f64 (pow.f64 (exp.f64 im) 2) 3) (pow.f64 (exp.f64 (+.f64 im (neg.f64 im))) 3)) (+.f64 (pow.f64 (exp.f64 im) 4) (*.f64 (exp.f64 (+.f64 im (neg.f64 im))) (+.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im)))))))
(/.f64 (+.f64 -1 (pow.f64 (exp.f64 im) 6)) (+.f64 (exp.f64 (+.f64 im im)) (+.f64 1 (exp.f64 (*.f64 im 4)))))
(/.f64 (expm1.f64 (*.f64 im 6)) (+.f64 (pow.f64 (exp.f64 im) 2) (+.f64 1 (pow.f64 (exp.f64 im) 4))))
(/.f64 (-.f64 (*.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 im im))) (*.f64 (exp.f64 (+.f64 (neg.f64 im) im)) (exp.f64 (+.f64 (neg.f64 im) im)))) (+.f64 (exp.f64 (+.f64 im im)) (exp.f64 (+.f64 (neg.f64 im) im))))
(/.f64 (-.f64 (pow.f64 (exp.f64 im) 4) (exp.f64 (+.f64 (+.f64 im (neg.f64 im)) (+.f64 im (neg.f64 im))))) (+.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im)))))
(/.f64 (+.f64 -1 (exp.f64 (*.f64 im 4))) (+.f64 (exp.f64 (+.f64 im im)) 1))
(/.f64 (expm1.f64 (*.f64 im 4)) (+.f64 (pow.f64 (exp.f64 im) 2) 1))
(pow.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) 1)
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(log.f64 (exp.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(cbrt.f64 (*.f64 (*.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(exp.f64 (log.f64 (*.f64 (exp.f64 im) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(fma.f64 (exp.f64 im) (exp.f64 im) (neg.f64 (exp.f64 (+.f64 (neg.f64 im) im))))
(-.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 (+.f64 im (neg.f64 im))))
(+.f64 (exp.f64 (+.f64 im im)) -1)
(expm1.f64 (+.f64 im im))
(-.f64 (+.f64 1 (pow.f64 (exp.f64 im) 3)) 1)
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 (exp.f64 im) 3) 1)
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 1 (pow.f64 (exp.f64 im) 3))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (*.f64 (cbrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sqrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 (exp.f64 im) 3/2) (pow.f64 (exp.f64 im) 3/2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) 3) (exp.f64 im))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) 3) (pow.f64 (sqrt.f64 (exp.f64 im)) 3))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1) (exp.f64 im))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (exp.f64 im)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(/.f64 1 (pow.f64 (exp.f64 im) 3))
(pow.f64 (exp.f64 (neg.f64 im)) 3)
(exp.f64 (*.f64 im -3))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(/.f64 (*.f64 (pow.f64 (exp.f64 im) 2) 1) (exp.f64 im))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(sqrt.f64 (pow.f64 (exp.f64 im) 6))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(log.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(expm1.f64 (log1p.f64 (pow.f64 (exp.f64 im) 3)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(log1p.f64 (expm1.f64 (pow.f64 (exp.f64 im) 3)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(exp.f64 (*.f64 im 3))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(+.f64 0 (pow.f64 (exp.f64 im) 3))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 3) im)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 3) im)))))
(-.f64 (+.f64 1 (pow.f64 (exp.f64 im) 3)) 1)
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (exp.f64 im) (pow.f64 (*.f64 (cbrt.f64 (exp.f64 im)) (exp.f64 im)) 3/2))
(*.f64 (exp.f64 im) (pow.f64 (*.f64 (exp.f64 im) (cbrt.f64 (exp.f64 im))) 3/2))
(*.f64 (exp.f64 im) (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 4) 3/2))
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 (*.f64 im 4/3)) 3/2))
(*.f64 (pow.f64 (exp.f64 im) 3) 1)
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 1 (pow.f64 (exp.f64 im) 3))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (*.f64 (cbrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (sqrt.f64 (exp.f64 im)) (*.f64 (sqrt.f64 (exp.f64 im)) (pow.f64 (exp.f64 im) 2)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 (exp.f64 im) 3/2) (pow.f64 (exp.f64 im) 3/2))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 1 3/2) (pow.f64 (exp.f64 im) 3))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) 3/2) (pow.f64 (pow.f64 (exp.f64 im) 3/2) 3/2))
(*.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (exp.f64 im)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 1 1/3) (pow.f64 (exp.f64 im) 3))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(*.f64 (pow.f64 (pow.f64 (exp.f64 im) 3/2) 3/2) (pow.f64 (sqrt.f64 (exp.f64 im)) 3/2))
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) 3/2) (pow.f64 (pow.f64 (exp.f64 im) 3/2) 3/2))
(*.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) 2) 3/2) (exp.f64 im))
(*.f64 (exp.f64 im) (pow.f64 (*.f64 (exp.f64 im) (cbrt.f64 (exp.f64 im))) 3/2))
(*.f64 (exp.f64 im) (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 4) 3/2))
(*.f64 (exp.f64 im) (pow.f64 (exp.f64 (*.f64 im 4/3)) 3/2))
(*.f64 (pow.f64 (*.f64 (exp.f64 im) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) 3/2) (sqrt.f64 (exp.f64 im)))
(*.f64 (sqrt.f64 (exp.f64 im)) (pow.f64 (*.f64 (exp.f64 im) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) 3/2))
(*.f64 (sqrt.f64 (exp.f64 im)) (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 5) 3/2))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3)) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3))))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 3) im) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 3) im) 3))))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) 9))) (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) 9))))
(*.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 im) 6) (exp.f64 im)) 1/3) (pow.f64 (cbrt.f64 (exp.f64 im)) 2))
(*.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (cbrt.f64 (pow.f64 (exp.f64 im) 7)))
(*.f64 (exp.f64 (*.f64 im 2/3)) (cbrt.f64 (pow.f64 (exp.f64 im) 7)))
(*.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 im) 6) (pow.f64 (exp.f64 im) 2)) 1/3) (cbrt.f64 (exp.f64 im)))
(*.f64 (cbrt.f64 (exp.f64 im)) (cbrt.f64 (*.f64 (pow.f64 (exp.f64 im) 2) (pow.f64 (exp.f64 im) 6))))
(*.f64 (cbrt.f64 (exp.f64 im)) (cbrt.f64 (pow.f64 (exp.f64 im) 8)))
(*.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 im) 6) (pow.f64 (exp.f64 im) 3/2)) 1/3) (sqrt.f64 (exp.f64 im)))
(*.f64 (sqrt.f64 (exp.f64 im)) (cbrt.f64 (*.f64 (pow.f64 (exp.f64 im) 3/2) (pow.f64 (exp.f64 im) 6))))
(*.f64 (sqrt.f64 (exp.f64 im)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 5/2) 3)))
(*.f64 (pow.f64 (pow.f64 1 3/2) 2) (pow.f64 (exp.f64 im) 3))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(sqrt.f64 (pow.f64 (exp.f64 im) 6))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(log.f64 (exp.f64 (pow.f64 (exp.f64 im) 3)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) 3) 3))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(expm1.f64 (log1p.f64 (pow.f64 (exp.f64 im) 3)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(log1p.f64 (expm1.f64 (pow.f64 (exp.f64 im) 3)))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(exp.f64 (*.f64 im 3))
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(+.f64 1 (expm1.f64 im))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(+.f64 (+.f64 1 (exp.f64 im)) -1)
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(+.f64 0 (exp.f64 im))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (exp.f64 im))) 2)) (log.f64 (cbrt.f64 (exp.f64 (exp.f64 im)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (exp.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (exp.f64 im)))) (log.f64 (sqrt.f64 (exp.f64 (exp.f64 im)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (exp.f64 im)))))
(-.f64 (+.f64 1 (exp.f64 im)) 1)
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(/.f64 (exp.f64 (+.f64 1 im)) (E.f64))
(/.f64 (exp.f64 (+.f64 im 1)) (E.f64))
(exp.f64 (-.f64 (+.f64 im 1) 1))
(exp.f64 (+.f64 (+.f64 im 1) -1))
(/.f64 (pow.f64 (E.f64) (+.f64 1 im)) (E.f64))
(/.f64 (pow.f64 (E.f64) (+.f64 im 1)) (E.f64))
(/.f64 (-.f64 (pow.f64 (+.f64 1 (exp.f64 im)) 3) 1) (+.f64 (*.f64 (+.f64 1 (exp.f64 im)) (+.f64 1 (exp.f64 im))) (+.f64 1 (*.f64 (+.f64 1 (exp.f64 im)) 1))))
(/.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 im) 1) 3) -1) (fma.f64 (+.f64 (exp.f64 im) 1) (+.f64 (exp.f64 im) 1) (+.f64 1 (+.f64 (exp.f64 im) 1))))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 (exp.f64 im) 1) 3)) (fma.f64 (+.f64 (exp.f64 im) 1) (+.f64 (exp.f64 im) 1) (+.f64 2 (exp.f64 im))))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 (exp.f64 im) 1) 3)) (+.f64 1 (*.f64 (+.f64 (exp.f64 im) 1) (+.f64 2 (exp.f64 im)))))
(/.f64 (+.f64 1 (pow.f64 (expm1.f64 im) 3)) (+.f64 1 (-.f64 (pow.f64 (expm1.f64 im) 2) (expm1.f64 im))))
(/.f64 (+.f64 1 (pow.f64 (expm1.f64 im) 3)) (+.f64 (pow.f64 (expm1.f64 im) 2) (-.f64 1 (expm1.f64 im))))
(/.f64 (+.f64 1 (pow.f64 (expm1.f64 im) 3)) (+.f64 1 (*.f64 (expm1.f64 im) (+.f64 -1 (expm1.f64 im)))))
(/.f64 (-.f64 (*.f64 (+.f64 1 (exp.f64 im)) (+.f64 1 (exp.f64 im))) 1) (+.f64 (+.f64 1 (exp.f64 im)) 1))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(/.f64 (-.f64 1 (pow.f64 (expm1.f64 im) 2)) (-.f64 1 (expm1.f64 im)))
(pow.f64 (exp.f64 im) 1)
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(pow.f64 (exp.f64 im) 2)
(exp.f64 (+.f64 im im))
(pow.f64 (exp.f64 im) im)
(pow.f64 (exp.f64 im) 4)
(exp.f64 (*.f64 im 4))
(pow.f64 (exp.f64 im) 8)
(pow.f64 (exp.f64 im) 3)
(pow.f64 (exp.f64 3) im)
(pow.f64 (exp.f64 im) 1/3)
(cbrt.f64 (exp.f64 im))
(pow.f64 (exp.f64 im) 1/2)
(sqrt.f64 (exp.f64 im))
(pow.f64 (exp.f64 im) 9)
(pow.f64 (exp.f64 im) 1/4)
(pow.f64 (exp.f64 im) 1/9)
(*.f64 (pow.f64 (exp.f64 im) 1/18) (pow.f64 (exp.f64 im) 1/18))
(pow.f64 (exp.f64 im) 1/6)
(pow.f64 (exp.f64 im) 3/2)
(pow.f64 (exp.f64 im) 6)
(pow.f64 (exp.f64 im) 2/3)
(pow.f64 (cbrt.f64 (exp.f64 im)) 2)
(exp.f64 (*.f64 im 2/3))
(pow.f64 (exp.f64 im) 4/3)
(pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) 2)
(pow.f64 (cbrt.f64 (exp.f64 im)) 4)
(exp.f64 (*.f64 im 4/3))
(pow.f64 (exp.f64 im) 12)
(pow.f64 (exp.f64 im) 5/2)
(pow.f64 (exp.f64 im) 5)
(pow.f64 (exp.f64 im) 5/6)
(pow.f64 (exp.f64 im) (*.f64 im 1/2))
(pow.f64 (exp.f64 im) (*.f64 im 1/3))
(pow.f64 (exp.f64 im) (/.f64 im 2))
(pow.f64 (exp.f64 im) (*.f64 im 1/2))
(pow.f64 (exp.f64 2) im)
(pow.f64 (exp.f64 im) 2)
(exp.f64 (+.f64 im im))
(pow.f64 (E.f64) im)
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(pow.f64 (E.f64) (*.f64 im 1/2))
(pow.f64 (E.f64) (*.f64 im 1/3))
(pow.f64 (E.f64) (/.f64 im 2))
(pow.f64 (E.f64) (*.f64 im 1/2))
(pow.f64 (*.f64 (E.f64) (E.f64)) im)
(pow.f64 (exp.f64 im) 2)
(exp.f64 (+.f64 im im))
(sqrt.f64 (exp.f64 im))
(fabs.f64 (exp.f64 im))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(fabs.f64 (neg.f64 (exp.f64 im)))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(fabs.f64 (-.f64 1 (+.f64 1 (exp.f64 im))))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(log.f64 (exp.f64 (exp.f64 im)))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(cbrt.f64 (exp.f64 im))
(expm1.f64 (log1p.f64 (exp.f64 im)))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(log1p.f64 (expm1.f64 (exp.f64 im)))
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 im)
(exp.f64 im)
(/.f64 (pow.f64 (exp.f64 im) 2) (exp.f64 im))
(exp.f64 (*.f64 im 1/2))
(sqrt.f64 (exp.f64 im))
(exp.f64 (*.f64 im 1/3))
(cbrt.f64 (exp.f64 im))

localize3.0ms (0%)

Compiler

Compiled 5 to 3 computations (40% saved)

localize18.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 31 to 12 computations (61.3% saved)

series13.0ms (0.1%)

Counts
2 → 32
Calls

9 calls:

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

Compiled 1605 to 740 computations (53.9% saved)

rewrite55.0ms (0.6%)

Algorithm
egg-rewrite-iter-limit
egg-rewrite
batch-egg-rewrite
Rules
109×add-sqr-sqrt_binary64
109×add-sqr-sqrt_binary64
103×*-un-lft-identity_binary64
103×add-log-exp_binary64
103×pow1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01018
121118
2332818
01012
121112
2332812
01012
066
11296
221506
066
Stop Event
iter limit
unsound
iter limit
unsound
unsound
Counts
2 → 18
Calls
Call 1
Inputs
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re)) (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))) (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 2 (cosh.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (cbrt.f64 (*.f64 2 (cosh.f64 im)))) (cbrt.f64 (*.f64 2 (cosh.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (sqrt.f64 (*.f64 2 (cosh.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (cosh.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (exp.f64 im) 3) (pow.f64 (exp.f64 (neg.f64 im)) 3)) (+.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (-.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im)))) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (cosh.f64 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 2 (cosh.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 2 (cosh.f64 im))) (*.f64 2 (cosh.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 2 (cosh.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 2 (cosh.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 2 (cosh.f64 im))))))))

simplify59.0ms (0.6%)

Algorithm
egg-herbie
Rules
633×fma-def_binary64
514×distribute-rgt-in_binary64
469×fma-neg_binary64
466×distribute-lft-in_binary64
351×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
093720
1249706
2928667
32626370
47758370
Stop Event
node limit
Counts
50 → 55
Calls
Call 1
Inputs
re
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) re)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) re))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) re)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(pow.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re)) 1)
(log.f64 (exp.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))
(cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re)) (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))) (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))
(exp.f64 (log.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))
(*.f64 1 (*.f64 2 (cosh.f64 im)))
(*.f64 (*.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (cbrt.f64 (*.f64 2 (cosh.f64 im)))) (cbrt.f64 (*.f64 2 (cosh.f64 im))))
(*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (sqrt.f64 (*.f64 2 (cosh.f64 im))))
(*.f64 2 (cosh.f64 im))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) 3) (pow.f64 (exp.f64 (neg.f64 im)) 3)) (+.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (-.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(/.f64 (-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im)))) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(pow.f64 (*.f64 2 (cosh.f64 im)) 1)
(log.f64 (exp.f64 (*.f64 2 (cosh.f64 im))))
(cbrt.f64 (*.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 2 (cosh.f64 im))) (*.f64 2 (cosh.f64 im))))
(expm1.f64 (log1p.f64 (*.f64 2 (cosh.f64 im))))
(log1p.f64 (expm1.f64 (*.f64 2 (cosh.f64 im))))
(exp.f64 (log.f64 (*.f64 2 (cosh.f64 im))))
Outputs
re
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) re)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) re))
(fma.f64 re (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) (fma.f64 1/24 (pow.f64 im 4) 1)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) re)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (fma.f64 1/720 (*.f64 re (pow.f64 im 6)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) re)))
(fma.f64 re (*.f64 1/720 (pow.f64 im 6)) (fma.f64 re (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) re))
(*.f64 re (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (fma.f64 1/720 (pow.f64 im 6) 1)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(+.f64 (+.f64 2 (*.f64 im im)) (fma.f64 1/12 (pow.f64 im 4) (*.f64 (pow.f64 im 6) 1/360)))
(+.f64 2 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 (*.f64 (pow.f64 im 6) 1/360))))
(+.f64 2 (fma.f64 (pow.f64 im 6) 1/360 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))))
(fma.f64 (pow.f64 im 6) 1/360 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(pow.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re)) 1)
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(log.f64 (exp.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re)) (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))) (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(exp.f64 (log.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 1/2 re))))
(*.f64 (*.f64 re 1/2) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (cosh.f64 im))
(*.f64 1 (*.f64 2 (cosh.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(*.f64 (*.f64 (cbrt.f64 (*.f64 2 (cosh.f64 im))) (cbrt.f64 (*.f64 2 (cosh.f64 im)))) (cbrt.f64 (*.f64 2 (cosh.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(*.f64 (sqrt.f64 (*.f64 2 (cosh.f64 im))) (sqrt.f64 (*.f64 2 (cosh.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(*.f64 2 (cosh.f64 im))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) 3) (pow.f64 (exp.f64 (neg.f64 im)) 3)) (+.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (-.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) 3) (pow.f64 (exp.f64 (neg.f64 im)) 3)) (+.f64 (exp.f64 (+.f64 im im)) (*.f64 (exp.f64 (neg.f64 im)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) 3) (pow.f64 (exp.f64 (neg.f64 im)) 3)) (+.f64 (exp.f64 (+.f64 im im)) (+.f64 -1 (exp.f64 (*.f64 im -2)))))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) 3) (exp.f64 (*.f64 im -3))) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) 3) (pow.f64 (exp.f64 im) -3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im)))) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(pow.f64 (*.f64 2 (cosh.f64 im)) 1)
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(log.f64 (exp.f64 (*.f64 2 (cosh.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(cbrt.f64 (*.f64 (*.f64 (*.f64 2 (cosh.f64 im)) (*.f64 2 (cosh.f64 im))) (*.f64 2 (cosh.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(expm1.f64 (log1p.f64 (*.f64 2 (cosh.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(log1p.f64 (expm1.f64 (*.f64 2 (cosh.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))
(exp.f64 (log.f64 (*.f64 2 (cosh.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(*.f64 2 (cosh.f64 im))

localize20.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 57 to 35 computations (38.6% saved)

series55.0ms (0.6%)

Counts
4 → 32
Calls

15 calls:

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

Compiled 3950 to 3085 computations (21.9% saved)

rewrite87.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
725×log-prod_binary64
511×fma-def_binary64
275×expm1-udef_binary64
275×log1p-udef_binary64
255×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify108.0ms (1.1%)

Algorithm
egg-herbie
Rules
440×cancel-sign-sub-inv_binary64
422×associate-*l*_binary64
377×associate-*r*_binary64
273×log-prod_binary64
238×times-frac_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04684478
111894099
244964013
Stop Event
node limit
Counts
216 → 262
Calls
Call 1
Inputs
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 7))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.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)))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(pow.f64 (/.f64 1 im) -4)
(pow.f64 (/.f64 1 im) -4)
(pow.f64 (/.f64 1 im) -4)
(pow.f64 (/.f64 1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(+.f64 0 (*.f64 (pow.f64 im 4) 1/12))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))) (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12))) 1)
(pow.f64 (*.f64 (pow.f64 im 4) 1/12) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) 3)
(pow.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) 2)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/12) 3) 1/3)
(sqrt.f64 (*.f64 1/144 (pow.f64 im 8)))
(log.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/12) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12)))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/12)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/12)) 1))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(+.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(+.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1) (*.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) 1))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) 3)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (fma.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) (neg.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))))
(/.f64 (*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8))) (*.f64 1/2 (sin.f64 re))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8)))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))))
(log.f64 (*.f64 (exp.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))) (exp.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 1))
(fma.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/12 (*.f64 (pow.f64 im 4) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) 1/12) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 1 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1 (*.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))) (cbrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))) (cbrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))) (sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sin.f64 re)) 1/2 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (fma.f64 im im 2) (sin.f64 re)) 1/2 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (*.f64 (fma.f64 im im 2) 1/2) (sin.f64 re) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (*.f64 (fma.f64 im im 2) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (*.f64 (fma.f64 im im 2) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 4)) 1/12 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1/12) (pow.f64 im 4) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8)))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) 1/2) (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(-.f64 (/.f64 (pow.f64 (fma.f64 im im 2) 2) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))) (/.f64 (*.f64 1/144 (pow.f64 im 8)) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(*.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 1)
(*.f64 1 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))
(*.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (cbrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (/.f64 1 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2))))
(*.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8))) (/.f64 1 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 1 (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8)))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 1/144 (pow.f64 im 8) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)))))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (neg.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) (neg.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8)))) (neg.f64 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3)) (+.f64 4 (-.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))))
(/.f64 (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (pow.f64 (fma.f64 im im 2) 2))) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))))
(/.f64 (-.f64 4 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (-.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 1)
(pow.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 3)
(pow.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) -1)
(pow.f64 (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8)))) -1)
(sqrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 2))
(log.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (exp.f64 (fma.f64 im im 2))))
(log.f64 (*.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)) (+.f64 1 (expm1.f64 (fma.f64 im im 2)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (+.f64 1 (expm1.f64 (fma.f64 im im 2)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 im im 2))) (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))
(log.f64 (*.f64 (exp.f64 (fma.f64 im im 2)) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 im im 2))) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(cbrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3))
(expm1.f64 (log1p.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(log1p.f64 (expm1.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(exp.f64 (log.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 1))
(fma.f64 im im (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) 1 (fma.f64 im im 2))
(fma.f64 (*.f64 im im) 1 (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (*.f64 im im) (*.f64 (*.f64 im im) 1/12) (fma.f64 im im 2))
(fma.f64 (fma.f64 im im 2) 1 (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 1 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2))
(fma.f64 1 (*.f64 im im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 1 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 1 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2)
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (fma.f64 im im 2)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 im) 2) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 (cbrt.f64 (pow.f64 im 4)) 1/12) (fma.f64 im im 2))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (fma.f64 im im 2))
(fma.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (+.f64 8 (pow.f64 im 6)) (/.f64 1 (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (-.f64 4 (pow.f64 im 4)) (/.f64 1 (-.f64 2 (*.f64 im im))) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (*.f64 im (sqrt.f64 im)) (sqrt.f64 im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (*.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2)
(fma.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) 2)
(fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 8))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (*.f64 im (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (*.f64 1/12 (*.f64 im im)) (*.f64 im im) (fma.f64 im im 2))
(fma.f64 (*.f64 1/12 (cbrt.f64 (pow.f64 im 8))) (cbrt.f64 (pow.f64 im 4)) (fma.f64 im im 2))
(+.f64 0 (pow.f64 im 4))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4))) (cbrt.f64 (exp.f64 (pow.f64 im 4))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 4)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 4)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 im 4))) 1)
(*.f64 im (pow.f64 im 3))
(*.f64 (pow.f64 im 4) 1)
(*.f64 (*.f64 im im) (*.f64 im im))
(*.f64 1 (pow.f64 im 4))
(*.f64 (pow.f64 im 3) im)
(*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (pow.f64 im 8)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 im im)))
(*.f64 (cbrt.f64 (pow.f64 im 8)) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 im) 2) 4) (pow.f64 (cbrt.f64 im) 4))
(*.f64 (pow.f64 (sqrt.f64 im) 4) (pow.f64 (sqrt.f64 im) 4))
(*.f64 (*.f64 (*.f64 im im) (cbrt.f64 (pow.f64 im 4))) (pow.f64 (cbrt.f64 im) 2))
(sqrt.f64 (pow.f64 im 8))
(log.f64 (exp.f64 (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 im 4))))
(cbrt.f64 (pow.f64 (pow.f64 im 4) 3))
(expm1.f64 (log1p.f64 (pow.f64 im 4)))
(log1p.f64 (expm1.f64 (pow.f64 im 4)))
(exp.f64 (*.f64 4 (log.f64 im)))
(exp.f64 (*.f64 (*.f64 4 (log.f64 im)) 1))
Outputs
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))
(*.f64 1/2 (*.f64 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4))) re))
(*.f64 1/2 (*.f64 re (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (*.f64 re 1/2))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))
(fma.f64 -1/12 (*.f64 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4))) (pow.f64 re 3)) (*.f64 1/2 (*.f64 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4))) re)))
(fma.f64 1/2 (*.f64 re (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))))
(fma.f64 -1/12 (*.f64 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4))) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4))) (pow.f64 re 5)) (*.f64 1/2 (*.f64 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4))) re))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (fma.f64 1/2 (*.f64 re (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 7))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))))
(fma.f64 -1/12 (*.f64 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4))) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4))) (pow.f64 re 5)) (fma.f64 -1/10080 (*.f64 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4))) (pow.f64 re 7)) (*.f64 1/2 (*.f64 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4))) re)))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (fma.f64 1/2 (*.f64 re (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (fma.f64 1/2 (*.f64 re (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) (*.f64 (pow.f64 re 7) -1/10080)))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
2
(+.f64 2 (pow.f64 im 2))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(pow.f64 (/.f64 1 im) -4)
(pow.f64 (/.f64 1 im) -4)
(pow.f64 (/.f64 1 im) -4)
(pow.f64 (/.f64 1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(+.f64 0 (*.f64 (pow.f64 im 4) 1/12))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))) (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(*.f64 1/12 (pow.f64 im 4))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12))) 1)
(*.f64 1/12 (pow.f64 im 4))
(pow.f64 (*.f64 (pow.f64 im 4) 1/12) 1)
(*.f64 1/12 (pow.f64 im 4))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) 3)
(*.f64 1/12 (pow.f64 im 4))
(pow.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) 2)
(*.f64 1/12 (pow.f64 im 4))
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/12) 3) 1/3)
(*.f64 1/12 (pow.f64 im 4))
(sqrt.f64 (*.f64 1/144 (pow.f64 im 8)))
(log.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))
(*.f64 1/12 (pow.f64 im 4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 1/12 (pow.f64 im 4))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/12) 3))
(*.f64 1/12 (pow.f64 im 4))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 1/12 (pow.f64 im 4))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 1/12 (pow.f64 im 4))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 1/12 (pow.f64 im 4))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/12)) 1))
(*.f64 1/12 (pow.f64 im 4))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1) (*.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) 1))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re))))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) 1)
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) 3)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (fma.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) (neg.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re))) 3)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (+.f64 (*.f64 (pow.f64 im 8) (*.f64 (*.f64 1/24 (sin.f64 re)) (*.f64 1/24 (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (neg.f64 (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re))))))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)) 3)) (fma.f64 (sin.f64 re) (*.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 2) 1/4) (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)) (+.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)) (*.f64 (*.f64 1/2 (fma.f64 im im 2)) (neg.f64 (sin.f64 re)))))))
(/.f64 (fma.f64 (pow.f64 im 12) (*.f64 (pow.f64 (sin.f64 re) 3) 1/13824) (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 im im 2)) 3))) (fma.f64 (sin.f64 re) (*.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 2) 1/4) (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)) (-.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)) (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))))
(/.f64 (-.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))) (*.f64 (pow.f64 im 8) (*.f64 (*.f64 1/24 (sin.f64 re)) (*.f64 1/24 (sin.f64 re))))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) 1/4) (pow.f64 (fma.f64 im im 2) 2)) (*.f64 (pow.f64 im 8) (*.f64 1/576 (*.f64 (sin.f64 re) (sin.f64 re))))) (fma.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) (sin.f64 re)) -1/24)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) 1)
(/.f64 (*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))))
(*.f64 (/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (fma.f64 1/1728 (pow.f64 im 12) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8))) (*.f64 1/2 (sin.f64 re))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 -1/144 (pow.f64 im 8))) (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)) (*.f64 1/2 (sin.f64 re))))
(*.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))))
(*.f64 (/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (fma.f64 1/1728 (pow.f64 im 12) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8)))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 -1/144 (pow.f64 im 8))) (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)) (*.f64 1/2 (sin.f64 re))))
(*.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)))
(pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3) 1/3)
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 3)
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 2)
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 2))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(log.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(log.f64 (*.f64 (exp.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))) (exp.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3)))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 1))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 1/12 (*.f64 (pow.f64 im 4) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) 1/12) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 1 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 1/2 (*.f64 (sin.f64 re) (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))))) (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1 (*.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))) 1))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))) (cbrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))) (cbrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))) (sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sin.f64 re)) 1/2 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (sin.f64 re)) 1/2 (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) 1/2) (sin.f64 re) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (fma.f64 im im 2) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 4)) 1/12 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1/12) (pow.f64 im 4) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8)))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 1/2 (*.f64 (sin.f64 re) (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))))) (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) 1/2) (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(-.f64 (/.f64 (pow.f64 (fma.f64 im im 2) 2) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))) (/.f64 (*.f64 1/144 (pow.f64 im 8)) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 -1/144 (pow.f64 im 8))) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(*.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 1)
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(*.f64 1 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(*.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (cbrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 2)))
(*.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))) (cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2)) 2)))
(*.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (/.f64 1 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 1/1728 (pow.f64 im 12) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2)))
(*.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8))) (/.f64 1 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 -1/144 (pow.f64 im 8))) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 1/1728 (pow.f64 im 12) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 1 (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8)))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 -1/144 (pow.f64 im 8))) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 1/1728 (pow.f64 im 12) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 1/144 (pow.f64 im 8) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 1/144 (pow.f64 im 8) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 4) (*.f64 1/12 (fma.f64 im im 2))))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 1/144 (pow.f64 im 8) (*.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))))
(/.f64 (fma.f64 1/1728 (pow.f64 im 12) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 1/144 (pow.f64 im 8) (*.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 -1/144 (pow.f64 im 8))) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(/.f64 (neg.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) (neg.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 1/1728 (pow.f64 im 12) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8)))) (neg.f64 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 -1/144 (pow.f64 im 8))) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3)) (+.f64 4 (-.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 3)) (+.f64 4 (*.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) (-.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 2))))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) 3)) (fma.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (+.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) -2) 4))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) 3)) (fma.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im -2)) 4))
(/.f64 (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (pow.f64 (fma.f64 im im 2) 2))) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 -1/144 (pow.f64 im 8))) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(/.f64 (-.f64 4 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (-.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(/.f64 (-.f64 4 (*.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (-.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))))
(/.f64 (-.f64 4 (*.f64 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)) (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im)))) (-.f64 2 (fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))))
(pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 1)
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(pow.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3) 1/3)
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(pow.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 3)
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(pow.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 2)
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(pow.f64 (/.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))) -1)
(/.f64 1 (/.f64 (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 (pow.f64 im 4) 1/12 (neg.f64 (fma.f64 im im 2))) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 1/1728 (pow.f64 im 12) (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) (-.f64 -2 (*.f64 im im))) (pow.f64 (fma.f64 im im 2) 2)))
(pow.f64 (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 1/144 (pow.f64 im 8)))) -1)
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 -1/144 (pow.f64 im 8))) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(sqrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 2))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(log.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (exp.f64 (fma.f64 im im 2))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(log.f64 (*.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)) (+.f64 1 (expm1.f64 (fma.f64 im im 2)))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (+.f64 1 (expm1.f64 (fma.f64 im im 2)))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 im im 2))) (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(log.f64 (*.f64 (exp.f64 (fma.f64 im im 2)) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 im im 2))) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(cbrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(expm1.f64 (log1p.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(log1p.f64 (expm1.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(exp.f64 (log.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(exp.f64 (*.f64 (log.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 1))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 im im (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) 1 (fma.f64 im im 2))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (*.f64 im im) 1 (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (*.f64 im im) (*.f64 (*.f64 im im) 1/12) (fma.f64 im im 2))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (fma.f64 im im 2) 1 (*.f64 (pow.f64 im 4) 1/12))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 1 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 1 (*.f64 im im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 1 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 1 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2)
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)) (+.f64 2 (*.f64 1/12 (pow.f64 im 4))))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) 2))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (fma.f64 im im 2)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 im) 2) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)) (+.f64 2 (*.f64 1/12 (pow.f64 im 4))))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)) (fma.f64 1/12 (pow.f64 im 4) 2))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 (cbrt.f64 (pow.f64 im 4)) 1/12) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 1/12 (cbrt.f64 (pow.f64 im 4))) (fma.f64 im im 2))
(fma.f64 (*.f64 1/12 (cbrt.f64 (pow.f64 im 8))) (cbrt.f64 (pow.f64 im 4)) (fma.f64 im im 2))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (fma.f64 im im 2))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (+.f64 8 (pow.f64 im 6)) (/.f64 1 (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (+.f64 8 (pow.f64 im 6)) (/.f64 1 (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)) (*.f64 1/12 (pow.f64 im 4)))
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (/.f64 (+.f64 8 (pow.f64 im 6)) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)))
(fma.f64 (-.f64 4 (pow.f64 im 4)) (/.f64 1 (-.f64 2 (*.f64 im im))) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (-.f64 4 (pow.f64 im 4)) (/.f64 1 (-.f64 2 (*.f64 im im))) (*.f64 1/12 (pow.f64 im 4)))
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (/.f64 (-.f64 4 (pow.f64 im 4)) (-.f64 2 (*.f64 im im))))
(fma.f64 (*.f64 im (sqrt.f64 im)) (sqrt.f64 im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (*.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2)
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) 2)
(fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 8))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 8))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (+.f64 2 (*.f64 1/12 (pow.f64 im 4))))
(fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 8))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (fma.f64 1/12 (pow.f64 im 4) 2))
(fma.f64 (*.f64 im (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (*.f64 1/12 (*.f64 im im)) (*.f64 im im) (fma.f64 im im 2))
(+.f64 (fma.f64 im im 2) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (*.f64 1/12 (cbrt.f64 (pow.f64 im 8))) (cbrt.f64 (pow.f64 im 4)) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 1/12 (cbrt.f64 (pow.f64 im 4))) (fma.f64 im im 2))
(+.f64 0 (pow.f64 im 4))
(pow.f64 im 4)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4))) (cbrt.f64 (exp.f64 (pow.f64 im 4))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 4)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 4)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 4)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 im 4))) 1)
(pow.f64 im 4)
(*.f64 im (pow.f64 im 3))
(pow.f64 im 4)
(*.f64 (pow.f64 im 4) 1)
(pow.f64 im 4)
(*.f64 (*.f64 im im) (*.f64 im im))
(pow.f64 im 4)
(*.f64 1 (pow.f64 im 4))
(pow.f64 im 4)
(*.f64 (pow.f64 im 3) im)
(pow.f64 im 4)
(*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (pow.f64 im 8)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 im im)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 im (*.f64 im (*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 im) 8))
(*.f64 (cbrt.f64 (pow.f64 im 8)) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (pow.f64 im 8)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 im) 2) 4) (pow.f64 (cbrt.f64 im) 4))
(pow.f64 im 4)
(*.f64 (pow.f64 (sqrt.f64 im) 4) (pow.f64 (sqrt.f64 im) 4))
(pow.f64 im 4)
(*.f64 (*.f64 (*.f64 im im) (cbrt.f64 (pow.f64 im 4))) (pow.f64 (cbrt.f64 im) 2))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (*.f64 im im) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 im (*.f64 im (*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 im) 8))
(sqrt.f64 (pow.f64 im 8))
(pow.f64 im 4)
(log.f64 (exp.f64 (pow.f64 im 4)))
(pow.f64 im 4)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 im 4))))
(pow.f64 im 4)
(cbrt.f64 (pow.f64 (pow.f64 im 4) 3))
(pow.f64 im 4)
(expm1.f64 (log1p.f64 (pow.f64 im 4)))
(pow.f64 im 4)
(log1p.f64 (expm1.f64 (pow.f64 im 4)))
(pow.f64 im 4)
(exp.f64 (*.f64 4 (log.f64 im)))
(pow.f64 im 4)
(exp.f64 (*.f64 (*.f64 4 (log.f64 im)) 1))
(pow.f64 im 4)

localize39.0ms (0.4%)

Local error

Found 4 expressions with local error:

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

Compiled 102 to 59 computations (42.2% saved)

series46.0ms (0.5%)

Counts
3 → 48
Calls

12 calls:

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

Compiled 6145 to 4365 computations (29% saved)

rewrite107.0ms (1.1%)

Algorithm
egg-rewrite-iter-limit
egg-rewrite
batch-egg-rewrite
Rules
413×pow1_binary64
404×add-sqr-sqrt_binary64
393×*-un-lft-identity_binary64
384×add-log-exp_binary64
384×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02118
145318
2735718
056
1976
210606
02138
145338
2735738
02138
01630
135030
2577630
01630
Stop Event
iter limit
unsound
iter limit
unsound
node limit
unsound
Counts
3 → 53
Calls
Call 1
Inputs
(exp.f64 (*.f64 im -3))
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (exp.f64 (*.f64 im -3)) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (expm1.f64 (+.f64 im im)))))
(/.f64 (+.f64 (exp.f64 (*.f64 im -3)) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (expm1.f64 (+.f64 im im))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (expm1.f64 (*.f64 im -3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (exp.f64 -3) im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (exp.f64 -3) im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 -3) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (exp.f64 -3) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im)) (cbrt.f64 (exp.f64 (*.f64 -6 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (*.f64 -6 im))) (cbrt.f64 (pow.f64 (exp.f64 -3) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 im) -3/2) (pow.f64 (exp.f64 im) -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (pow.f64 (exp.f64 -3) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 im) (pow.f64 (exp.f64 -3) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 -3)) 2) im) (pow.f64 (cbrt.f64 (exp.f64 -3)) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (exp.f64 -3)) im) (pow.f64 (sqrt.f64 (exp.f64 -3)) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) -3) (pow.f64 (cbrt.f64 (exp.f64 im)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) -3) (pow.f64 (sqrt.f64 (exp.f64 im)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 -6 im)) (cbrt.f64 (exp.f64 (*.f64 -6 im)))) 1/3) (cbrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 -6 im)) (pow.f64 (exp.f64 im) -3/2)) 1/3) (cbrt.f64 (pow.f64 (exp.f64 im) -3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))) 2) 3) (cbrt.f64 (pow.f64 (exp.f64 -3) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 -3) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 -3) im)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 im) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (*.f64 -6 im)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 im) -3/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (*.f64 im -3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 im -3)) 2)) (cbrt.f64 (*.f64 im -3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (*.f64 im -3))) (sqrt.f64 (*.f64 im -3)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (exp.f64 (*.f64 -6 im)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (exp.f64 -3) im)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (exp.f64 -3) im)))))))
((#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))) (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (/.f64 1 (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (cbrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))) (cbrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (sqrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))))))

simplify70.0ms (0.7%)

Algorithm
egg-herbie
Rules
697×unswap-sqr_binary64
596×distribute-rgt-in_binary64
580×distribute-lft-in_binary64
214×associate-*l/_binary64
193×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02522670
16582441
225052405
Stop Event
node limit
Counts
101 → 137
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 -3 im))
(+.f64 1 (+.f64 (*.f64 -3 im) (*.f64 9/2 (pow.f64 im 2))))
(+.f64 1 (+.f64 (*.f64 -3 im) (+.f64 (*.f64 -9/2 (pow.f64 im 3)) (*.f64 9/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 -3 im))
(exp.f64 (*.f64 -3 im))
(exp.f64 (*.f64 -3 im))
(exp.f64 (*.f64 -3 im))
(exp.f64 (*.f64 -3 im))
(exp.f64 (*.f64 -3 im))
(exp.f64 (*.f64 -3 im))
(exp.f64 (*.f64 -3 im))
(*.f64 1/2 (/.f64 (*.f64 re (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(+.f64 (*.f64 -1/12 (/.f64 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (*.f64 1/2 (/.f64 (*.f64 re (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))))
(+.f64 (*.f64 1/240 (/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (pow.f64 re 5)) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (+.f64 (*.f64 -1/12 (/.f64 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (*.f64 1/2 (/.f64 (*.f64 re (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))))
(+.f64 (*.f64 1/240 (/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (pow.f64 re 5)) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (+.f64 (*.f64 -1/12 (/.f64 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (+.f64 (*.f64 -1/10080 (/.f64 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (*.f64 1/2 (/.f64 (*.f64 re (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))) (pow.f64 im 2))) (*.f64 1/2 (*.f64 (pow.f64 im 4) (-.f64 (*.f64 27/4 (sin.f64 re)) (+.f64 (*.f64 8/3 (sin.f64 re)) (*.f64 4 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))))))))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))) (pow.f64 im 2))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 81/40 (sin.f64 re)) (+.f64 (*.f64 16/45 (sin.f64 re)) (+.f64 (*.f64 4 (-.f64 (*.f64 27/4 (sin.f64 re)) (+.f64 (*.f64 8/3 (sin.f64 re)) (*.f64 4 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))))))) (*.f64 4/3 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))))))) (pow.f64 im 6))) (*.f64 1/2 (*.f64 (pow.f64 im 4) (-.f64 (*.f64 27/4 (sin.f64 re)) (+.f64 (*.f64 8/3 (sin.f64 re)) (*.f64 4 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re)))))))))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1)))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1))
(+.f64 1 (expm1.f64 (*.f64 im -3)))
(+.f64 0 (pow.f64 (exp.f64 -3) im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))))
(-.f64 (+.f64 1 (pow.f64 (exp.f64 -3) im)) 1)
(*.f64 (pow.f64 (exp.f64 -3) im) 1)
(*.f64 1 (pow.f64 (exp.f64 -3) im))
(*.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im)) (cbrt.f64 (exp.f64 (*.f64 -6 im))))
(*.f64 (cbrt.f64 (exp.f64 (*.f64 -6 im))) (cbrt.f64 (pow.f64 (exp.f64 -3) im)))
(*.f64 (pow.f64 (exp.f64 im) -3/2) (pow.f64 (exp.f64 im) -3/2))
(*.f64 (pow.f64 1 1/3) (pow.f64 (exp.f64 -3) im))
(*.f64 (pow.f64 1 im) (pow.f64 (exp.f64 -3) im))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 -3)) 2) im) (pow.f64 (cbrt.f64 (exp.f64 -3)) im))
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 -3)) im) (pow.f64 (sqrt.f64 (exp.f64 -3)) im))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) -3) (pow.f64 (cbrt.f64 (exp.f64 im)) -3))
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) -3) (pow.f64 (sqrt.f64 (exp.f64 im)) -3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3)) 1/3))
(*.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 -6 im)) (cbrt.f64 (exp.f64 (*.f64 -6 im)))) 1/3) (cbrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))))
(*.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 -6 im)) (pow.f64 (exp.f64 im) -3/2)) 1/3) (cbrt.f64 (pow.f64 (exp.f64 im) -3/2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))) 2) 3) (cbrt.f64 (pow.f64 (exp.f64 -3) im)))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))) 3))
(pow.f64 (pow.f64 (exp.f64 -3) im) 1)
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(pow.f64 (exp.f64 (*.f64 -6 im)) 1/2)
(pow.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3) 1/3)
(pow.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im)) 3)
(pow.f64 (pow.f64 (exp.f64 im) -3/2) 2)
(pow.f64 (exp.f64 1) (*.f64 im -3))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 im -3)) 2)) (cbrt.f64 (*.f64 im -3)))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 im -3))) (sqrt.f64 (*.f64 im -3)))
(sqrt.f64 (exp.f64 (*.f64 -6 im)))
(log.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))
(cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3))
(expm1.f64 (log1p.f64 (pow.f64 (exp.f64 -3) im)))
(log1p.f64 (expm1.f64 (pow.f64 (exp.f64 -3) im)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(pow.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) 1)
(log.f64 (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))
(cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))) (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))
(exp.f64 (log.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))
(*.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (/.f64 1 (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))
(*.f64 1 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (cbrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))) (cbrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (sqrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(pow.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))) 1)
(log.f64 (exp.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(expm1.f64 (log1p.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(log1p.f64 (expm1.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(exp.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
Outputs
1
(+.f64 1 (*.f64 -3 im))
(fma.f64 -3 im 1)
(+.f64 1 (+.f64 (*.f64 -3 im) (*.f64 9/2 (pow.f64 im 2))))
(+.f64 1 (fma.f64 -3 im (*.f64 9/2 (*.f64 im im))))
(+.f64 1 (fma.f64 -3 im (*.f64 im (*.f64 im 9/2))))
(+.f64 1 (*.f64 im (+.f64 (*.f64 9/2 im) -3)))
(+.f64 1 (+.f64 (*.f64 -3 im) (+.f64 (*.f64 -9/2 (pow.f64 im 3)) (*.f64 9/2 (pow.f64 im 2)))))
(+.f64 1 (fma.f64 -3 im (fma.f64 -9/2 (pow.f64 im 3) (*.f64 9/2 (*.f64 im im)))))
(+.f64 1 (fma.f64 -3 im (fma.f64 9/2 (*.f64 im im) (*.f64 -9/2 (pow.f64 im 3)))))
(+.f64 (fma.f64 -3 im 1) (*.f64 (*.f64 im im) (+.f64 9/2 (*.f64 -9/2 im))))
(exp.f64 (*.f64 -3 im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(exp.f64 (*.f64 -3 im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(exp.f64 (*.f64 -3 im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(exp.f64 (*.f64 -3 im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(exp.f64 (*.f64 -3 im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(exp.f64 (*.f64 -3 im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(exp.f64 (*.f64 -3 im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(exp.f64 (*.f64 -3 im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(*.f64 1/2 (/.f64 (*.f64 re (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (*.f64 re (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1))))
(*.f64 1/2 (/.f64 re (/.f64 (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))) (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))))
(*.f64 (/.f64 (*.f64 1/2 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))
(+.f64 (*.f64 -1/12 (/.f64 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (*.f64 1/2 (/.f64 (*.f64 re (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))))
(fma.f64 -1/12 (/.f64 (pow.f64 re 3) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))) (*.f64 1/2 (/.f64 (*.f64 re (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))))
(fma.f64 1/2 (/.f64 re (/.f64 (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))) (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (/.f64 (*.f64 -1/12 (*.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (pow.f64 re 3))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))
(fma.f64 1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) re) (*.f64 (/.f64 -1/12 (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (*.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (pow.f64 re 3))))
(+.f64 (*.f64 1/240 (/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (pow.f64 re 5)) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (+.f64 (*.f64 -1/12 (/.f64 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (*.f64 1/2 (/.f64 (*.f64 re (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))))
(fma.f64 1/240 (/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (pow.f64 re 5))) (fma.f64 -1/12 (/.f64 (pow.f64 re 3) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))) (*.f64 1/2 (/.f64 (*.f64 re (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1))))))
(fma.f64 1/240 (/.f64 (pow.f64 re 5) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))) (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (fma.f64 1/2 (/.f64 re (/.f64 (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))) (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (/.f64 (*.f64 -1/12 (*.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (pow.f64 re 3))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(fma.f64 1/240 (*.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (pow.f64 re 5)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) re) (*.f64 (/.f64 -1/12 (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (*.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (pow.f64 re 3)))))
(+.f64 (*.f64 1/240 (/.f64 (*.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (pow.f64 re 5)) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (+.f64 (*.f64 -1/12 (/.f64 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (+.f64 (*.f64 -1/10080 (/.f64 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))) (*.f64 1/2 (/.f64 (*.f64 re (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))))))
(fma.f64 1/240 (/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (pow.f64 re 5))) (fma.f64 -1/12 (/.f64 (pow.f64 re 3) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))) (fma.f64 -1/10080 (/.f64 (pow.f64 re 7) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))) (*.f64 1/2 (/.f64 (*.f64 re (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))))))
(fma.f64 1/240 (/.f64 (pow.f64 re 5) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))) (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (fma.f64 -1/12 (*.f64 (/.f64 (pow.f64 re 3) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))) (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3))) (fma.f64 1/2 (/.f64 re (/.f64 (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))) (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (*.f64 -1/10080 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))) (pow.f64 re 7)))))))
(fma.f64 1/240 (*.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (pow.f64 re 5)) (fma.f64 -1/12 (*.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (pow.f64 re 3)) (fma.f64 -1/10080 (/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (/.f64 (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))) (pow.f64 re 7))) (*.f64 (/.f64 (*.f64 1/2 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1))))
(fma.f64 1/2 (*.f64 im (*.f64 im (sin.f64 re))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 im im)) 1))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))) (pow.f64 im 2))) (*.f64 1/2 (*.f64 (pow.f64 im 4) (-.f64 (*.f64 27/4 (sin.f64 re)) (+.f64 (*.f64 8/3 (sin.f64 re)) (*.f64 4 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))))))))))
(+.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1)) (*.f64 (pow.f64 im 4) (-.f64 (*.f64 (sin.f64 re) 27/4) (fma.f64 8/3 (sin.f64 re) (*.f64 (*.f64 (sin.f64 re) 1) 4)))))))
(fma.f64 1/2 (fma.f64 (*.f64 im im) (sin.f64 re) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 (sin.f64 re) 49/12) (*.f64 -4 (sin.f64 re))))) (sin.f64 re))
(fma.f64 1/2 (fma.f64 (*.f64 im im) (sin.f64 re) (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/12))) (sin.f64 re))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))) (pow.f64 im 2))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 81/40 (sin.f64 re)) (+.f64 (*.f64 16/45 (sin.f64 re)) (+.f64 (*.f64 4 (-.f64 (*.f64 27/4 (sin.f64 re)) (+.f64 (*.f64 8/3 (sin.f64 re)) (*.f64 4 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))))))) (*.f64 4/3 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re))))))) (pow.f64 im 6))) (*.f64 1/2 (*.f64 (pow.f64 im 4) (-.f64 (*.f64 27/4 (sin.f64 re)) (+.f64 (*.f64 8/3 (sin.f64 re)) (*.f64 4 (-.f64 (*.f64 9 (sin.f64 re)) (*.f64 8 (sin.f64 re)))))))))))
(+.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1)) (*.f64 1/2 (+.f64 (*.f64 (-.f64 (*.f64 (sin.f64 re) 81/40) (fma.f64 16/45 (sin.f64 re) (fma.f64 4 (-.f64 (*.f64 (sin.f64 re) 27/4) (fma.f64 8/3 (sin.f64 re) (*.f64 (*.f64 (sin.f64 re) 1) 4))) (*.f64 (*.f64 (sin.f64 re) 1) 4/3)))) (pow.f64 im 6)) (*.f64 (pow.f64 im 4) (-.f64 (*.f64 (sin.f64 re) 27/4) (fma.f64 8/3 (sin.f64 re) (*.f64 (*.f64 (sin.f64 re) 1) 4))))))))
(+.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (fma.f64 (-.f64 (*.f64 (sin.f64 re) 601/360) (fma.f64 4 (+.f64 (*.f64 (sin.f64 re) 49/12) (*.f64 -4 (sin.f64 re))) (*.f64 (sin.f64 re) 4/3))) (pow.f64 im 6) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 (sin.f64 re) 49/12) (*.f64 -4 (sin.f64 re))))) (*.f64 im (*.f64 im (sin.f64 re))))))
(+.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (fma.f64 (+.f64 (*.f64 (sin.f64 re) 121/360) (*.f64 -4 (*.f64 (sin.f64 re) 1/12))) (pow.f64 im 6) (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/12))) (*.f64 im (*.f64 im (sin.f64 re))))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2)))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1)))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (*.f64 im im))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im)))
(+.f64 2 (+.f64 (pow.f64 im 2) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (*.f64 1/360 (pow.f64 im 6)))))
(+.f64 2 (+.f64 (*.f64 im im) (fma.f64 1/12 (pow.f64 im 4) (*.f64 (pow.f64 im 6) 1/360))))
(+.f64 2 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 (*.f64 (pow.f64 im 6) 1/360))))
(+.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 im 4) 1/12 (*.f64 (pow.f64 im 6) 1/360)))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (*.f64 2 im))) 1))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(/.f64 (+.f64 (exp.f64 (*.f64 -3 im)) (*.f64 (exp.f64 im) (pow.f64 (exp.f64 im) 2))) (-.f64 (+.f64 (exp.f64 (*.f64 -2 im)) (exp.f64 (neg.f64 (*.f64 -2 im)))) 1))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(+.f64 1 (expm1.f64 (*.f64 im -3)))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(+.f64 0 (pow.f64 (exp.f64 -3) im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 im) -3)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (exp.f64 im) -3)))))
(-.f64 (+.f64 1 (pow.f64 (exp.f64 -3) im)) 1)
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(*.f64 (pow.f64 (exp.f64 -3) im) 1)
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(*.f64 1 (pow.f64 (exp.f64 -3) im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(*.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im)) (cbrt.f64 (exp.f64 (*.f64 -6 im))))
(*.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im)) (cbrt.f64 (pow.f64 (exp.f64 -6) im)))
(*.f64 (cbrt.f64 (pow.f64 (exp.f64 im) -3)) (cbrt.f64 (pow.f64 (exp.f64 im) -6)))
(*.f64 (cbrt.f64 (exp.f64 (*.f64 -6 im))) (cbrt.f64 (pow.f64 (exp.f64 -3) im)))
(*.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im)) (cbrt.f64 (pow.f64 (exp.f64 -6) im)))
(*.f64 (cbrt.f64 (pow.f64 (exp.f64 im) -3)) (cbrt.f64 (pow.f64 (exp.f64 im) -6)))
(*.f64 (pow.f64 (exp.f64 im) -3/2) (pow.f64 (exp.f64 im) -3/2))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(*.f64 (pow.f64 1 1/3) (pow.f64 (exp.f64 -3) im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(*.f64 (pow.f64 1 im) (pow.f64 (exp.f64 -3) im))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 -3)) 2) im) (pow.f64 (cbrt.f64 (exp.f64 -3)) im))
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 -3)) im) (pow.f64 (sqrt.f64 (exp.f64 -3)) im))
(pow.f64 (sqrt.f64 (exp.f64 -3)) (+.f64 im im))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) -3) (pow.f64 (cbrt.f64 (exp.f64 im)) -3))
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 im)) -3) (pow.f64 (sqrt.f64 (exp.f64 im)) -3))
(pow.f64 (sqrt.f64 (exp.f64 im)) -6)
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3)) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3))))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) -3) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) -3) 3))))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3/2)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3/2)))
(*.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 -6 im)) (cbrt.f64 (exp.f64 (*.f64 -6 im)))) 1/3) (cbrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 -6) im) (cbrt.f64 (pow.f64 (exp.f64 -6) im)))) (cbrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 im) -6) (cbrt.f64 (pow.f64 (exp.f64 im) -6)))) (cbrt.f64 (cbrt.f64 (pow.f64 (exp.f64 im) -3))))
(*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -6) im)) (pow.f64 (exp.f64 -6) im))) (cbrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))))
(*.f64 (pow.f64 (*.f64 (exp.f64 (*.f64 -6 im)) (pow.f64 (exp.f64 im) -3/2)) 1/3) (cbrt.f64 (pow.f64 (exp.f64 im) -3/2)))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 -6) im) (pow.f64 (exp.f64 im) -3/2))) (cbrt.f64 (pow.f64 (exp.f64 im) -3/2)))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 im) -6) (pow.f64 (exp.f64 im) -3/2))) (cbrt.f64 (pow.f64 (exp.f64 im) -3/2)))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 im) -3/2) (pow.f64 (exp.f64 -6) im))) (cbrt.f64 (pow.f64 (exp.f64 im) -3/2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))) 2) 3) (cbrt.f64 (pow.f64 (exp.f64 -3) im)))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im))) 3))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(pow.f64 (pow.f64 (exp.f64 -3) im) 1)
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(pow.f64 (exp.f64 im) -3)
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 (*.f64 -6 im)) 1/2)
(sqrt.f64 (pow.f64 (exp.f64 -6) im))
(sqrt.f64 (pow.f64 (exp.f64 im) -6))
(pow.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3) 1/3)
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(pow.f64 (cbrt.f64 (pow.f64 (exp.f64 -3) im)) 3)
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(pow.f64 (pow.f64 (exp.f64 im) -3/2) 2)
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(pow.f64 (exp.f64 1) (*.f64 im -3))
(pow.f64 (E.f64) (*.f64 -3 im))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 im -3)) 2)) (cbrt.f64 (*.f64 im -3)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 -3 im)) 2)) (cbrt.f64 (*.f64 -3 im)))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 im -3))) (sqrt.f64 (*.f64 im -3)))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 -3 im))) (sqrt.f64 (*.f64 -3 im)))
(sqrt.f64 (exp.f64 (*.f64 -6 im)))
(sqrt.f64 (pow.f64 (exp.f64 -6) im))
(sqrt.f64 (pow.f64 (exp.f64 im) -6))
(log.f64 (exp.f64 (pow.f64 (exp.f64 -3) im)))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(cbrt.f64 (pow.f64 (pow.f64 (exp.f64 -3) im) 3))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(expm1.f64 (log1p.f64 (pow.f64 (exp.f64 -3) im)))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(log1p.f64 (expm1.f64 (pow.f64 (exp.f64 -3) im)))
(pow.f64 (exp.f64 -3) im)
(pow.f64 (exp.f64 im) -3)
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(pow.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) 1)
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(log.f64 (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))) (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(exp.f64 (log.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))))
(*.f64 1/2 (/.f64 (sin.f64 re) (/.f64 (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)))) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 re) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2)))) (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3))))
(*.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (/.f64 1 (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(*.f64 1 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (cbrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))))) (cbrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (sqrt.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(pow.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))) 1)
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(log.f64 (exp.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im)))) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))) (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(expm1.f64 (log1p.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(log1p.f64 (expm1.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))
(exp.f64 (log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (-.f64 (pow.f64 (exp.f64 2) im) 1)))
(/.f64 (+.f64 (pow.f64 (exp.f64 im) -3) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 im) -2) (expm1.f64 (+.f64 im im))))
(/.f64 (+.f64 (pow.f64 (exp.f64 -3) im) (pow.f64 (exp.f64 im) 3)) (+.f64 (pow.f64 (exp.f64 2) im) (expm1.f64 (*.f64 im -2))))

eval398.0ms (4.2%)

Compiler

Compiled 21455 to 11735 computations (45.3% saved)

prune169.0ms (1.8%)

Pruning

13 alts after pruning (10 fresh and 3 done)

PrunedKeptTotal
New6937700
Fresh033
Picked011
Done325
Total69613709
Error
0b
Counts
709 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im)))
0.8b
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
0.8b
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
28.1b
(*.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/2 re))
0.1b
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (exp.f64 (*.f64 im -3)) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (expm1.f64 (+.f64 im im)))))
0.7b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 (/.f64 1 im) -4) 1/12)))
0.7b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) 1/12)))
0.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.7b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
27.7b
(*.f64 re (cosh.f64 im))
27.7b
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
1.0b
(sin.f64 re)
28.2b
re
Compiler

Compiled 310 to 219 computations (29.4% saved)

localize17.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 49 to 22 computations (55.1% saved)

series37.0ms (0.4%)

Counts
3 → 72
Calls

18 calls:

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

Compiled 5075 to 2335 computations (54% saved)

rewrite55.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1001×pow1_binary64
927×add-log-exp_binary64
925×log1p-expm1-u_binary64
925×expm1-log1p-u_binary64
129×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify42.0ms (0.4%)

Algorithm
egg-herbie
Rules
212×fma-def_binary64
185×times-frac_binary64
165×associate-*l*_binary64
158×associate-*r*_binary64
103×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02232009
16632009
235932009
Stop Event
unsound
Counts
137 → 86
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im)))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (sin.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 re) im)) (*.f64 1/2 (sin.f64 re)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 re) im)) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 re) im)) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 3) (sin.f64 re))) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 -1 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 -1 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 -1 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 -1 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) re))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) re)) (*.f64 -1/12 (*.f64 (exp.f64 im) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) re)) (+.f64 (*.f64 -1/12 (*.f64 (exp.f64 im) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (exp.f64 im) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) re)) (+.f64 (*.f64 -1/12 (*.f64 (exp.f64 im) (pow.f64 re 3))) (+.f64 (*.f64 -1/10080 (*.f64 (exp.f64 im) (pow.f64 re 7))) (*.f64 1/240 (*.f64 (exp.f64 im) (pow.f64 re 5))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (*.f64 1/2 (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 im 3) (sin.f64 re))) (*.f64 1/2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 (+.f64 (*.f64 1/2 (exp.f64 (neg.f64 im))) (*.f64 1/2 (exp.f64 im))) re)
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (neg.f64 im))) (*.f64 1/2 (exp.f64 im))) re) (*.f64 (+.f64 (*.f64 -1/12 (exp.f64 (neg.f64 im))) (*.f64 -1/12 (exp.f64 im))) (pow.f64 re 3)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (neg.f64 im))) (*.f64 1/2 (exp.f64 im))) re) (+.f64 (*.f64 (+.f64 (*.f64 1/240 (exp.f64 im)) (*.f64 1/240 (exp.f64 (neg.f64 im)))) (pow.f64 re 5)) (*.f64 (+.f64 (*.f64 -1/12 (exp.f64 (neg.f64 im))) (*.f64 -1/12 (exp.f64 im))) (pow.f64 re 3))))
(+.f64 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 -1/10080 (exp.f64 (neg.f64 im))) (*.f64 -1/10080 (exp.f64 im)))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (neg.f64 im))) (*.f64 1/2 (exp.f64 im))) re) (+.f64 (*.f64 (+.f64 (*.f64 1/240 (exp.f64 im)) (*.f64 1/240 (exp.f64 (neg.f64 im)))) (pow.f64 re 5)) (*.f64 (+.f64 (*.f64 -1/12 (exp.f64 (neg.f64 im))) (*.f64 -1/12 (exp.f64 im))) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re))) im))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re))) im)))
(+.f64 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 1/12 (sin.f64 re)) (*.f64 -1/12 (sin.f64 re)))) (+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re))) im))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (*.f64 -1 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (*.f64 -1 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (*.f64 -1 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (*.f64 -1 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))) 1)
(/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) 3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) 2)
(pow.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) 1/3)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (exp.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))))
(cbrt.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))))
(exp.f64 (+.f64 im (log.f64 (*.f64 1/2 (sin.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))) 1)
(/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) 3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) 2)
(pow.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) 1/3)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (exp.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))))
(cbrt.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))))
(exp.f64 (+.f64 im (log.f64 (*.f64 1/2 (sin.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))) (/.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))))
(*.f64 1/2 (+.f64 (*.f64 (sin.f64 re) (exp.f64 im)) (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 im)))
(*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 1)
(*.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (sin.f64 re) 2))) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (+.f64 (exp.f64 im) (exp.f64 im))))
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))) (cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 2)) (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))))
(*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (+.f64 (exp.f64 im) (exp.f64 im))))
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))) (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))))
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3))) (/.f64 1 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))))))
(*.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))) (/.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 im)) (*.f64 1/2 (sin.f64 re)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))))) (+.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)))))
(/.f64 1 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))))))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3))) (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))))))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))))
(/.f64 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)))) (neg.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))))))
(/.f64 (neg.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))))) (neg.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 1)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))) 3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(fma.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) 2) (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
Outputs
(*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im)))))
(fma.f64 -1/12 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im))))))
(fma.f64 1/240 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 5)) (fma.f64 -1/12 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im)))))))
(fma.f64 1/240 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 5)) (fma.f64 -1/12 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 3)) (fma.f64 -1/10080 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 7)) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im)))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 re) im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 re) im)) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 re) im)) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 3) (sin.f64 re))) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 -1 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 -1 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 -1 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 -1 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) re))
(*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) re)) (*.f64 -1/12 (*.f64 (exp.f64 im) (pow.f64 re 3))))
(fma.f64 -1/12 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) re)) (+.f64 (*.f64 -1/12 (*.f64 (exp.f64 im) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (exp.f64 im) (pow.f64 re 5)))))
(fma.f64 1/240 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 5)) (fma.f64 -1/12 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) re)) (+.f64 (*.f64 -1/12 (*.f64 (exp.f64 im) (pow.f64 re 3))) (+.f64 (*.f64 -1/10080 (*.f64 (exp.f64 im) (pow.f64 re 7))) (*.f64 1/240 (*.f64 (exp.f64 im) (pow.f64 re 5))))))
(fma.f64 1/240 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 5)) (fma.f64 -1/12 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 3)) (fma.f64 -1/10080 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 7)) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im)))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (sin.f64 re))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 im 3) (sin.f64 re))) (*.f64 1/2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (+.f64 (*.f64 1/2 (exp.f64 (neg.f64 im))) (*.f64 1/2 (exp.f64 im))) re)
(*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (neg.f64 im))) (*.f64 1/2 (exp.f64 im))) re) (*.f64 (+.f64 (*.f64 -1/12 (exp.f64 (neg.f64 im))) (*.f64 -1/12 (exp.f64 im))) (pow.f64 re 3)))
(fma.f64 -1/12 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (neg.f64 im))) (*.f64 1/2 (exp.f64 im))) re) (+.f64 (*.f64 (+.f64 (*.f64 1/240 (exp.f64 im)) (*.f64 1/240 (exp.f64 (neg.f64 im)))) (pow.f64 re 5)) (*.f64 (+.f64 (*.f64 -1/12 (exp.f64 (neg.f64 im))) (*.f64 -1/12 (exp.f64 im))) (pow.f64 re 3))))
(fma.f64 1/240 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 5)) (fma.f64 -1/12 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 -1/10080 (exp.f64 (neg.f64 im))) (*.f64 -1/10080 (exp.f64 im)))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (exp.f64 (neg.f64 im))) (*.f64 1/2 (exp.f64 im))) re) (+.f64 (*.f64 (+.f64 (*.f64 1/240 (exp.f64 im)) (*.f64 1/240 (exp.f64 (neg.f64 im)))) (pow.f64 re 5)) (*.f64 (+.f64 (*.f64 -1/12 (exp.f64 (neg.f64 im))) (*.f64 -1/12 (exp.f64 im))) (pow.f64 re 3)))))
(fma.f64 1/240 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 5)) (fma.f64 -1/12 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 3)) (fma.f64 -1/10080 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 re 7)) (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im)))))))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (exp.f64 im) (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(sin.f64 re)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re))) im))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re))) im)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 1/12 (sin.f64 re)) (*.f64 -1/12 (sin.f64 re)))) (+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re))) im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (*.f64 -1 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (*.f64 -1 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (*.f64 -1 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 (*.f64 -1 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))) 1)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 1)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) 3)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) 2)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) 1/3)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(cbrt.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(exp.f64 (+.f64 im (log.f64 (*.f64 1/2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))) 1)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(/.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 1)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) 3)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) 2)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) 1/3)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(cbrt.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(exp.f64 (+.f64 im (log.f64 (*.f64 1/2 (sin.f64 re)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))))) 1)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(-.f64 (/.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))) (/.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (+.f64 (*.f64 (sin.f64 re) (exp.f64 im)) (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 im)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 1)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (sin.f64 re) 2))) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (+.f64 (exp.f64 im) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))) (cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 2)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 2)) (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (+.f64 (exp.f64 im) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))) (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3))) (/.f64 1 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))) (/.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 im)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))))) (+.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(/.f64 1 (/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3))) (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(/.f64 (neg.f64 (+.f64 (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)) (*.f64 1/8 (pow.f64 (*.f64 (sin.f64 re) (exp.f64 im)) 3)))) (neg.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(/.f64 (neg.f64 (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im))))) (neg.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 im)))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 1)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 3) 1/3)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))) 3)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))) 2)
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 2))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im)))) 3))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 im))))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 im) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 (exp.f64 im) (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) 2) (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im)))) (*.f64 1/2 (*.f64 (sin.f64 re) (exp.f64 im))))
(*.f64 1/2 (*.f64 (exp.f64 (neg.f64 im)) (sin.f64 re)))

localize10.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 26 to 14 computations (46.2% saved)

series50.0ms (0.5%)

Counts
1 → 24
Calls

6 calls:

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

Compiled 1115 to 835 computations (25.1% saved)

rewrite48.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
930×pow1_binary64
866×add-log-exp_binary64
865×log1p-expm1-u_binary64
865×expm1-log1p-u_binary64
850×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify49.0ms (0.5%)

Algorithm
egg-herbie
Rules
663×fma-def_binary64
439×div-sub_binary64
421×log-prod_binary64
282×exp-sum_binary64
266×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
085551
1241547
2781537
32696533
46292533
Stop Event
node limit
Counts
45 → 44
Calls
Call 1
Inputs
re
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) re)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) re)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) re)
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re)) re)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re)) re)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re)) re)
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(+.f64 (*.f64 2 (*.f64 1/2 re)) (*.f64 (*.f64 im im) (*.f64 1/2 re)))
(+.f64 (*.f64 (*.f64 im im) (*.f64 1/2 re)) (*.f64 2 (*.f64 1/2 re)))
(+.f64 (*.f64 (*.f64 1/2 re) 2) (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(+.f64 (*.f64 (*.f64 1/2 re) (*.f64 im im)) (*.f64 (*.f64 1/2 re) 2))
(-.f64 (+.f64 1 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))) 1)
(/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (*.f64 1/2 re)) (+.f64 4 (+.f64 (pow.f64 im 4) (*.f64 -2 (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) (*.f64 1/2 re)) (-.f64 2 (*.f64 im im)))
(/.f64 (*.f64 (*.f64 1/2 re) (+.f64 8 (pow.f64 im 6))) (+.f64 4 (+.f64 (pow.f64 im 4) (*.f64 -2 (*.f64 im im)))))
(/.f64 (*.f64 (*.f64 1/2 re) (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))
(pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re)) 1)
(pow.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))) 3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 re) 3) (pow.f64 (fma.f64 im im 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))))
(exp.f64 (log.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))))
Outputs
re
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) re)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) re)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) re)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 1 im) -2)) re)
(*.f64 re (*.f64 1/2 (pow.f64 (/.f64 1 im) -2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re))
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 1 im) -2)) re)
(*.f64 re (*.f64 1/2 (pow.f64 (/.f64 1 im) -2)))
(*.f64 im (*.f64 1/2 (*.f64 re im)))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re)) re)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re)) re)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re)) re)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (+.f64 2 (pow.f64 im 2)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(+.f64 (*.f64 2 (*.f64 1/2 re)) (*.f64 (*.f64 im im) (*.f64 1/2 re)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(+.f64 (*.f64 (*.f64 im im) (*.f64 1/2 re)) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(+.f64 (*.f64 (*.f64 1/2 re) 2) (*.f64 (*.f64 1/2 re) (*.f64 im im)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(+.f64 (*.f64 (*.f64 1/2 re) (*.f64 im im)) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(-.f64 (+.f64 1 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))) 1)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(/.f64 (*.f64 (+.f64 8 (pow.f64 im 6)) (*.f64 1/2 re)) (+.f64 4 (+.f64 (pow.f64 im 4) (*.f64 -2 (*.f64 im im)))))
(/.f64 (*.f64 re 1/2) (/.f64 (+.f64 (+.f64 4 (pow.f64 im 4)) (*.f64 -2 (*.f64 im im))) (+.f64 8 (pow.f64 im 6))))
(*.f64 (/.f64 (*.f64 re 1/2) (+.f64 4 (fma.f64 (*.f64 im -2) im (pow.f64 im 4)))) (+.f64 8 (pow.f64 im 6)))
(*.f64 (+.f64 8 (pow.f64 im 6)) (/.f64 re (/.f64 (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4) 1/2)))
(/.f64 re (/.f64 (fma.f64 im (*.f64 im (fma.f64 im im -2)) 4) (fma.f64 1/2 (pow.f64 im 6) 4)))
(*.f64 (/.f64 re (fma.f64 im (*.f64 im (fma.f64 im im -2)) 4)) (fma.f64 1/2 (pow.f64 im 6) 4))
(/.f64 (*.f64 (-.f64 4 (pow.f64 im 4)) (*.f64 1/2 re)) (-.f64 2 (*.f64 im im)))
(/.f64 (*.f64 re 1/2) (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4))))
(*.f64 (/.f64 (*.f64 re 1/2) (-.f64 2 (*.f64 im im))) (-.f64 4 (pow.f64 im 4)))
(*.f64 (*.f64 re 1/2) (/.f64 (-.f64 4 (pow.f64 im 4)) (-.f64 2 (*.f64 im im))))
(*.f64 re (/.f64 (-.f64 4 (pow.f64 im 4)) (-.f64 4 (/.f64 im (/.f64 1/2 im)))))
(/.f64 (*.f64 (*.f64 1/2 re) (+.f64 8 (pow.f64 im 6))) (+.f64 4 (+.f64 (pow.f64 im 4) (*.f64 -2 (*.f64 im im)))))
(/.f64 (*.f64 re 1/2) (/.f64 (+.f64 (+.f64 4 (pow.f64 im 4)) (*.f64 -2 (*.f64 im im))) (+.f64 8 (pow.f64 im 6))))
(*.f64 (/.f64 (*.f64 re 1/2) (+.f64 4 (fma.f64 (*.f64 im -2) im (pow.f64 im 4)))) (+.f64 8 (pow.f64 im 6)))
(*.f64 (+.f64 8 (pow.f64 im 6)) (/.f64 re (/.f64 (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4) 1/2)))
(/.f64 re (/.f64 (fma.f64 im (*.f64 im (fma.f64 im im -2)) 4) (fma.f64 1/2 (pow.f64 im 6) 4)))
(*.f64 (/.f64 re (fma.f64 im (*.f64 im (fma.f64 im im -2)) 4)) (fma.f64 1/2 (pow.f64 im 6) 4))
(/.f64 (*.f64 (*.f64 1/2 re) (-.f64 4 (pow.f64 im 4))) (-.f64 2 (*.f64 im im)))
(/.f64 (*.f64 re 1/2) (/.f64 (-.f64 2 (*.f64 im im)) (-.f64 4 (pow.f64 im 4))))
(*.f64 (/.f64 (*.f64 re 1/2) (-.f64 2 (*.f64 im im))) (-.f64 4 (pow.f64 im 4)))
(*.f64 (*.f64 re 1/2) (/.f64 (-.f64 4 (pow.f64 im 4)) (-.f64 2 (*.f64 im im))))
(*.f64 re (/.f64 (-.f64 4 (pow.f64 im 4)) (-.f64 4 (/.f64 im (/.f64 1/2 im)))))
(pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re)) 1)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(pow.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re)) 3) 1/3)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))) 3)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))) 2)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re)) 2))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re)) 3))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 re) 3)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 re) 3) (pow.f64 (fma.f64 im im 2) 3)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(exp.f64 (log.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 re))))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(*.f64 (*.f64 re 1/2) (fma.f64 im im 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))

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

series22.0ms (0.2%)

Counts
2 → 28
Calls

9 calls:

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

Compiled 2060 to 1520 computations (26.2% saved)

rewrite50.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
944×pow1_binary64
873×add-log-exp_binary64
873×log1p-expm1-u_binary64
873×expm1-log1p-u_binary64
855×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01020
120520
2245920
Stop Event
node limit
Counts
2 → 32
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 1/2 (*.f64 im im)) (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (*.f64 1/8 (pow.f64 (*.f64 im im) 3))) (sin.f64 re)) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1) (sin.f64 re)) (fma.f64 1/2 (*.f64 im im) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1)) (fma.f64 1/2 (*.f64 im im) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (*.f64 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 1/2 (*.f64 im im) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) 1) 3) (pow.f64 (sin.f64 re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 (*.f64 im im) 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 1/2 (*.f64 im im) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (*.f64 im im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) 3)))) (#(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 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/2 (*.f64 im im))))))))

simplify47.0ms (0.5%)

Algorithm
egg-herbie
Rules
631×associate-*l*_binary64
585×associate-*r*_binary64
457×log-prod_binary64
371×fma-def_binary64
202×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0120806
1326790
21000755
35332738
Stop Event
node limit
Counts
60 → 63
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 (+.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 (/.f64 1 im) -2))
(*.f64 1/2 (pow.f64 (/.f64 1 im) -2))
(*.f64 1/2 (pow.f64 (/.f64 1 im) -2))
(*.f64 1/2 (pow.f64 (/.f64 1 im) -2))
(*.f64 1/2 (pow.f64 (/.f64 -1 im) -2))
(*.f64 1/2 (pow.f64 (/.f64 -1 im) -2))
(*.f64 1/2 (pow.f64 (/.f64 -1 im) -2))
(*.f64 1/2 (pow.f64 (/.f64 -1 im) -2))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (*.f64 im im)) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (sin.f64 re))
(-.f64 (+.f64 1 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))) 1)
(/.f64 (*.f64 (+.f64 1 (*.f64 1/8 (pow.f64 (*.f64 im im) 3))) (sin.f64 re)) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1) (sin.f64 re)) (fma.f64 1/2 (*.f64 im im) -1))
(/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1)) (fma.f64 1/2 (*.f64 im im) -1))
(pow.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) 1)
(pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))) 3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (*.f64 im im) 1)))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (*.f64 im im) 1) 3) (pow.f64 (sin.f64 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (fma.f64 1/2 (*.f64 im im) 1) 3)))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))))
(-.f64 (fma.f64 1/2 (*.f64 im im) 1) 1)
(pow.f64 (*.f64 1/2 (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) 3)
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(pow.f64 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)) 1/3)
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 im im)))
(cbrt.f64 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im im))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im im))))
Outputs
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.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) (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) (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/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 (pow.f64 re 3) (fma.f64 1/2 (*.f64 im im) 1)) (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))
(fma.f64 re (fma.f64 1/2 (*.f64 im im) 1) (*.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/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 (pow.f64 re 3) (fma.f64 1/2 (*.f64 im im) 1)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/2 (*.f64 im im) 1)) (*.f64 re (fma.f64 1/2 (*.f64 im im) 1))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (*.f64 im im) 1)) (fma.f64 re (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 re 5) 1/120))))
(fma.f64 (pow.f64 re 3) (+.f64 -1/6 (*.f64 (*.f64 im im) -1/12)) (*.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 re (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.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 (pow.f64 re 3) (fma.f64 1/2 (*.f64 im im) 1)) (fma.f64 -1/5040 (*.f64 (pow.f64 re 7) (fma.f64 1/2 (*.f64 im im) 1)) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/2 (*.f64 im im) 1)) (*.f64 re (fma.f64 1/2 (*.f64 im im) 1)))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/2 (*.f64 im im) 1)) (fma.f64 (*.f64 -1/5040 (fma.f64 1/2 (*.f64 im im) 1)) (pow.f64 re 7) (fma.f64 re (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 re 5) 1/120)))))
(+.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))) (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (fma.f64 1/2 (*.f64 im im) 1) (+.f64 (+.f64 re (*.f64 -1/6 (pow.f64 re 3))) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.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) (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) (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) (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) (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) (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) (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) (fma.f64 1/2 (*.f64 im im) 1))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 (/.f64 1 im) -2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 (/.f64 1 im) -2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 (/.f64 1 im) -2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 (/.f64 1 im) -2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 (/.f64 -1 im) -2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 (/.f64 -1 im) -2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 (/.f64 -1 im) -2))
(*.f64 1/2 (*.f64 im im))
(*.f64 1/2 (pow.f64 (/.f64 -1 im) -2))
(*.f64 1/2 (*.f64 im im))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (*.f64 im im)) (sin.f64 re)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (sin.f64 re)) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im im))) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(-.f64 (+.f64 1 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))) 1)
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(/.f64 (*.f64 (+.f64 1 (*.f64 1/8 (pow.f64 (*.f64 im im) 3))) (sin.f64 re)) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (sin.f64 re) (/.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 -1/2 (*.f64 im im)))) (+.f64 1 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/4 (pow.f64 im 4) 1) (*.f64 (*.f64 im im) -1/2))) (fma.f64 1/8 (pow.f64 im 6) 1))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (fma.f64 1/4 (pow.f64 im 4) (fma.f64 (*.f64 im im) -1/2 1))))
(/.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1) (sin.f64 re)) (fma.f64 1/2 (*.f64 im im) -1))
(/.f64 (fma.f64 1/4 (pow.f64 im 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 1/4 (pow.f64 im 4) -1))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/4 (pow.f64 im 4) -1) (fma.f64 1/2 (*.f64 im im) -1)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)))) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (-.f64 1 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (sin.f64 re) (/.f64 (fma.f64 1/4 (pow.f64 im 4) (+.f64 1 (*.f64 -1/2 (*.f64 im im)))) (+.f64 1 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)))))
(*.f64 (/.f64 (sin.f64 re) (+.f64 (fma.f64 1/4 (pow.f64 im 4) 1) (*.f64 (*.f64 im im) -1/2))) (fma.f64 1/8 (pow.f64 im 6) 1))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/8 (pow.f64 im 6) 1) (fma.f64 1/4 (pow.f64 im 4) (fma.f64 (*.f64 im im) -1/2 1))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/4 (pow.f64 im 4)) -1)) (fma.f64 1/2 (*.f64 im im) -1))
(/.f64 (fma.f64 1/4 (pow.f64 im 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 1/4 (pow.f64 im 4) -1))
(*.f64 (sin.f64 re) (/.f64 (fma.f64 1/4 (pow.f64 im 4) -1) (fma.f64 1/2 (*.f64 im im) -1)))
(pow.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) 1)
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) 3) 1/3)
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))) 3)
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))) 2)
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) 2))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (fma.f64 1/2 (*.f64 im im) 1)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re)) 3))
(*.f64 (sin.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 (sin.f64 re) 3)))
(*.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 1/2 (*.f64 im im) 1) 3)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(exp.f64 (log.f64 (*.f64 (fma.f64 1/2 (*.f64 im im) 1) (sin.f64 re))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (*.f64 im im) 1))
(-.f64 (fma.f64 1/2 (*.f64 im im) 1) 1)
(*.f64 1/2 (*.f64 im im))
(pow.f64 (*.f64 1/2 (*.f64 im im)) 1)
(*.f64 1/2 (*.f64 im im))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) 3)
(*.f64 1/2 (*.f64 im im))
(pow.f64 (*.f64 im (sqrt.f64 1/2)) 2)
(*.f64 1/2 (*.f64 im im))
(pow.f64 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)) 1/3)
(cbrt.f64 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)))
(cbrt.f64 (*.f64 1/8 (pow.f64 im 6)))
(sqrt.f64 (*.f64 1/4 (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 im im)))
(*.f64 1/2 (*.f64 im im))
(cbrt.f64 (*.f64 1/8 (pow.f64 (*.f64 im im) 3)))
(cbrt.f64 (*.f64 1/8 (pow.f64 im 6)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 1/2 (*.f64 im im))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 1/2 (*.f64 im im))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 1/2 (*.f64 im im))

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 35 to 11 computations (68.6% saved)

series43.0ms (0.5%)

Counts
3 → 48
Calls

18 calls:

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

Compiled 4060 to 2700 computations (33.5% saved)

rewrite65.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
991×prod-diff_binary64
485×log-prod_binary64
319×pow-prod-down_binary64
266×fma-def_binary64
251×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify87.0ms (0.9%)

Algorithm
egg-herbie
Rules
761×fma-neg_binary64
548×log-prod_binary64
310×*-commutative_binary64
300×distribute-rgt-in_binary64
284×distribute-lft-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02722736
16862532
220032489
367202475
Stop Event
node limit
Counts
145 → 181
Calls
Call 1
Inputs
(*.f64 (pow.f64 im 2) re)
(+.f64 (*.f64 (pow.f64 im 2) re) (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3))))
(+.f64 (*.f64 (pow.f64 im 2) re) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (+.f64 (*.f64 (pow.f64 im 2) re) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3))))))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (*.f64 (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (+.f64 (*.f64 (-.f64 (*.f64 -1/10080 (pow.f64 im 2)) 1/5040) (pow.f64 re 7)) (*.f64 (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5)))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)) (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 im im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 im im)))) 1)
(pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 3)
(pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4))
(log.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 im im)))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))) 1)
(-.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) (/.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(*.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1)
(*.f64 1 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) 2) (cbrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (sqrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(*.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2)))))
(*.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (/.f64 1 (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2))) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3))))
(/.f64 1 (/.f64 (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))) (neg.f64 (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (pow.f64 (sin.f64 re) 2)) (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (neg.f64 (sin.f64 re))))
(pow.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1)
(pow.f64 (pow.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) 3)
(pow.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) 2)
(pow.f64 (/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2))) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3))) -1)
(pow.f64 (/.f64 (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))) -1)
(sqrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 2))
(log.f64 (exp.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im)))))
(log.f64 (*.f64 (exp.f64 (sin.f64 re)) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))) (exp.f64 (sin.f64 re))))
(log.f64 (*.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 3))
(expm1.f64 (log1p.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(log1p.f64 (expm1.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(exp.f64 (log.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) 1))
(fma.f64 (sin.f64 re) 1 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))
(fma.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2) (sin.f64 re))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2 (sin.f64 re))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)) 1 (sin.f64 re))
(fma.f64 1 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4)) (*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 1/2) (sin.f64 re))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) im) (*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) im) (sin.f64 re))
(fma.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) (*.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 1/2) (sin.f64 re))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(fma.f64 (*.f64 (sin.f64 re) im) (*.f64 im 1/2) (sin.f64 re))
(fma.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 im im) (sin.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 im im)) (sin.f64 re) (sin.f64 re))
(fma.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im))) (sin.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 (sin.f64 re)))) (*.f64 im (sqrt.f64 (sin.f64 re))) (sin.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) im (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) im) im (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) 1) (*.f64 im im) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 (cbrt.f64 im) im)) (pow.f64 (cbrt.f64 im) 2) (sin.f64 re))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im)))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))))))
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))))) (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))) 1)
(pow.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)) 1)
(pow.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) 1/2)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))) 3)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) im) 2)
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) im) 6) 1/3)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) im) 6))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))) 1))
Outputs
(*.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 im im) re)
(*.f64 im (*.f64 im re))
(+.f64 (*.f64 (pow.f64 im 2) re) (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3))))
(fma.f64 (*.f64 im im) re (*.f64 -1/6 (*.f64 (*.f64 im im) (pow.f64 re 3))))
(fma.f64 (*.f64 im im) re (*.f64 (pow.f64 re 3) (*.f64 (*.f64 im im) -1/6)))
(*.f64 (*.f64 im im) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 (pow.f64 im 2) re) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3)))))
(fma.f64 (*.f64 im im) re (fma.f64 1/120 (*.f64 (*.f64 im im) (pow.f64 re 5)) (*.f64 -1/6 (*.f64 (*.f64 im im) (pow.f64 re 3)))))
(fma.f64 (*.f64 im im) re (fma.f64 -1/6 (*.f64 im (*.f64 im (pow.f64 re 3))) (*.f64 (pow.f64 re 5) (*.f64 (*.f64 im im) 1/120))))
(fma.f64 (*.f64 im im) re (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 1/120 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (+.f64 (*.f64 (pow.f64 im 2) re) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 -1/6 (*.f64 (pow.f64 im 2) (pow.f64 re 3))))))
(fma.f64 -1/5040 (*.f64 (*.f64 im im) (pow.f64 re 7)) (fma.f64 (*.f64 im im) re (fma.f64 1/120 (*.f64 (*.f64 im im) (pow.f64 re 5)) (*.f64 -1/6 (*.f64 (*.f64 im im) (pow.f64 re 3))))))
(+.f64 (fma.f64 -1/6 (*.f64 im (*.f64 im (pow.f64 re 3))) (*.f64 (pow.f64 re 5) (*.f64 (*.f64 im im) 1/120))) (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) re)))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (*.f64 im im) -1/6)) (*.f64 (*.f64 im im) (+.f64 (+.f64 re (*.f64 -1/5040 (pow.f64 re 7))) (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (+.f64 1 (*.f64 im (*.f64 im 1/2))))
(*.f64 re (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 re (fma.f64 im (*.f64 im 1/2) 1))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)))
(fma.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) re (*.f64 (pow.f64 re 3) (fma.f64 -1/12 (*.f64 im im) -1/6)))
(fma.f64 re (fma.f64 (*.f64 im im) 1/2 1) (*.f64 (pow.f64 re 3) (fma.f64 (*.f64 im im) -1/12 -1/6)))
(fma.f64 re (fma.f64 im (*.f64 im 1/2) 1) (*.f64 (pow.f64 re 3) (fma.f64 (*.f64 im im) -1/12 -1/6)))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (*.f64 (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5))))
(fma.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) re (fma.f64 (pow.f64 re 3) (fma.f64 -1/12 (*.f64 im im) -1/6) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (*.f64 im im) 1/240)))))
(fma.f64 re (fma.f64 (*.f64 im im) 1/2 1) (fma.f64 (pow.f64 re 3) (fma.f64 (*.f64 im im) -1/12 -1/6) (*.f64 (pow.f64 re 5) (fma.f64 (*.f64 im im) 1/240 1/120))))
(fma.f64 re (fma.f64 im (*.f64 im 1/2) 1) (fma.f64 (pow.f64 re 3) (fma.f64 (*.f64 im im) -1/12 -1/6) (*.f64 (pow.f64 re 5) (fma.f64 (*.f64 im im) 1/240 1/120))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (+.f64 (*.f64 (-.f64 (*.f64 -1/10080 (pow.f64 im 2)) 1/5040) (pow.f64 re 7)) (*.f64 (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5)))))
(fma.f64 (+.f64 1 (*.f64 im (*.f64 im 1/2))) re (fma.f64 (pow.f64 re 3) (fma.f64 -1/12 (*.f64 im im) -1/6) (fma.f64 (fma.f64 -1/10080 (*.f64 im im) -1/5040) (pow.f64 re 7) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (*.f64 im im) 1/240))))))
(fma.f64 re (fma.f64 (*.f64 im im) 1/2 1) (fma.f64 (pow.f64 re 3) (fma.f64 (*.f64 im im) -1/12 -1/6) (fma.f64 (pow.f64 re 5) (fma.f64 (*.f64 im im) 1/240 1/120) (*.f64 (pow.f64 re 7) (fma.f64 (*.f64 im im) -1/10080 -1/5040)))))
(fma.f64 re (fma.f64 im (*.f64 im 1/2) 1) (fma.f64 (pow.f64 re 3) (fma.f64 (*.f64 im im) -1/12 -1/6) (fma.f64 (pow.f64 re 5) (fma.f64 (*.f64 im im) 1/240 1/120) (*.f64 (pow.f64 re 7) (fma.f64 (*.f64 im im) -1/10080 -1/5040)))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 (*.f64 im im) re) 1/2)
(*.f64 im (*.f64 (*.f64 im 1/2) re))
(*.f64 im (*.f64 re (*.f64 im 1/2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))))
(fma.f64 1/2 (*.f64 (*.f64 im im) re) (*.f64 (*.f64 (*.f64 im im) (pow.f64 re 3)) -1/12))
(fma.f64 (*.f64 im (*.f64 im re)) 1/2 (*.f64 (pow.f64 re 3) (*.f64 im (*.f64 im -1/12))))
(*.f64 (*.f64 im im) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 re 1/2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5)))))
(fma.f64 1/2 (*.f64 (*.f64 im im) re) (fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (*.f64 (*.f64 (*.f64 im im) (pow.f64 re 5)) 1/240)))
(fma.f64 (*.f64 im (*.f64 im re)) 1/2 (fma.f64 (*.f64 im (*.f64 im (pow.f64 re 3))) -1/12 (*.f64 (*.f64 im im) (*.f64 1/240 (pow.f64 re 5)))))
(fma.f64 (*.f64 im (*.f64 im re)) 1/2 (*.f64 (*.f64 im im) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 (pow.f64 re 5) 1/240))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))))))
(fma.f64 1/2 (*.f64 (*.f64 im im) re) (fma.f64 -1/10080 (*.f64 (*.f64 im im) (pow.f64 re 7)) (fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (*.f64 (*.f64 (*.f64 im im) (pow.f64 re 5)) 1/240))))
(fma.f64 (*.f64 im (*.f64 im re)) 1/2 (fma.f64 (*.f64 im (*.f64 im (pow.f64 re 7))) -1/10080 (fma.f64 (*.f64 im (*.f64 im (pow.f64 re 3))) -1/12 (*.f64 (*.f64 im im) (*.f64 1/240 (pow.f64 re 5))))))
(+.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 (pow.f64 re 3) -1/12) (*.f64 re 1/2))) (*.f64 (*.f64 im im) (+.f64 (*.f64 (pow.f64 re 5) 1/240) (*.f64 (pow.f64 re 7) -1/10080))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)) (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 im im)))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 im im)))) 1)
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(pow.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1)
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/2)
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/3)
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 3)
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 2)
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(log.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im)))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 im im)))))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 1))
(*.f64 (*.f64 im (sin.f64 re)) im)
(*.f64 im (*.f64 im (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))) 1)
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(-.f64 (/.f64 (pow.f64 (sin.f64 re) 2) (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im))))) (/.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im (sin.f64 re)) im) -1/2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) -1/2 (sin.f64 re)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (*.f64 (sin.f64 re) (-.f64 1 (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (pow.f64 (sin.f64 re) 2)) (*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 -1)))
(*.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1)
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(*.f64 1 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(*.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) 2))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) 2) (cbrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) (sqrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(*.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2)))))
(*.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4 (*.f64 -1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2)))))
(*.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (/.f64 1 (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im (sin.f64 re)) im) -1/2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) -1/2 (sin.f64 re)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (*.f64 (sin.f64 re) (-.f64 1 (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (pow.f64 (sin.f64 re) 2)) (*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 -1)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2))) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3))))
(*.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4 (*.f64 -1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2)))))
(/.f64 1 (/.f64 (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im (sin.f64 re)) im) -1/2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) -1/2 (sin.f64 re)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (*.f64 (sin.f64 re) (-.f64 1 (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (pow.f64 (sin.f64 re) 2)) (*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 -1)))
(/.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2))))
(*.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4 (*.f64 -1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2))))
(*.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4 (*.f64 -1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im (sin.f64 re)) im) -1/2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) -1/2 (sin.f64 re)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (*.f64 (sin.f64 re) (-.f64 1 (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (pow.f64 (sin.f64 re) 2)) (*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 -1)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2)))))
(*.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4 (*.f64 -1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))) (neg.f64 (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im (sin.f64 re)) im) -1/2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) -1/2 (sin.f64 re)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (*.f64 (sin.f64 re) (-.f64 1 (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (pow.f64 (sin.f64 re) 2)) (*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 -1)))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (pow.f64 (sin.f64 re) 2)) (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (neg.f64 (sin.f64 re))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im (sin.f64 re)) im) -1/2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) -1/2 (sin.f64 re)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (*.f64 (sin.f64 re) (-.f64 1 (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (pow.f64 (sin.f64 re) 2)) (*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 -1)))
(pow.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 1)
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 2) 1/2)
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 3) 1/3)
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(pow.f64 (cbrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) 3)
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(pow.f64 (sqrt.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) 2)
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(pow.f64 (/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 re) im) 2) 1/2))) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3))) -1)
(*.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (*.f64 1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 6) 1/8 (pow.f64 (sin.f64 re) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (fma.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4 (*.f64 -1/2 (pow.f64 (*.f64 im (sin.f64 re)) 2)))))
(pow.f64 (/.f64 (+.f64 (sin.f64 re) (*.f64 -1/2 (*.f64 (sin.f64 re) (*.f64 im im)))) (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))) -1)
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 im (sin.f64 re)) im) -1/2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (fma.f64 (*.f64 im (*.f64 im (sin.f64 re))) -1/2 (sin.f64 re)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) -1/4)) (*.f64 (sin.f64 re) (-.f64 1 (*.f64 im (*.f64 im 1/2)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) (pow.f64 (sin.f64 re) 2)) (*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 -1)))
(sqrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 2))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(log.f64 (exp.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re))))) (log1p.f64 (expm1.f64 (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (/.f64 im 2) (sin.f64 re)) im))
(log.f64 (*.f64 (exp.f64 (sin.f64 re)) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))) (exp.f64 (sin.f64 re))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(log.f64 (*.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re))))) (log1p.f64 (expm1.f64 (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (/.f64 im 2) (sin.f64 re)) im))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(cbrt.f64 (pow.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re)) 3))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(expm1.f64 (log1p.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(log1p.f64 (expm1.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(exp.f64 (log.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))) 1))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (sin.f64 re) 1 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2) (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 im im) (*.f64 (sin.f64 re) 1/2) (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 im im)) 1/2 (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im)) (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)) 1 (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 1 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)) (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4)) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4)) (*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im))) 1/2) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4)) (*.f64 1/2 (cbrt.f64 (*.f64 (*.f64 im (sin.f64 re)) im))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4)) (*.f64 1/2 (cbrt.f64 (*.f64 im (*.f64 im (sin.f64 re))))) (sin.f64 re))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) im) (*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) im) (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) (*.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 1/2) (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 (sin.f64 re) im) (*.f64 im 1/2) (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 im im) (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 1/2 (*.f64 im im)) (sin.f64 re) (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 im im))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4)) (*.f64 1/2 (cbrt.f64 (*.f64 (*.f64 im (sin.f64 re)) im))) (sin.f64 re))
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4)) (*.f64 1/2 (cbrt.f64 (*.f64 im (*.f64 im (sin.f64 re))))) (sin.f64 re))
(fma.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 (sin.f64 re)))) (*.f64 im (sqrt.f64 (sin.f64 re))) (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 1/2 (*.f64 (sin.f64 re) im)) im (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) im) im (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) 1) (*.f64 im im) (sin.f64 re))
(fma.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) 1/2 1))
(*.f64 (sin.f64 re) (fma.f64 im (*.f64 im 1/2) 1))
(fma.f64 (*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 (cbrt.f64 im) im)) (pow.f64 (cbrt.f64 im) 2) (sin.f64 re))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (*.f64 im (cbrt.f64 im)))) (pow.f64 (cbrt.f64 im) 2) (sin.f64 re))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (cbrt.f64 im)) im)) (pow.f64 (cbrt.f64 im) 2) (sin.f64 re))
(fma.f64 (*.f64 im (*.f64 (sin.f64 re) (*.f64 1/2 (cbrt.f64 im)))) (pow.f64 (cbrt.f64 im) 2) (sin.f64 re))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im)))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re))))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re)))))))
(*.f64 3 (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re)))))))
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))))) (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))))))
(*.f64 2 (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re)))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))) 1)
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(pow.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)) 1)
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(pow.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4) 1/2)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))) 3)
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(pow.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) im) 2)
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(pow.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) im) 6) 1/3)
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 6))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) 4) 1/4))
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 (sin.f64 re) im))))
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (sin.f64 re)))))
(*.f64 (*.f64 (/.f64 im 2) (sin.f64 re)) im)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2)))))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 re) 1/2)) im) 6))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (*.f64 (sin.f64 re) 1/2))) 6))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 (*.f64 im im) 1/2))) 1))
(*.f64 1/2 (*.f64 (*.f64 im (sin.f64 re)) im))
(*.f64 im (*.f64 (sin.f64 re) (*.f64 im 1/2)))
(*.f64 (sin.f64 re) (*.f64 im (*.f64 im 1/2)))

localize31.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

Compiled 69 to 46 computations (33.3% saved)

series44.0ms (0.5%)

Counts
4 → 32
Calls

15 calls:

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

Compiled 3910 to 3045 computations (22.1% saved)

rewrite79.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
793×log-prod_binary64
520×fma-def_binary64
305×expm1-udef_binary64
305×log1p-udef_binary64
266×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify109.0ms (1.1%)

Algorithm
egg-herbie
Rules
523×times-frac_binary64
401×associate-*l*_binary64
348×associate-*r*_binary64
287×fma-neg_binary64
245×log-prod_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04774446
112134010
244763942
Stop Event
node limit
Counts
217 → 264
Calls
Call 1
Inputs
(pow.f64 im 4)
(pow.f64 im 4)
(pow.f64 im 4)
(pow.f64 im 4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/12 (pow.f64 im 4))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 7))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.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)))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 0 (pow.f64 im 4))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4))) (cbrt.f64 (exp.f64 (pow.f64 im 4))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 4)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 4)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 im 4))) 1)
(*.f64 1 (pow.f64 im 4))
(*.f64 im (pow.f64 im 3))
(*.f64 (pow.f64 im 4) 1)
(*.f64 (*.f64 im im) (*.f64 im im))
(*.f64 (pow.f64 im 3) im)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 im 4)) 2) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 (pow.f64 im 4)) 2))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 im im)))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 im -2)) -4) (pow.f64 (/.f64 1 (cbrt.f64 im)) -4))
(*.f64 (pow.f64 (pow.f64 im -1/2) -4) (pow.f64 (pow.f64 im -1/2) -4))
(*.f64 (*.f64 (*.f64 im im) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)))
(sqrt.f64 (pow.f64 (/.f64 1 im) -8))
(log.f64 (exp.f64 (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 im 4))))
(cbrt.f64 (pow.f64 (pow.f64 im 4) 3))
(expm1.f64 (log1p.f64 (pow.f64 im 4)))
(log1p.f64 (expm1.f64 (pow.f64 im 4)))
(exp.f64 (*.f64 4 (log.f64 im)))
(exp.f64 (*.f64 (*.f64 4 (log.f64 im)) 1))
(+.f64 0 (*.f64 (pow.f64 im 4) 1/12))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))) (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12))) 1)
(pow.f64 (*.f64 (pow.f64 im 4) 1/12) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) 3)
(pow.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) 2)
(pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728) 1/3)
(sqrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144))
(log.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12)))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/12)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/12)) 1))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(+.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1) (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 1))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 3)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (-.f64 (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (*.f64 1/2 (sin.f64 re))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 2))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (exp.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 1))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 1 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/12 (*.f64 (pow.f64 im 4) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) 1/12) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1 (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sin.f64 re)) 1/2 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (fma.f64 im im 2) (sin.f64 re)) 1/2 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 4)) 1/12 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1/12) (pow.f64 im 4) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (fma.f64 im im 2) 1/2) (sin.f64 re) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (fma.f64 im im 2) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (fma.f64 im im 2) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) 1/2) (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(-.f64 (/.f64 (pow.f64 (fma.f64 im im 2) 2) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))) (/.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(*.f64 1 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))
(*.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 1)
(*.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 2) (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (/.f64 1 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2))))
(*.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (/.f64 1 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 1 (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (pow.f64 (/.f64 1 im) -8) 1/144 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)))))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3))) (neg.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144))) (neg.f64 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3)) (+.f64 4 (-.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144) (pow.f64 (fma.f64 im im 2) 2)) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)))
(/.f64 (-.f64 4 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (-.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 1)
(pow.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 3)
(pow.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 2)
(sqrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 2))
(log.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (exp.f64 (fma.f64 im im 2))))
(log.f64 (*.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)) (+.f64 1 (expm1.f64 (fma.f64 im im 2)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (+.f64 1 (expm1.f64 (fma.f64 im im 2)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 im im 2))) (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))
(log.f64 (*.f64 (exp.f64 (fma.f64 im im 2)) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 im im 2))) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(cbrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3))
(expm1.f64 (log1p.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(log1p.f64 (expm1.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(exp.f64 (log.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 1))
(fma.f64 1 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2))
(fma.f64 1 (*.f64 im im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 1 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 1 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2)
(fma.f64 im im (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) 1 (fma.f64 im im 2))
(fma.f64 (*.f64 im im) 1 (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (*.f64 im im) (*.f64 (*.f64 im im) 1/12) (fma.f64 im im 2))
(fma.f64 (fma.f64 im im 2) 1 (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (cbrt.f64 (fma.f64 im im 2)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (pow.f64 (cbrt.f64 (pow.f64 im 4)) 2) (*.f64 (cbrt.f64 (pow.f64 im 4)) 1/12) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 (pow.f64 im 4)) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 im) im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im)) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (cbrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im 2))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (fma.f64 im im 2))
(fma.f64 (+.f64 8 (pow.f64 im 6)) (/.f64 1 (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (-.f64 4 (pow.f64 im 4)) (/.f64 1 (-.f64 2 (*.f64 im im))) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (*.f64 im (sqrt.f64 im)) (sqrt.f64 im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (*.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2)
(fma.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) 2)
(fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (pow.f64 im 4)) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 (cbrt.f64 (pow.f64 im -2)) -2) (pow.f64 (/.f64 1 (cbrt.f64 im)) -2) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 (pow.f64 im -1/2) -2) (pow.f64 (pow.f64 im -1/2) -2) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 (/.f64 1 im) -1) (pow.f64 (/.f64 1 im) -1) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (*.f64 im (cbrt.f64 (*.f64 im im))) (cbrt.f64 im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (*.f64 1/12 (pow.f64 (cbrt.f64 (pow.f64 im 4)) 2)) (cbrt.f64 (pow.f64 im 4)) (fma.f64 im im 2))
(fma.f64 (*.f64 1/12 (*.f64 im im)) (*.f64 im im) (fma.f64 im im 2))
Outputs
(pow.f64 im 4)
(pow.f64 im 4)
(pow.f64 im 4)
(pow.f64 im 4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(pow.f64 (/.f64 -1 im) -4)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/12 (pow.f64 im 4))
(*.f64 (pow.f64 im 4) 1/12)
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) re))
(*.f64 1/2 (*.f64 re (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) (*.f64 re 1/2))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))
(fma.f64 -1/12 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (pow.f64 re 3)) (*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) re)))
(fma.f64 1/2 (*.f64 re (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(fma.f64 1/2 (*.f64 re (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))))
(fma.f64 -1/12 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (pow.f64 re 5)) (*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) re))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (fma.f64 1/2 (*.f64 re (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (fma.f64 1/2 (*.f64 re (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 (*.f64 1/240 (pow.f64 re 5)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 7))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))))
(fma.f64 -1/12 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (pow.f64 re 5)) (fma.f64 -1/10080 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (pow.f64 re 7)) (*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) re)))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (fma.f64 1/2 (*.f64 re (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))))
(fma.f64 -1/12 (*.f64 (pow.f64 re 3) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (fma.f64 1/240 (*.f64 (pow.f64 re 5) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (fma.f64 -1/10080 (*.f64 (pow.f64 re 7) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (*.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) (*.f64 re 1/2)))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 im im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
2
(+.f64 2 (pow.f64 im 2))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 im 4))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(+.f64 0 (pow.f64 im 4))
(pow.f64 im 4)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4))) (cbrt.f64 (exp.f64 (pow.f64 im 4))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 4)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 4)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 im 4)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 im 4))) 1)
(pow.f64 im 4)
(*.f64 1 (pow.f64 im 4))
(pow.f64 im 4)
(*.f64 im (pow.f64 im 3))
(pow.f64 im 4)
(*.f64 (pow.f64 im 4) 1)
(pow.f64 im 4)
(*.f64 (*.f64 im im) (*.f64 im im))
(pow.f64 im 4)
(*.f64 (pow.f64 im 3) im)
(pow.f64 im 4)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 im 4)) 2) (cbrt.f64 (pow.f64 im 4)))
(pow.f64 im 4)
(*.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 (pow.f64 im 4)) 2))
(pow.f64 im 4)
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 im im)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (*.f64 im im) (cbrt.f64 (*.f64 im im))))
(*.f64 (*.f64 im im) (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im))))
(*.f64 im (*.f64 im (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im)))))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 im -2)) -4) (pow.f64 (/.f64 1 (cbrt.f64 im)) -4))
(*.f64 (pow.f64 (pow.f64 im -1/2) -4) (pow.f64 (pow.f64 im -1/2) -4))
(pow.f64 (pow.f64 im -1/2) -8)
(*.f64 (*.f64 (*.f64 im im) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (*.f64 im im) (cbrt.f64 (*.f64 im im))))
(*.f64 (*.f64 im im) (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im))))
(*.f64 im (*.f64 im (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im)))))
(sqrt.f64 (pow.f64 (/.f64 1 im) -8))
(pow.f64 im 4)
(log.f64 (exp.f64 (pow.f64 im 4)))
(pow.f64 im 4)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 im 4))))
(pow.f64 im 4)
(cbrt.f64 (pow.f64 (pow.f64 im 4) 3))
(pow.f64 im 4)
(expm1.f64 (log1p.f64 (pow.f64 im 4)))
(pow.f64 im 4)
(log1p.f64 (expm1.f64 (pow.f64 im 4)))
(pow.f64 im 4)
(exp.f64 (*.f64 4 (log.f64 im)))
(pow.f64 im 4)
(exp.f64 (*.f64 (*.f64 4 (log.f64 im)) 1))
(pow.f64 im 4)
(+.f64 0 (*.f64 (pow.f64 im 4) 1/12))
(*.f64 (pow.f64 im 4) 1/12)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))) (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))))
(*.f64 (pow.f64 im 4) 1/12)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12))) 1)
(*.f64 (pow.f64 im 4) 1/12)
(pow.f64 (*.f64 (pow.f64 im 4) 1/12) 1)
(*.f64 (pow.f64 im 4) 1/12)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) 3)
(*.f64 (pow.f64 im 4) 1/12)
(pow.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) 2)
(*.f64 (pow.f64 im 4) 1/12)
(pow.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728) 1/3)
(*.f64 (pow.f64 im 4) 1/12)
(sqrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144))
(sqrt.f64 (*.f64 1/144 (pow.f64 im 8)))
(log.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) 1/12)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (pow.f64 im 4) 1/12)
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728))
(*.f64 (pow.f64 im 4) 1/12)
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (pow.f64 im 4) 1/12)
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (pow.f64 im 4) 1/12)
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (pow.f64 im 4) 1/12)
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/12)) 1))
(*.f64 (pow.f64 im 4) 1/12)
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (*.f64 2 (*.f64 1/2 (sin.f64 re))) (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1) (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 1))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))) 1)
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 3)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (-.f64 (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/24) (sin.f64 re)) 3)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/24) (sin.f64 re)) (-.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/24) (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3) (pow.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)) 3)) (fma.f64 (sin.f64 re) (*.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 2) 1/4) (sin.f64 re)) (*.f64 (pow.f64 im 4) (*.f64 (*.f64 (sin.f64 re) 1/24) (*.f64 (sin.f64 re) (-.f64 (*.f64 (pow.f64 im 4) 1/24) (*.f64 1/2 (fma.f64 im im 2))))))))
(/.f64 (+.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3) (*.f64 (pow.f64 im 12) (*.f64 (pow.f64 (sin.f64 re) 3) 1/13824))) (fma.f64 (sin.f64 re) (*.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 2) 1/4) (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) (*.f64 (sin.f64 re) 1/24)) (*.f64 (sin.f64 re) (-.f64 (*.f64 (pow.f64 im 4) 1/24) (*.f64 1/2 (fma.f64 im im 2)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))))
(/.f64 (*.f64 (fma.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/24) (sin.f64 re)))) (-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/24) (sin.f64 re))))
(/.f64 (fma.f64 (sin.f64 re) (*.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 2) 1/4) (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 8) -1/144) (*.f64 (*.f64 (sin.f64 re) (sin.f64 re)) 1/4))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) 1/12))))
(/.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(/.f64 (*.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 12) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (*.f64 1/2 (sin.f64 re))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)) (*.f64 1/2 (sin.f64 re))))
(*.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3))) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (fma.f64 (pow.f64 im 12) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144))) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)) (*.f64 1/2 (sin.f64 re))))
(*.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2))) (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)))
(pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(pow.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3) 1/3)
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 3)
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 2)
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 2))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/2) (sin.f64 re)) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (exp.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 3))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3)))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))) 1))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 1 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 1 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (pow.f64 im 4) (*.f64 1/12 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 1/12 (*.f64 (pow.f64 im 4) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) 1/12) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (cbrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (*.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) 1/2) (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 1/2 (*.f64 (sin.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)))) (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))) 1 (*.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))) 1))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))) (cbrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (sqrt.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sqrt.f64 (fma.f64 im im 2))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sin.f64 re)) 1/2 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (fma.f64 im im 2) (sin.f64 re)) 1/2 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2)) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 4)) 1/12 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) 1/12) (pow.f64 im 4) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (cbrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (*.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) 1/2) (sin.f64 re)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 1/2 (*.f64 (sin.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)))) (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re))) (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (fma.f64 im im 2) 1/2) (sin.f64 re) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (fma.f64 im im 2) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (fma.f64 im im 2) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) 1/2) (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(fma.f64 (*.f64 (*.f64 (pow.f64 im 4) 1/12) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))) 1)
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(-.f64 (/.f64 (pow.f64 (fma.f64 im im 2) 2) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))) (/.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(*.f64 1 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(*.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 1)
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(*.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 2))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 2) (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(*.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(*.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (/.f64 1 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 (pow.f64 im 12) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(*.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (/.f64 1 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 (pow.f64 im 12) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 1 (/.f64 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))) (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144))))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 (fma.f64 (pow.f64 im 12) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (pow.f64 (/.f64 1 im) -8) 1/144 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 1/144 (pow.f64 im 8) (*.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))))
(/.f64 (fma.f64 (pow.f64 im 12) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 1/144 (pow.f64 im 8) (*.f64 (fma.f64 im im 2) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3))) (neg.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)) (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im 4) 3) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (fma.f64 (pow.f64 im 12) 1/1728 (pow.f64 (fma.f64 im im 2) 3)) (fma.f64 (*.f64 (pow.f64 im 4) 1/12) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)) (pow.f64 (fma.f64 im im 2) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144))) (neg.f64 (+.f64 (fma.f64 im im 2) (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3)) (+.f64 4 (-.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3)) (+.f64 4 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (-.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2))))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3)) (fma.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (+.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) -2) 4))
(/.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3)) (fma.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (+.f64 (*.f64 im im) (fma.f64 (pow.f64 im 4) 1/12 -2)) 4))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144) (pow.f64 (fma.f64 im im 2) 2)) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2)))
(/.f64 (-.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (+.f64 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) -1/12)))
(/.f64 (+.f64 (pow.f64 (fma.f64 im im 2) 2) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 (pow.f64 im 4) -1/12 (fma.f64 im im 2)))
(/.f64 (-.f64 4 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (-.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 1)
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(pow.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3) 1/3)
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(pow.f64 (cbrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 3)
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(pow.f64 (sqrt.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 2)
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(sqrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 2))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(log.f64 (exp.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (exp.f64 (fma.f64 im im 2))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(log.f64 (*.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)) (+.f64 1 (expm1.f64 (fma.f64 im im 2)))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (+.f64 1 (expm1.f64 (fma.f64 im im 2)))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 im im 2))) (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(log.f64 (*.f64 (exp.f64 (fma.f64 im im 2)) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 im im 2))) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(cbrt.f64 (pow.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2)) 3))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(expm1.f64 (log1p.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(log1p.f64 (expm1.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(exp.f64 (log.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(exp.f64 (*.f64 (log.f64 (fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))) 1))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 1 (*.f64 (pow.f64 im 4) 1/12) (fma.f64 im im 2))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 1 (*.f64 im im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 1 (fma.f64 im im 2) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 1 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2)
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 im im (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 1/12 (pow.f64 im 4) (fma.f64 im im 2))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) 1 (fma.f64 im im 2))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (*.f64 im im) 1 (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (*.f64 im im) (*.f64 (*.f64 im im) 1/12) (fma.f64 im im 2))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (fma.f64 im im 2) 1 (*.f64 (pow.f64 im 4) 1/12))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (fma.f64 im im 2)) (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im 2)) 2) (cbrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (pow.f64 (cbrt.f64 (pow.f64 im 4)) 2) (*.f64 (cbrt.f64 (pow.f64 im 4)) 1/12) (fma.f64 im im 2))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 (pow.f64 im 4)) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im)) (fma.f64 (pow.f64 im 4) 1/12 2))
(fma.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 im) im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (*.f64 im im)) (*.f64 im (cbrt.f64 im)) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (*.f64 im im)) (*.f64 im (cbrt.f64 im)) (fma.f64 (pow.f64 im 4) 1/12 2))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im)) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 (pow.f64 im 4)) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im)) (fma.f64 (pow.f64 im 4) 1/12 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (cbrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (cbrt.f64 (*.f64 (pow.f64 (/.f64 1 im) -8) 1/144)) (fma.f64 im im 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im 2))
(fma.f64 (sqrt.f64 (fma.f64 im im 2)) (sqrt.f64 (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (fma.f64 im im 2))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (+.f64 8 (pow.f64 im 6)) (/.f64 1 (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 (*.f64 (pow.f64 im 4) 1/12) (/.f64 (+.f64 8 (pow.f64 im 6)) (fma.f64 (*.f64 im im) (fma.f64 im im -2) 4)))
(fma.f64 (-.f64 4 (pow.f64 im 4)) (/.f64 1 (-.f64 2 (*.f64 im im))) (*.f64 (pow.f64 im 4) 1/12))
(+.f64 (*.f64 (pow.f64 im 4) 1/12) (/.f64 (-.f64 4 (pow.f64 im 4)) (-.f64 2 (*.f64 im im))))
(fma.f64 (*.f64 im (sqrt.f64 im)) (sqrt.f64 im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (*.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2)
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) 2)
(fma.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) 2)
(fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (pow.f64 im 4)) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (fabs.f64 (cbrt.f64 (pow.f64 im 4))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (fma.f64 (pow.f64 im 4) 1/12 2))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (fma.f64 (pow.f64 im 4) 1/12 2))
(fma.f64 (pow.f64 (cbrt.f64 (pow.f64 im -2)) -2) (pow.f64 (/.f64 1 (cbrt.f64 im)) -2) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 (cbrt.f64 (pow.f64 im -2)) -2) (pow.f64 (/.f64 1 (cbrt.f64 im)) -2) (fma.f64 (pow.f64 im 4) 1/12 2))
(fma.f64 (pow.f64 (cbrt.f64 (pow.f64 im -2)) -2) (*.f64 (cbrt.f64 im) (cbrt.f64 im)) (fma.f64 (pow.f64 im 4) 1/12 2))
(fma.f64 (pow.f64 (pow.f64 im -1/2) -2) (pow.f64 (pow.f64 im -1/2) -2) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (pow.f64 (pow.f64 im -1/2) -4) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (pow.f64 (pow.f64 im -1/2) -4) (fma.f64 (pow.f64 im 4) 1/12 2))
(fma.f64 (pow.f64 (/.f64 1 im) -1) (pow.f64 (/.f64 1 im) -1) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (*.f64 im (cbrt.f64 (*.f64 im im))) (cbrt.f64 im) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (*.f64 im im)) (*.f64 im (cbrt.f64 im)) (+.f64 2 (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (cbrt.f64 (*.f64 im im)) (*.f64 im (cbrt.f64 im)) (fma.f64 (pow.f64 im 4) 1/12 2))
(fma.f64 (*.f64 1/12 (pow.f64 (cbrt.f64 (pow.f64 im 4)) 2)) (cbrt.f64 (pow.f64 im 4)) (fma.f64 im im 2))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))
(fma.f64 (*.f64 1/12 (*.f64 im im)) (*.f64 im im) (fma.f64 im im 2))
(+.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 (pow.f64 im 4) 1/12 (fma.f64 im im 2))

eval303.0ms (3.2%)

Compiler

Compiled 13539 to 8159 computations (39.7% saved)

prune172.0ms (1.8%)

Pruning

16 alts after pruning (9 fresh and 7 done)

PrunedKeptTotal
New6344638
Fresh055
Picked011
Done167
Total63516651
Error
0b
Counts
651 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
27.7b
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (exp.f64 (neg.f64 im))) (*.f64 1/2 (*.f64 (exp.f64 im) re)))
0.8b
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
0.8b
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
1.6b
(*.f64 (+.f64 (exp.f64 im) (exp.f64 im)) (*.f64 1/2 (sin.f64 re)))
28.1b
(*.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/2 re))
0.1b
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (exp.f64 (*.f64 im -3)) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (expm1.f64 (+.f64 im im)))))
0.7b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 (/.f64 1 im) -4) 1/12)))
0.7b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) 1/12)))
0.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.7b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
27.7b
(*.f64 re (cosh.f64 im))
60.8b
(*.f64 im (*.f64 1/2 (*.f64 re im)))
27.7b
(*.f64 1/2 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
60.8b
(*.f64 1/2 (*.f64 re (*.f64 im im)))
1.0b
(sin.f64 re)
28.2b
re
Compiler

Compiled 312 to 218 computations (30.1% saved)

localize25.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

Compiled 61 to 38 computations (37.7% saved)

series34.0ms (0.4%)

Counts
2 → 20
Calls

9 calls:

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

Compiled 3340 to 2565 computations (23.2% saved)

rewrite70.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
712×log-prod_binary64
534×fma-def_binary64
273×expm1-udef_binary64
273×log1p-udef_binary64
259×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify93.0ms (1%)

Algorithm
egg-herbie
Rules
547×unswap-sqr_binary64
245×associate-*l*_binary64
237×cancel-sign-sub-inv_binary64
236×associate-*r*_binary64
220×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03563559
19163295
230173208
Stop Event
node limit
Counts
157 → 191
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 7))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.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)))))
(pow.f64 im 2)
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))))
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))))) 1)
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (*.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))) (-.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))))
(/.f64 (*.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (-.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2) 4))
(/.f64 (*.f64 (-.f64 4 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2)) (*.f64 1/2 (sin.f64 re))) (-.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3))) (fma.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (-.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2) 4))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 4 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2))) (-.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))) 1)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))) 3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (exp.f64 (sin.f64 re))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))) 1))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (sin.f64 re))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re)) (sin.f64 re))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2) (*.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(fma.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (sin.f64 re))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (sqrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (sin.f64 re))
(fma.f64 (*.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sin.f64 re))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12)))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12)))) (sin.f64 re))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (sin.f64 re)) 1/2 (sin.f64 re))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 1/2) (sin.f64 re) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2)) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12)))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) 1)
(-.f64 (/.f64 (pow.f64 im 4) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4)))) (/.f64 (*.f64 1/144 (pow.f64 im 8)) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4)))))
(*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 1)
(*.f64 1 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (pow.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))))
(*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (/.f64 1 (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (*.f64 (pow.f64 im 6) 1/12))))))
(*.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8))) (/.f64 1 (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (*.f64 (pow.f64 im 6) 1/12)))) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6))))
(/.f64 1 (/.f64 (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))) (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8)))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (*.f64 (pow.f64 im 6) 1/12)))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (fma.f64 1/144 (pow.f64 im 8) (-.f64 (pow.f64 im 4) (*.f64 (pow.f64 im 6) 1/12))))
(/.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (neg.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6))) (neg.f64 (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (*.f64 (pow.f64 im 6) 1/12))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8)))) (neg.f64 (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (-.f64 (*.f64 1/144 (pow.f64 im 8)) (pow.f64 im 4)) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 im im)))
(pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 1)
(pow.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 3)
(pow.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) 2)
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3) 1/3)
(pow.f64 (/.f64 (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (*.f64 (pow.f64 im 6) 1/12)))) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6))) -1)
(pow.f64 (/.f64 (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))) (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8)))) -1)
(sqrt.f64 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2))
(log.f64 (exp.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 im im))) (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))
(log.f64 (*.f64 (pow.f64 (exp.f64 im) im) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 im im))) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (pow.f64 (exp.f64 im) im)))
(log.f64 (*.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)) (+.f64 1 (expm1.f64 (*.f64 im im)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (+.f64 1 (expm1.f64 (*.f64 im im)))))
(cbrt.f64 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3))
(expm1.f64 (log1p.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(log1p.f64 (expm1.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(exp.f64 (log.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(exp.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (*.f64 im im) 1 (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (*.f64 im im) (*.f64 (*.f64 im im) 1/12) (*.f64 im im))
(fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) 1 (*.f64 im im))
(fma.f64 1 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 1 (*.f64 (pow.f64 im 4) 1/12) (*.f64 im im))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 im im))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 im im))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) im) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 im) 2) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 (cbrt.f64 (pow.f64 im 4)) 1/12) (*.f64 im im))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 im im))
(fma.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) im) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (*.f64 im (sqrt.f64 im)) (sqrt.f64 im) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 8))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (*.f64 im (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (*.f64 1/12 (*.f64 im im)) (*.f64 im im) (*.f64 im im))
(fma.f64 (*.f64 1/12 (cbrt.f64 (pow.f64 im 8))) (cbrt.f64 (pow.f64 im 4)) (*.f64 im im))
Outputs
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))
(*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) re))
(*.f64 1/2 (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) re))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))
(fma.f64 -1/12 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 3)) (*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) re)))
(fma.f64 1/2 (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) re) (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 (pow.f64 re 3) -1/12)))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re))))
(fma.f64 -1/12 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 5)) (*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) re))))
(fma.f64 -1/12 (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (pow.f64 re 3)) (fma.f64 1/2 (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) re) (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 (pow.f64 re 5) 1/240))))
(fma.f64 -1/12 (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (pow.f64 re 3)) (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (+.f64 (*.f64 1/2 re) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/10080 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (pow.f64 re 7))) (*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) re)))))
(fma.f64 -1/12 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 5)) (fma.f64 -1/10080 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) (pow.f64 re 7)) (*.f64 1/2 (*.f64 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) re)))))
(fma.f64 -1/12 (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (pow.f64 re 5)) (fma.f64 1/2 (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) re) (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 (pow.f64 re 7) -1/10080)))))
(+.f64 (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (+.f64 (*.f64 1/2 re) (*.f64 -1/10080 (pow.f64 re 7)))) (*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/240 (pow.f64 re 5)))))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (+.f64 2 (+.f64 (pow.f64 im 2) (*.f64 1/12 (pow.f64 (pow.f64 im 2) 2)))) (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
(*.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 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(pow.f64 im 2)
(*.f64 im im)
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(+.f64 (*.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2))) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2))) (*.f64 1/2 (sin.f64 re))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re))))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))))) 1)
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (-.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (*.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) 3)) (+.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (-.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) 3)) (fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) (fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) (neg.f64 (sin.f64 re))) (pow.f64 (sin.f64 re) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 re) 3) (pow.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) 3)) (fma.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im -2))) (pow.f64 (sin.f64 re) 2)))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))) (-.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re))) (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 2))) (-.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 2) (*.f64 (pow.f64 (sin.f64 re) 2) 1/4))) (+.f64 (sin.f64 re) (*.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) (*.f64 (sin.f64 re) -1/2))))
(/.f64 (-.f64 (pow.f64 (sin.f64 re) 2) (*.f64 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 2) (*.f64 (pow.f64 (sin.f64 re) 2) 1/4))) (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))))
(/.f64 (*.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3)) (*.f64 1/2 (sin.f64 re))) (fma.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (-.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2) 4))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (fma.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) (+.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) -2) 4) (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 3))))
(*.f64 (/.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 3)) (fma.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) (+.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) -2) 4)) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (/.f64 (fma.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im -2)) 4) 1/2)) (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 3)))
(/.f64 (*.f64 (-.f64 4 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2)) (*.f64 1/2 (sin.f64 re))) (-.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(/.f64 (-.f64 4 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 2)) (/.f64 (-.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) (*.f64 1/2 (sin.f64 re))))
(*.f64 (/.f64 1/2 (/.f64 (-.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))) (-.f64 4 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 2)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3))) (fma.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (-.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2) 4))
(/.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (fma.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) (+.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) -2) 4) (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 3))))
(*.f64 (/.f64 (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 3)) (fma.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) (+.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) -2) 4)) (*.f64 1/2 (sin.f64 re)))
(*.f64 (/.f64 (sin.f64 re) (/.f64 (fma.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (fma.f64 im im -2)) 4) 1/2)) (+.f64 8 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 3)))
(/.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 4 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2))) (-.f64 2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(/.f64 (-.f64 4 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 2)) (/.f64 (-.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) (*.f64 1/2 (sin.f64 re))))
(*.f64 (/.f64 1/2 (/.f64 (-.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))) (sin.f64 re))) (-.f64 4 (pow.f64 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))) 2)))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))) 1)
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))) 3) 1/3)
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))) 3)
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))) 2)
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))) 2))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 re))) (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (exp.f64 (sin.f64 re))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (+.f64 1 (expm1.f64 (sin.f64 re)))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))) 3))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)) 3)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1/2 (*.f64 (sin.f64 re) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sin.f64 re) 1 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) 2 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 2 (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (*.f64 1/2 (sin.f64 re)) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1 (sin.f64 re) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 1 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2) (*.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (cbrt.f64 (sin.f64 re)) (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 re)) 2) (cbrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) 2) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(fma.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) (*.f64 1/2 (*.f64 (sin.f64 re) (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) 2)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (pow.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) 2)))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sqrt.f64 (sin.f64 re)) (sqrt.f64 (sin.f64 re)) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (fma.f64 im im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 1/2 (sin.f64 re))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (sqrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (*.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sin.f64 re))
(fma.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) (*.f64 1/2 (*.f64 (sin.f64 re) (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) 2)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (pow.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) 2)))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12)))) (*.f64 (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12)))) (sin.f64 re))
(fma.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) (*.f64 1/2 (*.f64 (sin.f64 re) (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) 2)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (pow.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) 2)))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 2 (sin.f64 re)) 1/2 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (sin.f64 re)) 1/2 (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 2 (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 1/2) (sin.f64 re) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (pow.f64 (cbrt.f64 (*.f64 1/2 (sin.f64 re))) 2)) (cbrt.f64 (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) (sqrt.f64 (*.f64 1/2 (sin.f64 re))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2)) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (sin.f64 re))
(*.f64 (*.f64 1/2 (+.f64 2 (fma.f64 im im (*.f64 1/12 (pow.f64 im 4))))) (sin.f64 re))
(*.f64 (fma.f64 im im (fma.f64 1/12 (pow.f64 im 4) 2)) (*.f64 1/2 (sin.f64 re)))
(fma.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12)))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (sin.f64 re))
(fma.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) (*.f64 1/2 (*.f64 (sin.f64 re) (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) 2)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (pow.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) 2)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))) 1)
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(-.f64 (/.f64 (pow.f64 im 4) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4)))) (/.f64 (*.f64 1/144 (pow.f64 im 8)) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 -1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(*.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 1)
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(*.f64 1 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) (pow.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 2) (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(*.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))))
(pow.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) 2)
(*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (/.f64 1 (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (*.f64 (pow.f64 im 6) 1/12))))))
(/.f64 (*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) 1) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 (pow.f64 im 6) -1/12))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 -1/12 (pow.f64 im 6)))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (fma.f64 1/144 (pow.f64 im 8) (-.f64 (pow.f64 im 4) (*.f64 1/12 (pow.f64 im 6)))))
(*.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8))) (/.f64 1 (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 -1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (*.f64 (pow.f64 im 6) 1/12)))) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6))))
(/.f64 (*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) 1) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 (pow.f64 im 6) -1/12))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 -1/12 (pow.f64 im 6)))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (fma.f64 1/144 (pow.f64 im 8) (-.f64 (pow.f64 im 4) (*.f64 1/12 (pow.f64 im 6)))))
(/.f64 1 (/.f64 (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))) (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8)))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 -1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (*.f64 (pow.f64 im 6) 1/12)))))
(/.f64 (*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) 1) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 (pow.f64 im 6) -1/12))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 -1/12 (pow.f64 im 6)))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (fma.f64 1/144 (pow.f64 im 8) (-.f64 (pow.f64 im 4) (*.f64 1/12 (pow.f64 im 6)))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (fma.f64 1/144 (pow.f64 im 8) (-.f64 (pow.f64 im 4) (*.f64 (pow.f64 im 6) 1/12))))
(/.f64 (*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) 1) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 (pow.f64 im 6) -1/12))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 -1/12 (pow.f64 im 6)))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (fma.f64 1/144 (pow.f64 im 8) (-.f64 (pow.f64 im 4) (*.f64 1/12 (pow.f64 im 6)))))
(/.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 -1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (neg.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6))) (neg.f64 (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (*.f64 (pow.f64 im 6) 1/12))))))
(/.f64 (*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) 1) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 (pow.f64 im 6) -1/12))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 -1/12 (pow.f64 im 6)))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (fma.f64 1/144 (pow.f64 im 8) (-.f64 (pow.f64 im 4) (*.f64 1/12 (pow.f64 im 6)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8)))) (neg.f64 (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4)))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 -1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (-.f64 (*.f64 1/144 (pow.f64 im 8)) (pow.f64 im 4)) (-.f64 (*.f64 (pow.f64 im 4) 1/12) (*.f64 im im)))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 -1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 1)
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(pow.f64 (cbrt.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 3)
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(pow.f64 (hypot.f64 im (*.f64 (*.f64 im im) (sqrt.f64 1/12))) 2)
(pow.f64 (hypot.f64 im (*.f64 im (*.f64 im (sqrt.f64 1/12)))) 2)
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3) 1/3)
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(pow.f64 (/.f64 (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (neg.f64 (*.f64 (pow.f64 im 6) 1/12)))) (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6))) -1)
(/.f64 (*.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) 1) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 (pow.f64 im 6) -1/12))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (+.f64 (pow.f64 im 4) (fma.f64 1/144 (pow.f64 im 8) (*.f64 -1/12 (pow.f64 im 6)))))
(/.f64 (fma.f64 1/1728 (pow.f64 (pow.f64 im 4) 3) (pow.f64 im 6)) (fma.f64 1/144 (pow.f64 im 8) (-.f64 (pow.f64 im 4) (*.f64 1/12 (pow.f64 im 6)))))
(pow.f64 (/.f64 (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))) (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8)))) -1)
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 -1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (-.f64 (pow.f64 im 4) (*.f64 1/144 (pow.f64 im 8))) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(/.f64 (+.f64 (pow.f64 im 4) (*.f64 (pow.f64 im 8) -1/144)) (fma.f64 im im (*.f64 -1/12 (pow.f64 im 4))))
(sqrt.f64 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 2))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(log.f64 (exp.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)))))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 im im))) (pow.f64 (exp.f64 1/12) (pow.f64 im 4))))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(log.f64 (*.f64 (pow.f64 (exp.f64 im) im) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 im im))) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12)))))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (pow.f64 (exp.f64 im) im)))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(log.f64 (*.f64 (pow.f64 (exp.f64 1/12) (pow.f64 im 4)) (+.f64 1 (expm1.f64 (*.f64 im im)))))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/12))) (+.f64 1 (expm1.f64 (*.f64 im im)))))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(cbrt.f64 (pow.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12)) 3))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(expm1.f64 (log1p.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(log1p.f64 (expm1.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(exp.f64 (log.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(exp.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))) 1))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 im im (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (*.f64 im im) 1 (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (*.f64 im im) (*.f64 (*.f64 im im) 1/12) (*.f64 im im))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (pow.f64 im 4) 1/12 (*.f64 im im))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1/12 (pow.f64 im 4) (*.f64 im im))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (*.f64 (pow.f64 im 4) 1/12) 1 (*.f64 im im))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 1 (*.f64 (pow.f64 im 4) 1/12) (*.f64 im im))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 im im))
(fma.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 im im))
(fma.f64 (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/12)) (*.f64 im im))
(fma.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 im 4))) (cbrt.f64 (*.f64 1/144 (pow.f64 im 8))) (*.f64 im im))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) im) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 im) 2) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (pow.f64 im 4)) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 (cbrt.f64 (pow.f64 im 4)) 1/12) (*.f64 im im))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 1/12 (cbrt.f64 (pow.f64 im 4))) (*.f64 im im))
(fma.f64 (*.f64 1/12 (cbrt.f64 (pow.f64 im 8))) (cbrt.f64 (pow.f64 im 4)) (*.f64 im im))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 (*.f64 im im) (sqrt.f64 1/12)) (*.f64 im im))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) im) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (*.f64 im (sqrt.f64 im)) (sqrt.f64 im) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 8))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 8))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (*.f64 im (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im) (*.f64 (pow.f64 im 4) 1/12))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (*.f64 1/12 (*.f64 im im)) (*.f64 im im) (*.f64 im im))
(fma.f64 im im (*.f64 1/12 (pow.f64 im 4)))
(fma.f64 (*.f64 1/12 (cbrt.f64 (pow.f64 im 8))) (cbrt.f64 (pow.f64 im 4)) (*.f64 im im))
(fma.f64 (cbrt.f64 (pow.f64 im 8)) (*.f64 1/12 (cbrt.f64 (pow.f64 im 4))) (*.f64 im im))

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 20 to 7 computations (65% saved)

series19.0ms (0.2%)

Counts
2 → 48
Calls

12 calls:

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

Compiled 1615 to 1135 computations (29.7% saved)

rewrite48.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
648×pow1_binary64
598×add-log-exp_binary64
598×log1p-expm1-u_binary64
598×expm1-log1p-u_binary64
584×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
114317
2168217
Stop Event
node limit
Counts
2 → 22
Calls
Call 1
Inputs
(*.f64 re (*.f64 im im))
(*.f64 1/2 (*.f64 re (*.f64 im im)))
Outputs
((#(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 (pow.f64 (*.f64 re (*.f64 im im)) 3) 1/3)))) (#(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 (*.f64 im (sqrt.f64 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 re re) (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))))) (#(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 log1p.f64 (expm1.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 -.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 (pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 3) 1/3)))) (#(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 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (*.f64 (*.f64 re re) (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (*.f64 im im))))))) (#(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 log1p.f64 (expm1.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))))))))

simplify55.0ms (0.6%)

Algorithm
egg-herbie
Rules
615×fma-def_binary64
550×log-prod_binary64
507×fma-neg_binary64
488×associate-*l/_binary64
486×associate-*r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
074595
1183595
2717595
32589595
47608595
Stop Event
node limit
Counts
70 → 34
Calls
Call 1
Inputs
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 (/.f64 1 im) -2) re)
(*.f64 (pow.f64 (/.f64 1 im) -2) re)
(*.f64 (pow.f64 (/.f64 1 im) -2) re)
(*.f64 (pow.f64 (/.f64 1 im) -2) re)
(*.f64 (pow.f64 (/.f64 -1 im) -2) re)
(*.f64 (pow.f64 (/.f64 -1 im) -2) re)
(*.f64 (pow.f64 (/.f64 -1 im) -2) re)
(*.f64 (pow.f64 (/.f64 -1 im) -2) re)
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re))
(-.f64 (+.f64 1 (*.f64 re (*.f64 im im))) 1)
(pow.f64 (*.f64 re (*.f64 im im)) 1)
(pow.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 im im))) 3)
(pow.f64 (*.f64 im (sqrt.f64 re)) 2)
(sqrt.f64 (*.f64 (*.f64 re re) (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 im im))))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 im im))))
(exp.f64 (log.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 (pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 3)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 2)
(sqrt.f64 (*.f64 1/4 (*.f64 (*.f64 re re) (pow.f64 im 4))))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (*.f64 im im))))
(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))))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))
(exp.f64 (log.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))
Outputs
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 im 2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 (/.f64 1 im) -2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 (/.f64 1 im) -2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 (/.f64 1 im) -2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 (/.f64 1 im) -2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 (/.f64 -1 im) -2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 (/.f64 -1 im) -2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 (/.f64 -1 im) -2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 (pow.f64 (/.f64 -1 im) -2) re)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 im) -2) re))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(-.f64 (+.f64 1 (*.f64 re (*.f64 im im))) 1)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(pow.f64 (*.f64 re (*.f64 im im)) 1)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(pow.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3) 1/3)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 im im))) 3)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(pow.f64 (*.f64 im (sqrt.f64 re)) 2)
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(sqrt.f64 (*.f64 (*.f64 re re) (pow.f64 im 4)))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(log.f64 (pow.f64 (exp.f64 re) (*.f64 im im)))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 im im)) 3))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(exp.f64 (log.f64 (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im im))
(*.f64 im (*.f64 im re))
(-.f64 (+.f64 1 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 1)
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 1)
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(pow.f64 (pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 3) 1/3)
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 3)
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(pow.f64 (*.f64 (sqrt.f64 (*.f64 re 1/2)) im) 2)
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(sqrt.f64 (*.f64 1/4 (*.f64 (*.f64 re re) (pow.f64 im 4))))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (*.f64 im im))))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2)) 3))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))
(exp.f64 (log.f64 (*.f64 re (*.f64 (*.f64 im im) 1/2))))
(*.f64 re (*.f64 im (*.f64 im 1/2)))
(*.f64 re (*.f64 1/2 (*.f64 im im)))
(*.f64 im (*.f64 1/2 (*.f64 im re)))
(*.f64 1/2 (*.f64 im (*.f64 im re)))

localize4.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 re (cosh.f64 im))
Compiler

Compiled 10 to 4 computations (60% saved)

series23.0ms (0.2%)

Counts
1 → 24
Calls

6 calls:

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

Compiled 1375 to 800 computations (41.8% saved)

rewrite59.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
507×pow1_binary64
488×add-sqr-sqrt_binary64
468×add-log-exp_binary64
467×log1p-expm1-u_binary64
467×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify39.0ms (0.4%)

Algorithm
egg-herbie
Rules
709×fma-def_binary64
547×associate-*l/_binary64
441×associate-*r/_binary64
410×distribute-rgt-in_binary64
399×distribute-lft-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
059540
1158501
2509436
32413375
Stop Event
node limit
Counts
37 → 36
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
re
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) re)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) re))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) re)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(-.f64 (+.f64 1 (*.f64 re (cosh.f64 im))) 1)
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) re) 2)
(/.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 2)
(pow.f64 (*.f64 re (cosh.f64 im)) 1)
(pow.f64 (pow.f64 (*.f64 re (cosh.f64 im)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 re (cosh.f64 im))) 3)
(pow.f64 (sqrt.f64 (*.f64 re (cosh.f64 im))) 2)
(sqrt.f64 (pow.f64 (*.f64 re (cosh.f64 im)) 2))
(log.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))
(cbrt.f64 (pow.f64 (*.f64 re (cosh.f64 im)) 3))
(expm1.f64 (log1p.f64 (*.f64 re (cosh.f64 im))))
(log1p.f64 (expm1.f64 (*.f64 re (cosh.f64 im))))
(exp.f64 (log.f64 (*.f64 re (cosh.f64 im))))
Outputs
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
re
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) re)
(fma.f64 1/2 (*.f64 re (*.f64 im im)) re)
(fma.f64 1/2 (*.f64 im (*.f64 im re)) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) 1))
(fma.f64 im (*.f64 im (*.f64 1/2 re)) re)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) re))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) re))
(fma.f64 1/2 (*.f64 im (*.f64 im re)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) re))
(fma.f64 re (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 re (fma.f64 1/2 (*.f64 im im) (fma.f64 1/24 (pow.f64 im 4) 1)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) re)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (fma.f64 1/720 (*.f64 re (pow.f64 im 6)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) re)))
(fma.f64 1/2 (*.f64 im (*.f64 im re)) (fma.f64 1/720 (*.f64 re (pow.f64 im 6)) (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) re)))
(fma.f64 re (*.f64 1/720 (pow.f64 im 6)) (fma.f64 re (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) re))
(*.f64 re (+.f64 (fma.f64 1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))) (fma.f64 1/720 (pow.f64 im 6) 1)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re))
(*.f64 re (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 1/2 (*.f64 (cosh.f64 im) (*.f64 re 2)))
(-.f64 (+.f64 1 (*.f64 re (cosh.f64 im))) 1)
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(/.f64 (*.f64 (*.f64 2 (cosh.f64 im)) re) 2)
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(/.f64 (*.f64 re (*.f64 2 (cosh.f64 im))) 2)
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(pow.f64 (*.f64 re (cosh.f64 im)) 1)
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(pow.f64 (pow.f64 (*.f64 re (cosh.f64 im)) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(pow.f64 (cbrt.f64 (*.f64 re (cosh.f64 im))) 3)
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(pow.f64 (sqrt.f64 (*.f64 re (cosh.f64 im))) 2)
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(sqrt.f64 (pow.f64 (*.f64 re (cosh.f64 im)) 2))
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(log.f64 (pow.f64 (exp.f64 re) (cosh.f64 im)))
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(cbrt.f64 (pow.f64 (*.f64 re (cosh.f64 im)) 3))
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(expm1.f64 (log1p.f64 (*.f64 re (cosh.f64 im))))
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(log1p.f64 (expm1.f64 (*.f64 re (cosh.f64 im))))
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))
(exp.f64 (log.f64 (*.f64 re (cosh.f64 im))))
(+.f64 1 (-.f64 (*.f64 re (cosh.f64 im)) 1))
(+.f64 (*.f64 re (cosh.f64 im)) 0)
(*.f64 re (cosh.f64 im))

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 re (exp.f64 im))
0.0b
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
Compiler

Compiled 29 to 8 computations (72.4% saved)

series16.0ms (0.2%)

Counts
2 → 28
Calls

12 calls:

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

Compiled 1915 to 1030 computations (46.2% saved)

rewrite77.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
649×pow1_binary64
598×add-log-exp_binary64
598×log1p-expm1-u_binary64
598×expm1-log1p-u_binary64
583×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0618
112118
2158318
Stop Event
node limit
Counts
2 → 52
Calls
Call 1
Inputs
(fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))
(/.f64 re (exp.f64 im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 re (exp.f64 im)) 1) (/.f64 re (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2) (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 re (exp.f64 im)) 3)) (+.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 re (exp.f64 im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 re (exp.f64 (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 re (exp.f64 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 re (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (cbrt.f64 (/.f64 re (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (exp.f64 (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) (sqrt.f64 (/.f64 re (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 re) (/.f64 1 (neg.f64 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 im)) re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1) (/.f64 (cbrt.f64 re) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 (sqrt.f64 re) (exp.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 re (cbrt.f64 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (/.f64 re (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 re (sqrt.f64 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 (exp.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 re (exp.f64 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 im) re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 re (neg.f64 (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 re (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 re (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 re (exp.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 re) im))))))

simplify69.0ms (0.7%)

Algorithm
egg-herbie
Rules
371×unswap-sqr_binary64
317×distribute-rgt-in_binary64
299×associate-/l*_binary64
288×distribute-lft-in_binary64
243×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01761212
14961042
22004932
Stop Event
node limit
Counts
80 → 96
Calls
Call 1
Inputs
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 2 re)
(+.f64 (*.f64 (pow.f64 im 2) re) (*.f64 2 re))
(+.f64 (*.f64 (pow.f64 im 2) re) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))) (*.f64 2 re)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/6 re) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 re) (*.f64 1/2 re))) (*.f64 -1 (+.f64 (*.f64 1/6 re) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))))) (pow.f64 im 4))) (+.f64 (*.f64 (pow.f64 im 2) re) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))) (*.f64 2 re))))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
re
(+.f64 (*.f64 -1 (*.f64 re im)) re)
(+.f64 (*.f64 -1 (*.f64 re im)) (+.f64 re (*.f64 -1 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 re) (*.f64 1/2 re))))))
(+.f64 (*.f64 -1 (*.f64 re im)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/2 re) (+.f64 (*.f64 1/6 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re))))))) (+.f64 re (*.f64 -1 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im)))
(+.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im)))
(+.f64 (*.f64 (*.f64 re (exp.f64 im)) 1) (/.f64 re (exp.f64 im)))
(-.f64 (+.f64 1 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 1)
(*.f64 1 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2) (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 re (exp.f64 im)) 3)) (+.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))))
(/.f64 (-.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))
(pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 1)
(pow.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 3)
(pow.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2)
(sqrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 2))
(log.f64 (exp.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(cbrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3))
(expm1.f64 (log1p.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(log1p.f64 (expm1.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(exp.f64 (log.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(-.f64 (+.f64 1 (/.f64 re (exp.f64 im))) 1)
(*.f64 re (exp.f64 (neg.f64 im)))
(*.f64 (/.f64 re (exp.f64 im)) 1)
(*.f64 1 (/.f64 re (exp.f64 im)))
(*.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (cbrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) (sqrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 (neg.f64 im))))
(*.f64 (neg.f64 re) (/.f64 1 (neg.f64 (exp.f64 im))))
(*.f64 (exp.f64 (neg.f64 im)) re)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1) (/.f64 (cbrt.f64 re) (exp.f64 im)))
(*.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 (sqrt.f64 re) (exp.f64 im)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 re (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 re (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 (exp.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im))))
(pow.f64 (/.f64 re (exp.f64 im)) 1)
(pow.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 3)
(pow.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) 2)
(pow.f64 (/.f64 (exp.f64 im) re) -1)
(neg.f64 (/.f64 re (neg.f64 (exp.f64 im))))
(sqrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2))
(log.f64 (exp.f64 (/.f64 re (exp.f64 im))))
(cbrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3))
(expm1.f64 (log1p.f64 (/.f64 re (exp.f64 im))))
(log1p.f64 (expm1.f64 (/.f64 re (exp.f64 im))))
(exp.f64 (-.f64 (log.f64 re) im))
Outputs
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 (+.f64 (/.f64 1 (exp.f64 im)) (exp.f64 im)) re)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 -1 (*.f64 re (-.f64 (*.f64 -1 (exp.f64 im)) (/.f64 1 (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 2 re)
(*.f64 re 2)
(+.f64 (*.f64 (pow.f64 im 2) re) (*.f64 2 re))
(*.f64 re (+.f64 (*.f64 im im) 2))
(*.f64 re (fma.f64 im im 2))
(+.f64 (*.f64 (pow.f64 im 2) re) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))) (*.f64 2 re)))
(fma.f64 (*.f64 im im) re (fma.f64 -1 (*.f64 (pow.f64 im 3) (fma.f64 -1/2 re (neg.f64 (*.f64 re -1/2)))) (*.f64 re 2)))
(+.f64 (*.f64 re (fma.f64 im im 2)) (*.f64 (pow.f64 im 3) (*.f64 0 (*.f64 re -1/2))))
(+.f64 (*.f64 re (fma.f64 im im 2)) (*.f64 (pow.f64 im 3) 0))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/6 re) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 re) (*.f64 1/2 re))) (*.f64 -1 (+.f64 (*.f64 1/6 re) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))))) (pow.f64 im 4))) (+.f64 (*.f64 (pow.f64 im 2) re) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/2 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))) (*.f64 2 re))))
(fma.f64 -1 (*.f64 (fma.f64 -1/6 re (fma.f64 -1/2 (*.f64 re -1/2) (neg.f64 (fma.f64 1/6 re (fma.f64 -1/2 re (neg.f64 (*.f64 re -1/2))))))) (pow.f64 im 4)) (fma.f64 (*.f64 im im) re (fma.f64 -1 (*.f64 (pow.f64 im 3) (fma.f64 -1/2 re (neg.f64 (*.f64 re -1/2)))) (*.f64 re 2))))
(-.f64 (+.f64 (*.f64 re (fma.f64 im im 2)) (*.f64 (pow.f64 im 3) (*.f64 0 (*.f64 re -1/2)))) (*.f64 (-.f64 (fma.f64 re -1/6 (*.f64 re 1/4)) (+.f64 (*.f64 re 1/2) (*.f64 re -1/3))) (pow.f64 im 4)))
(+.f64 (*.f64 (pow.f64 im 3) 0) (-.f64 (*.f64 re (fma.f64 im im 2)) (*.f64 (pow.f64 im 4) (fma.f64 re -1/6 (*.f64 re 1/12)))))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
re
(+.f64 (*.f64 -1 (*.f64 re im)) re)
(fma.f64 -1 (*.f64 im re) re)
(-.f64 re (*.f64 im re))
(+.f64 (*.f64 -1 (*.f64 re im)) (+.f64 re (*.f64 -1 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 re) (*.f64 1/2 re))))))
(+.f64 (fma.f64 -1 (*.f64 im re) re) (neg.f64 (*.f64 (*.f64 im im) (*.f64 re -1/2))))
(+.f64 (-.f64 re (*.f64 im re)) (*.f64 re (*.f64 1/2 (*.f64 im im))))
(+.f64 re (*.f64 re (+.f64 (*.f64 1/2 (*.f64 im im)) (neg.f64 im))))
(+.f64 (*.f64 -1 (*.f64 re im)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 3) (+.f64 (*.f64 -1/2 re) (+.f64 (*.f64 1/6 re) (*.f64 -1 (+.f64 (*.f64 -1 re) (*.f64 1/2 re))))))) (+.f64 re (*.f64 -1 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1 re) (*.f64 1/2 re)))))))
(fma.f64 -1 (*.f64 im re) (fma.f64 -1 (*.f64 (pow.f64 im 3) (fma.f64 -1/2 re (fma.f64 1/6 re (neg.f64 (*.f64 re -1/2))))) (+.f64 re (neg.f64 (*.f64 (*.f64 im im) (*.f64 re -1/2))))))
(-.f64 (+.f64 (*.f64 re (*.f64 1/2 (*.f64 im im))) (fma.f64 (neg.f64 (pow.f64 im 3)) (+.f64 (*.f64 re 1/2) (*.f64 re -1/3)) re)) (*.f64 im re))
(+.f64 (+.f64 re (*.f64 (pow.f64 im 3) (*.f64 re -1/6))) (*.f64 re (+.f64 (*.f64 1/2 (*.f64 im im)) (neg.f64 im))))
(+.f64 (/.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im)))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(+.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im)))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(+.f64 (*.f64 (*.f64 re (exp.f64 im)) 1) (/.f64 re (exp.f64 im)))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(-.f64 (+.f64 1 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 1 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2) (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(*.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(/.f64 (+.f64 (pow.f64 (*.f64 re (exp.f64 im)) 3) (pow.f64 (/.f64 re (exp.f64 im)) 3)) (+.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3) (pow.f64 (/.f64 re (exp.f64 im)) 3)) (fma.f64 (*.f64 (exp.f64 im) re) (*.f64 (exp.f64 im) re) (-.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 re (*.f64 (exp.f64 im) (/.f64 re (exp.f64 im)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3) (pow.f64 (/.f64 re (exp.f64 im)) 3)) (fma.f64 re (*.f64 (exp.f64 (+.f64 im im)) re) (*.f64 (/.f64 re (exp.f64 im)) (-.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3) (pow.f64 (/.f64 re (exp.f64 im)) 3)) (+.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2) (*.f64 (*.f64 (exp.f64 im) re) (*.f64 re (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(/.f64 (-.f64 (*.f64 (*.f64 re (exp.f64 im)) (*.f64 re (exp.f64 im))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 re (exp.f64 im)) (/.f64 re (exp.f64 im))))
(/.f64 (-.f64 (*.f64 re (*.f64 (exp.f64 im) (*.f64 (exp.f64 im) re))) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))))
(/.f64 (-.f64 (*.f64 re (*.f64 (exp.f64 (+.f64 im im)) re)) (pow.f64 (/.f64 re (exp.f64 im)) 2)) (-.f64 (*.f64 (exp.f64 im) re) (/.f64 re (exp.f64 im))))
(/.f64 (fma.f64 re (*.f64 re (exp.f64 (+.f64 im im))) (neg.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2))) (*.f64 re (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 1)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(pow.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3) 1/3)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(pow.f64 (cbrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 3)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(pow.f64 (sqrt.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))) 2)
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(sqrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 2))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(log.f64 (exp.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(cbrt.f64 (pow.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im))) 3))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(expm1.f64 (log1p.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(log1p.f64 (expm1.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(exp.f64 (log.f64 (fma.f64 re (exp.f64 im) (/.f64 re (exp.f64 im)))))
(*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(fma.f64 (exp.f64 im) re (/.f64 re (exp.f64 im)))
(-.f64 (+.f64 1 (/.f64 re (exp.f64 im))) 1)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 re (exp.f64 (neg.f64 im)))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (/.f64 re (exp.f64 im)) 1)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 1 (/.f64 re (exp.f64 im)))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 2) (cbrt.f64 (/.f64 re (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (pow.f64 (cbrt.f64 re) 2) (*.f64 (cbrt.f64 re) (exp.f64 (neg.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) (sqrt.f64 (/.f64 re (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (exp.f64 (neg.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (neg.f64 re) (/.f64 1 (neg.f64 (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (exp.f64 (neg.f64 im)) re)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1) (/.f64 (cbrt.f64 re) (exp.f64 im)))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 (sqrt.f64 re) (exp.f64 im)))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 re (cbrt.f64 (exp.f64 im))))
(/.f64 (/.f64 re (cbrt.f64 (exp.f64 im))) (pow.f64 (cbrt.f64 (exp.f64 im)) 2))
(/.f64 re (*.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (cbrt.f64 (/.f64 re (exp.f64 im))))
(*.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) (/.f64 (pow.f64 (cbrt.f64 re) 2) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)))
(/.f64 (pow.f64 (cbrt.f64 re) 2) (/.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (cbrt.f64 (/.f64 re (exp.f64 im)))))
(*.f64 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (exp.f64 im)) 2)) (/.f64 re (cbrt.f64 (exp.f64 im))))
(/.f64 (/.f64 re (cbrt.f64 (exp.f64 im))) (pow.f64 (cbrt.f64 (exp.f64 im)) 2))
(/.f64 re (*.f64 (pow.f64 (cbrt.f64 (exp.f64 im)) 2) (cbrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 re (sqrt.f64 (exp.f64 im))))
(/.f64 (/.f64 re (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)))
(/.f64 re (*.f64 (sqrt.f64 (exp.f64 im)) (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 (exp.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 (exp.f64 im))))
(*.f64 (/.f64 1 (sqrt.f64 (exp.f64 im))) (/.f64 re (sqrt.f64 (exp.f64 im))))
(/.f64 (/.f64 re (sqrt.f64 (exp.f64 im))) (sqrt.f64 (exp.f64 im)))
(/.f64 re (*.f64 (sqrt.f64 (exp.f64 im)) (sqrt.f64 (exp.f64 im))))
(pow.f64 (/.f64 re (exp.f64 im)) 1)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(pow.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3) 1/3)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(pow.f64 (cbrt.f64 (/.f64 re (exp.f64 im))) 3)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(pow.f64 (sqrt.f64 (/.f64 re (exp.f64 im))) 2)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(pow.f64 (/.f64 (exp.f64 im) re) -1)
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(neg.f64 (/.f64 re (neg.f64 (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(sqrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 2))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(log.f64 (exp.f64 (/.f64 re (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(cbrt.f64 (pow.f64 (/.f64 re (exp.f64 im)) 3))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(expm1.f64 (log1p.f64 (/.f64 re (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(log1p.f64 (expm1.f64 (/.f64 re (exp.f64 im))))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))
(exp.f64 (-.f64 (log.f64 re) im))
(+.f64 1 (-.f64 (/.f64 re (exp.f64 im)) 1))
(+.f64 (/.f64 re (exp.f64 im)) 0)
(/.f64 re (exp.f64 im))

localize22.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 51 to 21 computations (58.8% saved)

series4.0ms (0%)

Counts
1 → 4
Calls

6 calls:

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

Compiled 215 to 115 computations (46.5% saved)

rewrite41.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
435×pow1_binary64
414×add-sqr-sqrt_binary64
409×*-un-lft-identity_binary64
397×add-log-exp_binary64
397×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify47.0ms (0.5%)

Algorithm
egg-herbie
Rules
594×fma-neg_binary64
382×*-commutative_binary64
356×associate-+r+_binary64
302×associate-*l*_binary64
253×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
053168
1125153
2399134
32425134
44026134
56378134
Stop Event
node limit
Counts
18 → 29
Calls
Call 1
Inputs
re
(+.f64 re (*.f64 re im))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 re im)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 im 3) re)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 re im))))
(+.f64 0 (*.f64 (exp.f64 im) re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re)) (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(-.f64 (+.f64 1 (*.f64 (exp.f64 im) re)) 1)
(pow.f64 (*.f64 (exp.f64 im) re) 1)
(pow.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) 3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 im) re)) 2)
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2))
(log.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 im) re)))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 im) re)))
(exp.f64 (+.f64 im (log.f64 re)))
Outputs
re
(+.f64 re (*.f64 re im))
(fma.f64 re im re)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 re im)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (+.f64 re (*.f64 re im)))
(fma.f64 1/2 (*.f64 re (*.f64 im im)) (fma.f64 re im re))
(*.f64 re (+.f64 im (fma.f64 (*.f64 im 1/2) im 1)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 im 3) re)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 re im))))
(fma.f64 1/6 (*.f64 re (pow.f64 im 3)) (fma.f64 1/2 (*.f64 re (*.f64 im im)) (+.f64 re (*.f64 re im))))
(fma.f64 1/6 (*.f64 re (pow.f64 im 3)) (fma.f64 1/2 (*.f64 re (*.f64 im im)) (fma.f64 re im re)))
(fma.f64 re (*.f64 (*.f64 im im) (+.f64 (*.f64 im 1/6) 1/2)) (fma.f64 re im re))
(fma.f64 re (*.f64 im (*.f64 im (+.f64 1/2 (*.f64 im 1/6)))) (fma.f64 re im re))
(+.f64 0 (*.f64 (exp.f64 im) re))
(*.f64 re (exp.f64 im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re)) (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))))
(*.f64 re (exp.f64 im))
(-.f64 (+.f64 1 (*.f64 (exp.f64 im) re)) 1)
(*.f64 re (exp.f64 im))
(pow.f64 (*.f64 (exp.f64 im) re) 1)
(*.f64 re (exp.f64 im))
(pow.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3) 1/3)
(*.f64 re (exp.f64 im))
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 im) re)) 3)
(*.f64 re (exp.f64 im))
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 im) re)) 2)
(*.f64 re (exp.f64 im))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 im) re) 2))
(*.f64 re (exp.f64 im))
(log.f64 (pow.f64 (exp.f64 (exp.f64 im)) re))
(*.f64 re (exp.f64 im))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 im) re) 3))
(*.f64 re (exp.f64 im))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 im) re)))
(*.f64 re (exp.f64 im))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 im) re)))
(*.f64 re (exp.f64 im))
(exp.f64 (+.f64 im (log.f64 re)))
(*.f64 re (exp.f64 im))

eval197.0ms (2.1%)

Compiler

Compiled 9299 to 5595 computations (39.8% saved)

prune91.0ms (1%)

Pruning

18 alts after pruning (8 fresh and 10 done)

PrunedKeptTotal
New4575462
Fresh134
Picked101
Done11011
Total46018478
Error
0b
Counts
478 → 18
Alt Table
Click to see full alt table
StatusErrorProgram
61.1b
(-.f64 (+.f64 1 (*.f64 re (*.f64 (*.f64 im im) 1/2))) 1)
27.7b
(+.f64 (*.f64 1/2 (*.f64 re (exp.f64 (neg.f64 im)))) (*.f64 1/2 (*.f64 (exp.f64 im) re)))
0.8b
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 im im))))
0.8b
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
1.6b
(*.f64 (+.f64 (exp.f64 im) (exp.f64 im)) (*.f64 1/2 (sin.f64 re)))
28.1b
(*.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/2 re))
0.1b
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (exp.f64 (*.f64 im -3)) (pow.f64 (exp.f64 im) 3)) (+.f64 (exp.f64 (*.f64 im -2)) (expm1.f64 (+.f64 im im)))))
0.7b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (+.f64 2 (*.f64 im im)) (*.f64 (pow.f64 (/.f64 1 im) -4) 1/12)))
0.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.7b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/12))))
0.7b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) 1/12))))
60.8b
(*.f64 re (*.f64 im (*.f64 im 1/2)))
27.7b
(*.f64 re (cosh.f64 im))
60.8b
(*.f64 im (*.f64 1/2 (*.f64 re im)))
27.7b
(*.f64 1/2 (+.f64 (/.f64 re (exp.f64 im)) (*.f64 (exp.f64 im) re)))
60.8b
(*.f64 1/2 (*.f64 re (*.f64 im im)))
1.0b
(sin.f64 re)
28.2b
re
Compiler

Compiled 229 to 163 computations (28.8% saved)

regimes85.0ms (0.9%)

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

7 calls:

15.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
14.0ms
re
13.0ms
(*.f64 1/2 (sin.f64 re))
11.0ms
(sin.f64 re)
11.0ms
im
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))
0.0b1(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
Compiler

Compiled 378 to 203 computations (46.3% saved)

regimes82.0ms (0.9%)

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

7 calls:

14.0ms
(*.f64 1/2 (sin.f64 re))
14.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
13.0ms
re
11.0ms
(sin.f64 re)
10.0ms
im
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))
0.0b1(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
Compiler

Compiled 342 to 189 computations (44.7% saved)

regimes93.0ms (1%)

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

7 calls:

21.0ms
(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
15.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
14.0ms
re
14.0ms
(*.f64 1/2 (sin.f64 re))
10.0ms
(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))
0.0b1(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
Compiler

Compiled 302 to 166 computations (45% saved)

regimes55.0ms (0.6%)

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

4 calls:

20.0ms
(sin.f64 re)
12.0ms
im
9.0ms
(*.f64 1/2 (sin.f64 re))
9.0ms
re
Results
ErrorSegmentsBranch
0.7b1re
0.7b1im
0.7b1(*.f64 1/2 (sin.f64 re))
0.7b1(sin.f64 re)
Compiler

Compiled 232 to 124 computations (46.6% saved)

regimes21.0ms (0.2%)

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

3 calls:

9.0ms
(sin.f64 re)
5.0ms
re
5.0ms
im
Results
ErrorSegmentsBranch
0.8b1re
0.8b1im
0.8b1(sin.f64 re)
Compiler

Compiled 70 to 41 computations (41.4% saved)

regimes19.0ms (0.2%)

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

3 calls:

8.0ms
(sin.f64 re)
5.0ms
re
5.0ms
im
Results
ErrorSegmentsBranch
1.0b1re
1.0b1im
1.0b1(sin.f64 re)
Compiler

Compiled 60 to 36 computations (40% saved)

regimes16.0ms (0.2%)

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

2 calls:

10.0ms
im
4.0ms
re
Results
ErrorSegmentsBranch
28.1b1re
28.1b1im
Compiler

Compiled 50 to 30 computations (40% saved)

regimes8.0ms (0.1%)

Accuracy

Total -33.1b remaining (-117.4%)

Threshold costs -33.1b (-117.4%)

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

2 calls:

3.0ms
im
3.0ms
re
Results
ErrorSegmentsBranch
28.2b1re
28.2b1im
Compiler

Compiled 30 to 18 computations (40% saved)

simplify10.0ms (0.1%)

Algorithm
egg-herbie
Rules
16×*-commutative_binary64
13×+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040166
170166
282166
389166
493166
594166
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) (pow.f64 (exp.f64 im) 3)) (+.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) 1/12))))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
(sin.f64 re)
(*.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/2 re))
re
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (/.f64 (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) 3) (pow.f64 (exp.f64 im) 3)) (+.f64 (*.f64 (exp.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) (-.f64 (*.f64 (exp.f64 im) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) (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 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (+.f64 (*.f64 im im) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) 1/12))))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 im im)) 1))
(sin.f64 re)
(*.f64 (+.f64 2 (*.f64 im im)) (*.f64 1/2 re))
re
Compiler

Compiled 121 to 78 computations (35.5% saved)

soundness154.0ms (1.6%)

Algorithm
egg-herbie
Rules
784×unswap-sqr_binary64
582×fma-def_binary64
476×fabs-mul_binary64
425×associate-/r*_binary64
357×associate-/l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01218
12818
27118
314017
418517
525217
642917
7111617
8328817
9367117
10416217
11579617
12678817
Stop Event
node limit
Compiler

Compiled 27 to 21 computations (22.2% saved)

end62.0ms (0.7%)

Compiler

Compiled 107 to 51 computations (52.3% saved)

Profiling

Loading profile data...