Details

Time bar (total: 17.4s)

analyze6.0s (34.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
12.5%87.3%0.2%9
12.5%87.3%0.2%10
18.7%81.1%0.2%11
18.7%81.1%0.2%12
18.7%81.1%0.2%13
20.5%79.3%0.2%14
Compiler

Compiled 35 to 24 computations (31.4% saved)

sample109.0ms (0.6%)

Algorithm
intervals
Results
57.0ms248×body128valid
5.0msbody1024valid
3.0msbody512valid
2.0ms10×body128invalid
1.0msbody1024invalid
1.0msbody256invalid
1.0msbody512invalid
Compiler

Compiled 74 to 52 computations (29.7% saved)

simplify75.0ms (0.4%)

Algorithm
egg-herbie
Rules
691×exp-prod_binary64
507×exp-sum_binary64
446×fma-neg_binary64
375×associate-*l*_binary64
251×times-frac_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02245
15845
212943
338443
4126643
5402343
6494543
7501943

prune8.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
21.2b
Counts
3 → 1
Alt Table
StatusErrorProgram
21.2b
(*.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
Compiler

Compiled 128 to 80 computations (37.5% saved)

localize40.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)
0.0b
(*.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
0.0b
(-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)
40.3b
(cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M))

series833.0ms (4.8%)

Counts
4 → 192
Calls

4 calls:

715.0ms
(*.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
48.0ms
(cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M))
34.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)
34.0ms
(-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)

rewrite161.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
88×*-un-lft-identity_binary64
78×prod-diff_binary64
77×add-sqr-sqrt_binary64
56×add-cube-cbrt_binary64
44×associate-*r*_binary64
Counts
4 → 166
Calls

4 calls:

61.0ms
(*.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
19.0ms
(cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M))
17.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)
14.0ms
(-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)

simplify697.0ms (4%)

Algorithm
egg-herbie
Rules
920×fma-def_binary64
454×*-commutative_binary64
304×associate-*r*_binary64
168×+-commutative_binary64
156×cancel-sign-sub-inv_binary64
Counts
358 → 341
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
097621127
1260517883
2493817883
3497117883

prune1.2s (7.1%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New3356341
Fresh000
Picked101
Done000
Total3366342
Error
1.5b
Counts
342 → 6
Alt Table
StatusErrorProgram
21.1b
(*.f64 (cos.f64 (fma.f64 (/.f64 K (sqrt.f64 2)) (/.f64 (+.f64 m n) (sqrt.f64 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.2b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M))) (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)))) (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
1.8b
(*.f64 (cos.f64 M) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.1b
(*.f64 (cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2))) (/.f64 (+.f64 m n) (cbrt.f64 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.2b
(*.f64 (cos.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2)) (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2))) (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
13.9b
(*.f64 (cos.f64 (*.f64 1/2 (*.f64 n K))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
Compiler

Compiled 27089 to 13291 computations (50.9% saved)

localize27.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(cos.f64 M)
0.0b
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)

series3.0ms (0%)

Counts
1 → 4
Calls

1 calls:

3.0ms
(cos.f64 M)

rewrite2.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 9
Calls

1 calls:

2.0ms
(cos.f64 M)

simplify92.0ms (0.5%)

Algorithm
egg-herbie
Rules
1004×fma-neg_binary64
777×cancel-sign-sub-inv_binary64
308×distribute-rgt-neg-in_binary64
286×unswap-sqr_binary64
275×unsub-neg_binary64
Counts
13 → 17
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
030116
164105
2138101
336899
4125299
5398699
6470299
7505799

prune279.0ms (1.6%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New79079
Fresh055
Picked011
Done000
Total79685
Error
1.5b
Counts
85 → 6
Alt Table
StatusErrorProgram
21.1b
(*.f64 (cos.f64 (fma.f64 (/.f64 K (sqrt.f64 2)) (/.f64 (+.f64 m n) (sqrt.f64 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.2b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M))) (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)))) (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
1.8b
(*.f64 (cos.f64 M) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.1b
(*.f64 (cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2))) (/.f64 (+.f64 m n) (cbrt.f64 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.2b
(*.f64 (cos.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2)) (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2))) (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
13.9b
(*.f64 (cos.f64 (*.f64 1/2 (*.f64 n K))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
Compiler

Compiled 2529 to 1339 computations (47.1% saved)

localize35.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)
34.0b
(cos.f64 (*.f64 1/2 (*.f64 n K)))

series12.0ms (0.1%)

Counts
1 → 8
Calls

1 calls:

12.0ms
(cos.f64 (*.f64 1/2 (*.f64 n K)))

rewrite4.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 9
Calls

1 calls:

3.0ms
(cos.f64 (*.f64 1/2 (*.f64 n K)))

simplify97.0ms (0.6%)

Algorithm
egg-herbie
Rules
611×distribute-rgt-neg-in_binary64
528×distribute-lft-neg-in_binary64
489×fma-def_binary64
393×unsub-neg_binary64
369×*-commutative_binary64
Counts
17 → 17
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
040316
193289
2242281
3960277
42431265
53705259
64723241
75139241

prune257.0ms (1.5%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New79079
Fresh044
Picked011
Done011
Total79685
Error
1.5b
Counts
85 → 6
Alt Table
StatusErrorProgram
21.1b
(*.f64 (cos.f64 (fma.f64 (/.f64 K (sqrt.f64 2)) (/.f64 (+.f64 m n) (sqrt.f64 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.2b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M))) (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)))) (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
1.8b
(*.f64 (cos.f64 M) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.1b
(*.f64 (cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2))) (/.f64 (+.f64 m n) (cbrt.f64 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.2b
(*.f64 (cos.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2)) (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2))) (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
13.9b
(*.f64 (cos.f64 (*.f64 1/2 (*.f64 n K))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
Compiler

Compiled 2844 to 1573 computations (44.7% saved)

localize42.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (+.f64 m n) (cbrt.f64 2))
0.5b
(/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2)))
1.0b
(cbrt.f64 2)
40.4b
(cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2))) (/.f64 (+.f64 m n) (cbrt.f64 2)) (neg.f64 M)))

series212.0ms (1.2%)

Counts
4 → 84
Calls

4 calls:

99.0ms
(/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2)))
76.0ms
(cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2))) (/.f64 (+.f64 m n) (cbrt.f64 2)) (neg.f64 M)))
37.0ms
(/.f64 (+.f64 m n) (cbrt.f64 2))
0.0ms
(cbrt.f64 2)

rewrite85.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
38×*-un-lft-identity_binary64
27×times-frac_binary64
24×add-sqr-sqrt_binary64
24×add-cube-cbrt_binary64
18×cbrt-prod_binary64
Counts
4 → 96
Calls

4 calls:

67.0ms
(/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2)))
8.0ms
(/.f64 (+.f64 m n) (cbrt.f64 2))
2.0ms
(cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2))) (/.f64 (+.f64 m n) (cbrt.f64 2)) (neg.f64 M)))
1.0ms
(cbrt.f64 2)

simplify224.0ms (1.3%)

Algorithm
egg-herbie
Rules
841×times-frac_binary64
465×cancel-sign-sub-inv_binary64
371×fma-neg_binary64
221×associate-*r*_binary64
184×distribute-rgt-neg-in_binary64
Counts
180 → 178
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02593748
16363523
220523023
344343013
457063013

prune859.0ms (4.9%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New2035208
Fresh123
Picked101
Done112
Total2068214
Error
1.5b
Counts
214 → 8
Alt Table
StatusErrorProgram
21.1b
(*.f64 (cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2))) (/.f64 (+.f64 m n) (pow.f64 2 1/3)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
52.7b
(*.f64 (cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2))) (log.f64 (exp.f64 (/.f64 (+.f64 m n) (cbrt.f64 2)))) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.1b
(*.f64 (cos.f64 (fma.f64 (/.f64 (/.f64 K (cbrt.f64 2)) (cbrt.f64 2)) (/.f64 (+.f64 m n) (cbrt.f64 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.2b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M))) (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)))) (cbrt.f64 (cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
1.8b
(*.f64 (cos.f64 M) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.2b
(*.f64 (cos.f64 (fma.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2)) (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2))) (cbrt.f64 (/.f64 (*.f64 K (+.f64 m n)) 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.1b
(*.f64 (cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (cbrt.f64 2))))) (/.f64 (+.f64 m n) (cbrt.f64 2)) (neg.f64 M))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
21.1b
(*.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2))) (/.f64 (+.f64 m n) (cbrt.f64 2)) (neg.f64 M))) (cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2))) (/.f64 (+.f64 m n) (cbrt.f64 2)) (neg.f64 M)))) (cos.f64 (fma.f64 (/.f64 K (*.f64 (cbrt.f64 2) (cbrt.f64 2))) (/.f64 (+.f64 m n) (cbrt.f64 2)) (neg.f64 M))))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
Compiler

Compiled 9341 to 5434 computations (41.8% saved)

regimes2.4s (13.8%)

Accuracy

Total 0.2b remaining (16.3%)

Threshold costs 0.2b (16.3%)

Counts
151 → 1
Compiler

Compiled 35984 to 24162 computations (32.9% saved)

simplify6.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01731
12831
24531
36031
46931
57231
67231

end15.0ms (0.1%)

Remove

(sort m n)

Compiler

Compiled 75 to 54 computations (28% saved)

sample3.6s (20.8%)

Algorithm
intervals
Results
2.1s7838×body128valid
100.0ms85×body1024invalid
82.0ms70×body1024valid
73.0ms298×body128invalid
58.0ms77×body512invalid
48.0ms60×body512valid
29.0ms56×body256invalid
28.0ms16×body2048invalid
16.0ms31×body256valid
2.0msbody2048valid
Compiler

Compiled 447 to 311 computations (30.4% saved)

Profiling

Loading profile data...