Details

Time bar (total: 19.4s)

analyze515.0ms (2.6%)

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
12.5%87.4%0.1%4
62.4%37.5%0.1%5
62.4%37.5%0.1%6
62.4%31.2%6.3%7
62.4%31.2%6.3%8
62.4%28.1%9.5%9
62.4%28.1%9.5%10
62.4%26.5%11%11
62.4%26.5%11%12
62.4%25.8%11.8%13
62.4%25.8%11.8%14
Compiler

Compiled 14 to 11 computations (21.4% saved)

sample147.0ms (0.8%)

Algorithm
intervals
Results
61.0ms117×body1024valid
19.0ms55×body1024invalid
19.0ms74×body512valid
8.0ms28×body512invalid
7.0ms90×body128invalid
6.0msbody2048valid
5.0ms32×body256valid
2.0ms25×body128valid
1.0msbody256invalid
Compiler

Compiled 29 to 23 computations (20.7% saved)

simplify122.0ms (0.6%)

Algorithm
egg-herbie
Rules
454×fma-def_binary64
444×times-frac_binary64
419×sub-neg_binary64
365×distribute-rgt-neg-in_binary64
340×fma-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01118
12318
24918
310618
422517
544917
696217
7171317
8358817
9428217
10477317
11492317
12495717
13474817

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
44.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
44.0b
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 50 to 35 computations (30% saved)

localize8.0ms (0%)

Local error

Found 2 expressions with local error:

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

rewrite21.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
29×*-un-lft-identity_binary64
29×add-sqr-sqrt_binary64
27×prod-diff_binary64
25×add-cube-cbrt_binary64
13×distribute-lft-in_binary64
Counts
2 → 80
Calls

2 calls:

11.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
5.0ms
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))

series44.0ms (0.2%)

Counts
2 → 32
Calls

2 calls:

41.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
3.0ms
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))

simplify112.0ms (0.6%)

Algorithm
egg-herbie
Rules
584×fma-neg_binary64
356×cancel-sign-sub-inv_binary64
302×distribute-rgt-in_binary64
277×associate-*r*_binary64
274×associate-*l*_binary64
Counts
112 → 207
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02252646
15472347
220432132
344152127
448972127

prune75.0ms (0.4%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New2052207
Fresh000
Picked101
Done000
Total2062208
Error
0.1b
Counts
208 → 2
Alt Table
StatusErrorProgram
0.6b
(*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))
45.2b
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.f64 re))) 3))
Compiler

Compiled 3222 to 1143 computations (64.5% saved)

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))
0.0b
(fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))
0.1b
(*.f64 1/2520 (pow.f64 im 7))
0.1b
(*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))

rewrite14.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
17×associate-*r*_binary64
15×add-sqr-sqrt_binary64
14×add-exp-log_binary64
11×add-cbrt-cube_binary64
10×*-un-lft-identity_binary64
Counts
4 → 77
Calls

4 calls:

5.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))
4.0ms
(*.f64 1/2520 (pow.f64 im 7))
0.0ms
(fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))
0.0ms
(fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))

series168.0ms (0.9%)

Counts
4 → 48
Calls

4 calls:

103.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))
24.0ms
(fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))
24.0ms
(*.f64 1/2520 (pow.f64 im 7))
16.0ms
(fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))

simplify124.0ms (0.6%)

Algorithm
egg-herbie
Rules
930×fma-neg_binary64
314×associate--l+_binary64
304×associate-*r*_binary64
288×cancel-sign-sub-inv_binary64
283×associate-*l*_binary64
Counts
125 → 235
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02503288
16622982
226462863
348142863
455552863

prune294.0ms (1.5%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New2278235
Fresh011
Picked011
Done000
Total22710237
Error
0.0b
Counts
237 → 10
Alt Table
StatusErrorProgram
0.6b
(*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))
1.6b
(*.f64 (*.f64 (*.f64 -1/2 (sin.f64 re)) (*.f64 (cbrt.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520))))) (cbrt.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520))))))) (cbrt.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))
45.2b
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.f64 re))) 3))
27.5b
(*.f64 (sqrt.f64 (*.f64 -1/2 (*.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))) (sin.f64 re)))) (sqrt.f64 (*.f64 -1/2 (*.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))) (sin.f64 re)))))
36.0b
(cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 1/2 (sin.f64 re))) (*.f64 1/2 (sin.f64 re))) (*.f64 (*.f64 (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
1.5b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
36.0b
(cbrt.f64 (pow.f64 (*.f64 -1/2 (*.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))) (sin.f64 re))) 3))
36.0b
(cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))) (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))) (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
35.0b
(*.f64 (*.f64 (*.f64 -1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))))) (sqrt.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))
29.8b
(*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))) (sqrt.f64 (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))
Compiler

Compiled 6308 to 4843 computations (23.2% saved)

localize33.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
13.7b
(cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))
13.7b
(cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))
13.7b
(cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))

rewrite14.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
pow1_binary64
add-sqr-sqrt_binary64
pow1/3_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
Counts
2 → 44
Calls

2 calls:

6.0ms
(*.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
3.0ms
(cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))

series4.7s (24.1%)

Counts
2 → 48
Calls

2 calls:

3.1s
(*.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
1.6s
(cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))

simplify368.0ms (1.9%)

Algorithm
egg-herbie
Rules
773×fma-def_binary64
639×associate-/l*_binary64
366×*-commutative_binary64
177×+-commutative_binary64
167×associate-*r*_binary64
Counts
92 → 177
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
092920063
1284719336
2495919336
3493119336

prune1.4s (7.4%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New3753378
Fresh358
Picked101
Done011
Total3799388
Error
0.0b
Counts
388 → 9
Alt Table
StatusErrorProgram
2.3b
(*.f64 (*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))) (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))) (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))) (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
36.0b
(cbrt.f64 (pow.f64 (*.f64 -1/2 (*.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))) (sin.f64 re))) 3))
45.2b
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.f64 re))) 3))
27.5b
(*.f64 (sqrt.f64 (*.f64 -1/2 (*.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))) (sin.f64 re)))) (sqrt.f64 (*.f64 -1/2 (*.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))) (sin.f64 re)))))
35.0b
(*.f64 (*.f64 (*.f64 -1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))))) (sqrt.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))
0.6b
(*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))
26.8b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))) 2) (pow.f64 (sin.f64 re) 2)))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
1.4b
(*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))) (sin.f64 re)))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
29.8b
(*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))) (sqrt.f64 (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))
Compiler

Compiled 56895 to 45283 computations (20.4% saved)

localize27.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))) (sin.f64 re))))
13.7b
(cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))
13.7b
(cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))
13.8b
(cbrt.f64 (*.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))) (sin.f64 re)))

rewrite9.0ms (0%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
associate-*l*_binary64
cbrt-prod_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
Counts
2 → 37
Calls

2 calls:

4.0ms
(*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))) (sin.f64 re))))
2.0ms
(cbrt.f64 (*.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))) (sin.f64 re)))

series2.9s (14.7%)

Counts
2 → 48
Calls

2 calls:

1.6s
(*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))) (sin.f64 re))))
1.2s
(cbrt.f64 (*.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))) (sin.f64 re)))

simplify213.0ms (1.1%)

Algorithm
egg-herbie
Rules
602×times-frac_binary64
491×fma-def_binary64
484×associate-/l*_binary64
386×associate-/r*_binary64
283×*-commutative_binary64
Counts
85 → 161
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
065313318
1201513199
2503713199

prune1.9s (9.6%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New9650965
Fresh077
Picked011
Done011
Total9659974
Error
0.0b
Counts
974 → 9
Alt Table
StatusErrorProgram
2.3b
(*.f64 (*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))) (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))) (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))) (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
36.0b
(cbrt.f64 (pow.f64 (*.f64 -1/2 (*.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))) (sin.f64 re))) 3))
45.2b
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.f64 re))) 3))
27.5b
(*.f64 (sqrt.f64 (*.f64 -1/2 (*.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))) (sin.f64 re)))) (sqrt.f64 (*.f64 -1/2 (*.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))) (sin.f64 re)))))
35.0b
(*.f64 (*.f64 (*.f64 -1/2 (sin.f64 re)) (sqrt.f64 (fma.f64 (pow.f64 im 5) 1/60 (fma.f64 (pow.f64 im 3) 1/3 (fma.f64 im 2 (*.f64 (pow.f64 im 7) 1/2520)))))) (sqrt.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))
0.6b
(*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))
26.8b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 -1/2) 2) (cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))) 2) (pow.f64 (sin.f64 re) 2)))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
1.4b
(*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))) (sin.f64 re)))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))) (cbrt.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))))
29.8b
(*.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (sqrt.f64 (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7)))))))) (sqrt.f64 (neg.f64 (fma.f64 1/60 (pow.f64 im 5) (fma.f64 1/3 (pow.f64 im 3) (fma.f64 im 2 (*.f64 1/2520 (pow.f64 im 7))))))))
Compiler

Compiled 49086 to 38628 computations (21.3% saved)

regimes786.0ms (4%)

Accuracy

Total 0.4b remaining (63.8%)

Threshold costs 0.4b (63.8%)

Compiler

Compiled 19660 to 15549 computations (20.9% saved)

simplify5.0ms (0%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
02235
13135
23833
35133
45633
55933
66033
75933

end1.0ms (0%)

Compiler

Compiled 25 to 20 computations (20% saved)

sample5.5s (28.2%)

Algorithm
intervals
Results
2.2s4036×body1024valid
786.0ms2010×body1024invalid
594.0ms2047×body512valid
272.0ms971×body512invalid
233.0ms2672×body128invalid
204.0ms1068×body256valid
173.0ms213×body2048valid
70.0ms492×body256invalid
52.0ms636×body128valid
Compiler

Compiled 583 to 464 computations (20.4% saved)

Profiling

Loading profile data...