Details

Time bar (total: 33.0s)

analyze2.9s (8.9%)

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 30 to 24 computations (20% saved)

sample86.0ms (0.3%)

Algorithm
intervals
Results
52.0ms253×body128valid
2.0msbody1024invalid
2.0msbody512invalid
2.0ms12×body128invalid
1.0msbody256invalid
1.0msbody2048invalid
1.0msbody512valid
0.0msbody1024valid
0.0msbody256valid
Compiler

Compiled 59 to 52 computations (11.9% saved)

simplify155.0ms (0.5%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (45.0ms)

IterNodesCost
0509743

prune8.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 12.9b

Counts
2 → 2
Compiler

Compiled 85 to 67 computations (21.2% saved)

localize47.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

rewrite117.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
27×*-un-lft-identity_binary64_760
22×add-sqr-sqrt_binary64_782
15×add-log-exp_binary64_799
11×add-cube-cbrt_binary64_795
exp-prod_binary64_812 cancel-sign-sub-inv_binary64_726 distribute-lft-out--_binary64_712
add-exp-log_binary64_798 exp-sum_binary64_806 pow1_binary64_821
diff-log_binary64_852 add-cbrt-cube_binary64_796 unpow-prod-down_binary64_839
rem-exp-log_binary64_800
cos-sum_binary64_894 difference-of-squares_binary64_729 associate-*r*_binary64_700
associate-*l*_binary64_701 pow-unpow_binary64_837
neg-log_binary64_853 associate-*r/_binary64_702 distribute-rgt-neg-in_binary64_718 sub-neg_binary64_753
unswap-sqr_binary64_728 distribute-lft-out_binary64_711 unpow2_binary64_825 prod-exp_binary64_809 flip3-+_binary64_763 distribute-lft-in_binary64_709 exp-diff_binary64_808 pow-exp_binary64_828 distribute-rgt-in_binary64_710 flip-+_binary64_734 pow-to-exp_binary64_829 associate--r-_binary64_699 sqr-pow_binary64_732 cos-diff_binary64_897 cbrt-unprod_binary64_793 pow-prod-down_binary64_831 times-frac_binary64_766 *-commutative_binary64_691 pow-pow_binary64_832
Counts
4 → 84
Calls

4 calls:

47.0ms
(exp.f64 (-.f64 (neg.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)) (-.f64 l (fabs.f64 (-.f64 m n)))))
21.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)
18.0ms
(cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M))
12.0ms
(*.f64 K (+.f64 m n))

series404.0ms (1.2%)

Counts
4 → 12
Calls

4 calls:

196.0ms
(exp.f64 (-.f64 (neg.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)) (-.f64 l (fabs.f64 (-.f64 m n)))))
111.0ms
(cos.f64 (-.f64 (/.f64 (*.f64 K (+.f64 m n)) 2) M))
72.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)
25.0ms
(*.f64 K (+.f64 m n))

simplify92.0ms (0.3%)

Algorithm
egg-herbie
Counts
96 → 96
Iterations

Useful iterations: 0 (62.0ms)

IterNodesCost
052001713

prune768.0ms (2.3%)

Pruning

35 alts after pruning (34 fresh and 1 done)

PrunedKeptTotal
New633396
Fresh011
Picked011
Done000
Total633598

Merged error: 0.6b

Counts
98 → 35
Compiler

Compiled 4666 to 2520 computations (46% saved)

localize17.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

rewrite65.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
20×*-un-lft-identity_binary64_760
15×add-sqr-sqrt_binary64_782
13×add-log-exp_binary64_799
exp-prod_binary64_812 distribute-lft-out--_binary64_712
exp-sum_binary64_806
diff-log_binary64_852 add-cube-cbrt_binary64_795 unpow-prod-down_binary64_839
cancel-sign-sub-inv_binary64_726 rem-exp-log_binary64_800
difference-of-squares_binary64_729
add-exp-log_binary64_798 pow1_binary64_821 pow-unpow_binary64_837
add-cbrt-cube_binary64_796 neg-log_binary64_853 distribute-rgt-neg-in_binary64_718
unpow2_binary64_825 exp-diff_binary64_808 pow-exp_binary64_828 pow-to-exp_binary64_829 associate--r-_binary64_699 sqr-pow_binary64_732 sub-neg_binary64_753 times-frac_binary64_766 pow-pow_binary64_832
Counts
2 → 49
Calls

2 calls:

35.0ms
(exp.f64 (-.f64 (neg.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)) (-.f64 l (fabs.f64 (-.f64 m n)))))
24.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)

series252.0ms (0.8%)

Counts
2 → 6
Calls

2 calls:

194.0ms
(exp.f64 (-.f64 (neg.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)) (-.f64 l (fabs.f64 (-.f64 m n)))))
58.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)

simplify71.0ms (0.2%)

Algorithm
egg-herbie
Counts
55 → 55
Iterations

Useful iterations: 0 (54.0ms)

IterNodesCost
050161126

prune577.0ms (1.7%)

Pruning

56 alts after pruning (54 fresh and 2 done)

PrunedKeptTotal
New342155
Fresh03333
Picked011
Done011
Total345690

Merged error: 0.6b

Counts
90 → 56
Compiler

Compiled 3383 to 2214 computations (34.6% saved)

localize35.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(pow.f64 (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))) 3)
0.0b
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)
0.0b
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))
0.2b
(cbrt.f64 (pow.f64 (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))) 3))

rewrite109.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
41×*-un-lft-identity_binary64_760
28×add-sqr-sqrt_binary64_782
25×exp-sum_binary64_806
22×cbrt-prod_binary64_791 unpow-prod-down_binary64_839
20×cancel-sign-sub-inv_binary64_726
19×add-cube-cbrt_binary64_795
16×cube-prod_binary64_788
12×exp-prod_binary64_812
10×add-log-exp_binary64_799
pow-pow_binary64_832
distribute-lft-out_binary64_711
pow1_binary64_821 pow-unpow_binary64_837
add-exp-log_binary64_798 add-cbrt-cube_binary64_796 distribute-lft-out--_binary64_712 sub-neg_binary64_753
difference-of-squares_binary64_729
exp-diff_binary64_808 rem-exp-log_binary64_800 sqr-pow_binary64_732
cube-mult_binary64_790 diff-log_binary64_852 unpow3_binary64_826 pow-exp_binary64_828 pow-to-exp_binary64_829 cube-div_binary64_789
pow1/3_binary64_842 rem-cbrt-cube_binary64_784 unpow2_binary64_825 rem-cube-cbrt_binary64_783 sum-log_binary64_851 cbrt-div_binary64_792 times-frac_binary64_766
Counts
4 → 115
Calls

4 calls:

30.0ms
(pow.f64 (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))) 3)
26.0ms
(cbrt.f64 (pow.f64 (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))) 3))
22.0ms
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))
12.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)

series1.2s (3.6%)

Counts
4 → 12
Calls

4 calls:

667.0ms
(pow.f64 (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))) 3)
235.0ms
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))
231.0ms
(cbrt.f64 (pow.f64 (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))) 3))
62.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)

simplify115.0ms (0.3%)

Algorithm
egg-herbie
Counts
127 → 127
Iterations

Useful iterations: 0 (73.0ms)

IterNodesCost
049833709
149833709

prune1.5s (4.5%)

Pruning

73 alts after pruning (71 fresh and 2 done)

PrunedKeptTotal
New10522127
Fresh44953
Picked101
Done022
Total11073183

Merged error: 0.6b

Counts
183 → 73
Compiler

Compiled 6245 to 4054 computations (35.1% saved)

localize31.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))
0.0b
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))
0.0b
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))
0.2b
(cbrt.f64 (*.f64 (*.f64 (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))))

rewrite195.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
31×*-un-lft-identity_binary64_760
22×add-log-exp_binary64_799
18×exp-prod_binary64_812
16×add-sqr-sqrt_binary64_782
15×exp-diff_binary64_808 exp-sum_binary64_806
12×cancel-sign-sub-inv_binary64_726
10×add-cube-cbrt_binary64_795
rem-exp-log_binary64_800
cbrt-div_binary64_792
diff-log_binary64_852 distribute-lft-out_binary64_711 distribute-lft-out--_binary64_712
associate-*l/_binary64_703 frac-times_binary64_770
add-exp-log_binary64_798 add-cbrt-cube_binary64_796 pow1_binary64_821
difference-of-squares_binary64_729 sum-log_binary64_851 associate-*r/_binary64_702 sub-neg_binary64_753
pow1/3_binary64_842 rem-cbrt-cube_binary64_784 pow3_binary64_843 cbrt-prod_binary64_791
Counts
4 → 83
Calls

4 calls:

118.0ms
(cbrt.f64 (*.f64 (*.f64 (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))))
22.0ms
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))
20.0ms
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))
19.0ms
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))

series808.0ms (2.4%)

Counts
4 → 12
Calls

4 calls:

219.0ms
(cbrt.f64 (*.f64 (*.f64 (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))) (exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))))
218.0ms
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))
207.0ms
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))
164.0ms
(exp.f64 (-.f64 (fabs.f64 (-.f64 m n)) (+.f64 (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2) l)))

simplify143.0ms (0.4%)

Algorithm
egg-herbie
Counts
95 → 95
Iterations

Useful iterations: 0 (93.0ms)

IterNodesCost
049702679
149702679

prune1.8s (5.4%)

Pruning

82 alts after pruning (79 fresh and 3 done)

PrunedKeptTotal
New831295
Fresh36770
Picked011
Done022
Total8682168

Merged error: 0.6b

Counts
168 → 82
Compiler

Compiled 5519 to 2848 computations (48.4% saved)

regimes4.8s (14.6%)

Compiler

Compiled 49484 to 36936 computations (25.4% saved)

bsearch5.0s (15.3%)

simplify80.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (3.0ms)

IterNodesCost
06784
16784

end0.0ms (0%)

sample11.6s (35%)

Algorithm
intervals
Results
1.2s7836×body128valid
61.0ms99×body1024invalid
51.0ms301×body128invalid
42.0ms59×body1024valid
39.0ms83×body512invalid
34.0ms73×body512valid
15.0ms49×body256invalid
15.0ms32×body256valid
14.0ms15×body2048invalid
Compiler

Compiled 8614 to 6431 computations (25.3% saved)

Pareto

0.32080197964943885

Profiling

Loading profile data...