Details

Time bar (total: 9.0s)

analyze3.0s (33.2%)

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)

sample111.0ms (1.2%)

Algorithm
intervals
Symmetry

(sort m n)

Results
33.0ms248×body128valid
3.0msbody1024valid
2.0msbody1024invalid
2.0msbody512valid
1.0ms10×body128invalid
1.0msbody512invalid
1.0msbody2048invalid
1.0msbody256invalid
Compiler

Compiled 74 to 52 computations (29.7% saved)

simplify62.0ms (0.7%)

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

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
12.4b
Counts
3 → 1
Alt Table
StatusErrorProgram
12.4b
(*.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)

localize18.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series74.0ms (0.8%)

Counts
4 → 168
Calls

4 calls:

28.0ms
(cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M))
17.0ms
(-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)
17.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)
11.0ms
(*.f64 K (+.f64 m n))

rewrite40.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
47×add-sqr-sqrt_binary64
44×*-un-lft-identity_binary64
42×prod-diff_binary64
38×add-cube-cbrt_binary64
25×cos-sum_binary64
Counts
4 → 129
Calls

4 calls:

9.0ms
(cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M))
8.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)
7.0ms
(-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M)
6.0ms
(*.f64 K (+.f64 m n))

simplify177.0ms (2%)

Algorithm
egg-herbie
Rules
528×fma-neg_binary64
341×associate-*r*_binary64
311×associate-*l*_binary64
240×distribute-rgt-neg-in_binary64
221×*-commutative_binary64
Counts
297 → 254
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04317218
18845740
230485550
348775550
450415550

prune523.0ms (5.8%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New2486254
Fresh000
Picked101
Done000
Total2496255
Error
1.5b
Counts
255 → 6
Alt Table
StatusErrorProgram
27.6b
(*.f64 (cos.f64 (-.f64 (/.f64 (expm1.f64 (log1p.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))))
12.4b
(*.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))))
12.3b
(*.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))))
8.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))))
6.5b
(*.f64 (cos.f64 (*.f64 1/2 (*.f64 K m))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
Compiler

Compiled 11393 to 5358 computations (53% saved)

localize14.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series54.0ms (0.6%)

Counts
1 → 48
Calls

1 calls:

54.0ms
(-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))

rewrite30.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
56×*-un-lft-identity_binary64
42×add-sqr-sqrt_binary64
36×prod-diff_binary64
26×fabs-mul_binary64
21×add-cube-cbrt_binary64
Counts
1 → 73
Calls

1 calls:

19.0ms
(-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))

simplify130.0ms (1.4%)

Algorithm
egg-herbie
Rules
564×fma-neg_binary64
479×distribute-rgt-in_binary64
424×distribute-lft-in_binary64
346×cancel-sign-sub-inv_binary64
269×sub-neg_binary64
Counts
121 → 118
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02066040
15834533
218603642
345303634
449543634

prune275.0ms (3%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New1781179
Fresh055
Picked101
Done000
Total1796185
Error
1.5b
Counts
185 → 6
Alt Table
StatusErrorProgram
27.6b
(*.f64 (cos.f64 (-.f64 (/.f64 (expm1.f64 (log1p.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 (-.f64 (-.f64 m n) (pow.f64 (-.f64 (/.f64 (+.f64 n m) 2) M) 2)) l)))
12.4b
(*.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))))
12.3b
(*.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))))
8.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))))
6.5b
(*.f64 (cos.f64 (*.f64 1/2 (*.f64 K m))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
Compiler

Compiled 7356 to 3752 computations (49% saved)

localize16.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

series18.0ms (0.2%)

Counts
1 → 36
Calls

1 calls:

17.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 n m) 2) M) 2)

rewrite12.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
unpow-prod-down_binary64
*-un-lft-identity_binary64
pow-unpow_binary64
add-cube-cbrt_binary64
Counts
1 → 23
Calls

1 calls:

11.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 n m) 2) M) 2)

simplify92.0ms (1%)

Algorithm
egg-herbie
Rules
601×fma-neg_binary64
510×cancel-sign-sub-inv_binary64
416×unswap-sqr_binary64
402×distribute-rgt-in_binary64
281×fma-def_binary64
Counts
59 → 61
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0861345
12251225
25701176
319531170
442141170
548201170
649681170

prune105.0ms (1.2%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New61061
Fresh055
Picked011
Done000
Total61667
Error
1.5b
Counts
67 → 6
Alt Table
StatusErrorProgram
27.6b
(*.f64 (cos.f64 (-.f64 (/.f64 (expm1.f64 (log1p.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 (-.f64 (-.f64 m n) (pow.f64 (-.f64 (/.f64 (+.f64 n m) 2) M) 2)) l)))
12.4b
(*.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))))
12.3b
(*.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))))
8.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))))
6.5b
(*.f64 (cos.f64 (*.f64 1/2 (*.f64 K m))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
Compiler

Compiled 1922 to 1053 computations (45.2% saved)

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series286.0ms (3.2%)

Counts
2 → 68
Calls

2 calls:

277.0ms
(*.f64 (cos.f64 (*.f64 1/2 (*.f64 K m))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
9.0ms
(cos.f64 (*.f64 1/2 (*.f64 K m)))

rewrite60.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
50×*-un-lft-identity_binary64
44×associate-*r*_binary64
41×exp-sum_binary64
36×prod-diff_binary64
36×add-sqr-sqrt_binary64
Counts
2 → 71
Calls

2 calls:

44.0ms
(*.f64 (cos.f64 (*.f64 1/2 (*.f64 K m))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
2.0ms
(cos.f64 (*.f64 1/2 (*.f64 K m)))

simplify197.0ms (2.2%)

Algorithm
egg-herbie
Rules
801×associate-*r*_binary64
611×associate-*l*_binary64
464×fma-neg_binary64
463×fma-def_binary64
204×*-commutative_binary64
Counts
139 → 136
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
046010062
113019043
249859041
354119041

prune638.0ms (7.1%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New3132315
Fresh044
Picked101
Done011
Total3147321
Error
1.5b
Counts
321 → 7
Alt Table
StatusErrorProgram
27.6b
(*.f64 (cos.f64 (-.f64 (/.f64 (expm1.f64 (log1p.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 (-.f64 (-.f64 m n) (pow.f64 (-.f64 (/.f64 (+.f64 n m) 2) M) 2)) l)))
6.5b
(*.f64 (cos.f64 (*.f64 1/2 (*.f64 K m))) (exp.f64 (-.f64 (-.f64 (-.f64 m n) (pow.f64 (-.f64 (/.f64 (+.f64 n m) 2) M) 2)) l)))
12.4b
(*.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))))
12.3b
(*.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))))
8.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))))
6.5b
(*.f64 (log.f64 (exp.f64 (cos.f64 (*.f64 1/2 (*.f64 K m))))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))))
Compiler

Compiled 19827 to 10344 computations (47.8% saved)

regimes901.0ms (10%)

Accuracy

Total 0.3b remaining (21.2%)

Threshold costs 0.3b (21.2%)

Counts
105 → 1
Compiler

Compiled 27482 to 17136 computations (37.6% saved)

simplify3.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01829
12829
24229
35429
46129
56329
66329

end6.0ms (0.1%)

Compiler

Compiled 72 to 51 computations (29.2% saved)

sample2.2s (24.1%)

Algorithm
intervals
Results
1.2s7835×body128valid
54.0ms81×body1024invalid
48.0ms70×body1024valid
45.0ms96×body512invalid
45.0ms301×body128invalid
29.0ms65×body512valid
22.0ms21×body2048invalid
14.0ms46×body256invalid
9.0ms30×body256valid
Compiler

Compiled 300 to 208 computations (30.7% saved)

Profiling

Loading profile data...