Details

Time bar (total: 10.7s)

analyze500.0ms (4.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
50%50%0.1%5
50%50%0.1%6
50%37.5%12.6%7
50%37.5%12.6%8
50%31.2%18.8%9
50%31.2%18.8%10
50%28.1%22%11
50%28.1%22%12
50%26.5%23.5%13
50%26.5%23.5%14
Compiler

Compiled 15 to 12 computations (20% saved)

sample6.5s (61.3%)

Results
3.3s5017×body1024valid
1.2s2037×body1024invalid
762.0ms1746×body512valid
422.0ms435×body2048valid
320.0ms983×body512invalid
181.0ms668×body256valid
133.0ms544×body256invalid
107.0ms749×body128invalid
54.0ms390×body128valid
Compiler

Compiled 44 to 35 computations (20.5% saved)

simplify80.0ms (0.8%)

Algorithm
egg-herbie
Rules
626×associate-/l*_binary64
509×div-sub_binary64
462×times-frac_binary64
386×sub-neg_binary64
367×associate-/r*_binary64
Counts
1 → 2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01218
12218
24918
311118
420817
536217
669217
7151317
8372617
9428717
10485717
11474917

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
58.6b
Counts
3 → 1
Alt Table
StatusErrorProgram
58.6b
(*.f64 (cos.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 1/2 (exp.f64 im))))
Compiler

Compiled 51 to 34 computations (33.3% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1/2 (exp.f64 im))
0.0b
(*.f64 (cos.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 1/2 (exp.f64 im))))
5.5b
(fma.f64 (exp.f64 im) -1/2 (/.f64 1/2 (exp.f64 im)))

series39.0ms (0.4%)

Counts
3 → 40
Calls

3 calls:

22.0ms
(*.f64 (cos.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 1/2 (exp.f64 im))))
9.0ms
(/.f64 1/2 (exp.f64 im))
7.0ms
(fma.f64 (exp.f64 im) -1/2 (/.f64 1/2 (exp.f64 im)))

rewrite8.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
15×add-sqr-sqrt_binary64
13×*-un-lft-identity_binary64
13×add-cube-cbrt_binary64
times-frac_binary64
add-cbrt-cube_binary64
Counts
3 → 61
Calls

3 calls:

3.0ms
(*.f64 (cos.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 1/2 (exp.f64 im))))
3.0ms
(/.f64 1/2 (exp.f64 im))
0.0ms
(fma.f64 (exp.f64 im) -1/2 (/.f64 1/2 (exp.f64 im)))

simplify80.0ms (0.7%)

Algorithm
egg-herbie
Rules
584×fma-def_binary64
504×associate-*l*_binary64
417×associate-*r*_binary64
308×times-frac_binary64
193×associate--r+_binary64
Counts
101 → 113
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01801857
14421701
213481671
345431671
450561671

prune60.0ms (0.6%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1121113
Fresh000
Picked011
Done000
Total1122114
Error
0.1b
Counts
114 → 2
Alt Table
StatusErrorProgram
58.6b
(*.f64 (cos.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 1/2 (exp.f64 im))))
0.3b
(*.f64 (cos.f64 re) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
Compiler

Compiled 2127 to 1176 computations (44.7% saved)

localize15.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))
0.1b
(*.f64 (cos.f64 re) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))

series53.0ms (0.5%)

Counts
2 → 36
Calls

2 calls:

49.0ms
(*.f64 (cos.f64 re) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
3.0ms
(fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))

rewrite11.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
10×associate-*r*_binary64
add-sqr-sqrt_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
2 → 40
Calls

2 calls:

4.0ms
(*.f64 (cos.f64 re) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
0.0ms
(fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))

simplify62.0ms (0.6%)

Algorithm
egg-herbie
Rules
881×distribute-rgt-in_binary64
211×cancel-sign-sub-inv_binary64
191×associate-*r*_binary64
176×fma-def_binary64
165×fma-neg_binary64
Counts
76 → 88
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01782441
14992280
219802222
350192222

prune111.0ms (1%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New80888
Fresh000
Picked011
Done011
Total801090
Error
0.0b
Counts
90 → 10
Alt Table
StatusErrorProgram
1.7b
(*.f64 (cos.f64 re) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))) (cbrt.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))) (cbrt.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))))
35.4b
(+.f64 (*.f64 (*.f64 re re) (+.f64 (*.f64 1/2 im) (*.f64 1/10080 (pow.f64 im 7)))) (-.f64 (*.f64 (*.f64 re re) (+.f64 (*.f64 1/12 (pow.f64 im 3)) (*.f64 1/240 (pow.f64 im 5)))) (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
36.0b
(cbrt.f64 (*.f64 (*.f64 (*.f64 (cos.f64 re) (cos.f64 re)) (cos.f64 re)) (*.f64 (*.f64 (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))))
58.6b
(*.f64 (cos.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 1/2 (exp.f64 im))))
26.8b
(*.f64 (*.f64 (cos.f64 re) (sqrt.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))) (neg.f64 (sqrt.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.3b
(*.f64 (cos.f64 re) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
38.0b
(*.f64 (*.f64 (cos.f64 re) (sqrt.f64 (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))) (sqrt.f64 (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
17.4b
(*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (sqrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.9b
(*.f64 (*.f64 (cbrt.f64 (cos.f64 re)) (cbrt.f64 (cos.f64 re))) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
33.0b
(*.f64 (sqrt.f64 (*.f64 (cos.f64 re) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))) (sqrt.f64 (*.f64 (cos.f64 re) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))))
Compiler

Compiled 3399 to 2467 computations (27.4% saved)

localize20.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
0.2b
(*.f64 (*.f64 (cbrt.f64 (cos.f64 re)) (cbrt.f64 (cos.f64 re))) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.3b
(cbrt.f64 (cos.f64 re))
0.3b
(*.f64 (cbrt.f64 (cos.f64 re)) (cbrt.f64 (cos.f64 re)))

series593.0ms (5.6%)

Counts
4 → 72
Calls

4 calls:

221.0ms
(*.f64 (cbrt.f64 (cos.f64 re)) (cbrt.f64 (cos.f64 re)))
190.0ms
(*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
130.0ms
(cbrt.f64 (cos.f64 re))
51.0ms
(*.f64 (*.f64 (cbrt.f64 (cos.f64 re)) (cbrt.f64 (cos.f64 re))) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))

rewrite29.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
30×add-sqr-sqrt_binary64
25×pow1_binary64
23×cbrt-prod_binary64
20×add-exp-log_binary64
18×*-un-lft-identity_binary64
Counts
4 → 118
Calls

4 calls:

8.0ms
(*.f64 (*.f64 (cbrt.f64 (cos.f64 re)) (cbrt.f64 (cos.f64 re))) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
7.0ms
(*.f64 (cbrt.f64 (cos.f64 re)) (cbrt.f64 (cos.f64 re)))
6.0ms
(*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
1.0ms
(cbrt.f64 (cos.f64 re))

simplify152.0ms (1.4%)

Algorithm
egg-herbie
Rules
538×fma-neg_binary64
486×associate-*r*_binary64
438×associate-*l*_binary64
331×fma-def_binary64
232×sub-neg_binary64
Counts
190 → 209
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03295404
19414907
240094824
349224816
449294816

prune448.0ms (4.2%)

Pruning

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New2476253
Fresh347
Picked101
Done022
Total25112263
Error
0.0b
Counts
263 → 12
Alt Table
StatusErrorProgram
17.4b
(*.f64 (exp.f64 (*.f64 2/3 (log.f64 (cos.f64 re)))) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
35.4b
(+.f64 (*.f64 (*.f64 re re) (+.f64 (*.f64 1/2 im) (*.f64 1/10080 (pow.f64 im 7)))) (-.f64 (*.f64 (*.f64 re re) (+.f64 (*.f64 1/12 (pow.f64 im 3)) (*.f64 1/240 (pow.f64 im 5)))) (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
0.9b
(*.f64 (*.f64 (cbrt.f64 (cos.f64 re)) (cbrt.f64 (cos.f64 re))) (*.f64 (log1p.f64 (expm1.f64 (cbrt.f64 (cos.f64 re)))) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
17.4b
(*.f64 (sqrt.f64 (cos.f64 re)) (*.f64 (sqrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.9b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 2))) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 2)))) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.7b
(*.f64 (cbrt.f64 (cos.f64 re)) (*.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 2)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
58.6b
(*.f64 (cos.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 1/2 (exp.f64 im))))
0.9b
(*.f64 (*.f64 (cbrt.f64 (cos.f64 re)) (cbrt.f64 (*.f64 (*.f64 (cbrt.f64 (cos.f64 re)) (cbrt.f64 (cos.f64 re))) (cbrt.f64 (cos.f64 re))))) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
26.8b
(*.f64 (*.f64 (cos.f64 re) (sqrt.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))) (neg.f64 (sqrt.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.3b
(*.f64 (cos.f64 re) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
38.0b
(*.f64 (*.f64 (cos.f64 re) (sqrt.f64 (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))) (sqrt.f64 (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.5b
(*.f64 (pow.f64 (pow.f64 (cos.f64 re) 2) 1/3) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
Compiler

Compiled 10355 to 6076 computations (41.3% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
0.2b
(*.f64 (pow.f64 (pow.f64 (cos.f64 re) 2) 1/3) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.3b
(cbrt.f64 (cos.f64 re))
0.3b
(pow.f64 (cos.f64 re) 2)

series55.0ms (0.5%)

Counts
2 → 28
Calls

2 calls:

52.0ms
(*.f64 (pow.f64 (pow.f64 (cos.f64 re) 2) 1/3) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
3.0ms
(pow.f64 (cos.f64 re) 2)

rewrite17.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
24×add-exp-log_binary64
15×prod-exp_binary64
14×unpow-prod-down_binary64
12×associate-*l*_binary64
pow-exp_binary64
Counts
2 → 62
Calls

2 calls:

7.0ms
(*.f64 (pow.f64 (pow.f64 (cos.f64 re) 2) 1/3) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
2.0ms
(pow.f64 (cos.f64 re) 2)

simplify102.0ms (1%)

Algorithm
egg-herbie
Rules
318×unswap-sqr_binary64
291×associate-*r*_binary64
289×distribute-rgt-neg-out_binary64
256×cancel-sign-sub-inv_binary64
242×fma-neg_binary64
Counts
90 → 113
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02283421
16242925
225492881
348322877
450112877

prune372.0ms (3.5%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New1916197
Fresh639
Picked101
Done022
Total19811209
Error
0.0b
Counts
209 → 11
Alt Table
StatusErrorProgram
0.6b
(*.f64 (pow.f64 (pow.f64 (cos.f64 re) 2) 1/3) (*.f64 (log1p.f64 (expm1.f64 (cbrt.f64 (cos.f64 re)))) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
26.8b
(*.f64 (*.f64 (cos.f64 re) (sqrt.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))) (neg.f64 (sqrt.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.6b
(*.f64 (pow.f64 (pow.f64 (cos.f64 re) 2) 1/3) (*.f64 (log.f64 (exp.f64 (cbrt.f64 (cos.f64 re)))) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.3b
(*.f64 (cos.f64 re) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
0.6b
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 6)) 1/3) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
38.0b
(*.f64 (*.f64 (cos.f64 re) (sqrt.f64 (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))) (sqrt.f64 (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.9b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 2))) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 2)))) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
0.5b
(*.f64 (*.f64 (pow.f64 (pow.f64 (cos.f64 re) 2) 1/3) (cbrt.f64 (cos.f64 re))) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im)))))
58.6b
(*.f64 (cos.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 1/2 (exp.f64 im))))
0.6b
(*.f64 (pow.f64 (pow.f64 (cos.f64 re) 2) 1/3) (*.f64 (expm1.f64 (log1p.f64 (cbrt.f64 (cos.f64 re)))) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
17.4b
(*.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 (cos.f64 re)) 2) (pow.f64 (sqrt.f64 (cos.f64 re)) 2)) 1/3) (*.f64 (cbrt.f64 (cos.f64 re)) (neg.f64 (fma.f64 1/120 (pow.f64 im 5) (fma.f64 1/6 (pow.f64 im 3) (fma.f64 1/5040 (pow.f64 im 7) im))))))
Compiler

Compiled 7961 to 5507 computations (30.8% saved)

regimes992.0ms (9.3%)

Accuracy

Total 0.7b remaining (94.5%)

Threshold costs 0.7b (94.5%)

Counts
129 → 1
Compiler

Compiled 25017 to 17670 computations (29.4% saved)

simplify3.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01829
12529
23229
33829
44129
54229
64229

end288.0ms (2.7%)

Compiler

Compiled 400 to 307 computations (23.3% saved)

Profiling

Loading profile data...