Details

Time bar (total: 3.9s)

analyze2.0s (52.7%)

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)

sample52.0ms (1.4%)

Algorithm
intervals
Results
28.0ms245×body128valid
2.0msbody1024valid
1.0msbody512valid
1.0msbody2048invalid
1.0msbody128invalid
1.0msbody1024invalid
1.0msbody512invalid
0.0msbody256valid
0.0msbody256invalid
Compiler

Compiled 59 to 52 computations (11.9% saved)

simplify133.0ms (3.4%)

Algorithm
egg-herbie
Rules
333×associate-*l*_binary64_701
286×associate-*r*_binary64_700
262×times-frac_binary64_766
236×exp-sum_binary64_806
231×distribute-rgt-in_binary64_710
230×cancel-sign-sub-inv_binary64_726
196×distribute-lft-in_binary64_709
184×associate-/l*_binary64_705
139×exp-prod_binary64_812
113×associate-/r*_binary64_704
105×associate-*l/_binary64_703
104×distribute-neg-in_binary64_721
103×sub-neg_binary64_753
92×exp-diff_binary64_808
89×unsub-neg_binary64_754
84×associate--r-_binary64_699
82×associate-*r/_binary64_702
70×associate--l-_binary64_698
57×associate-/l/_binary64_707
54×distribute-rgt-neg-in_binary64_718
52×associate-+l+_binary64_693
50×associate-/r/_binary64_706
47×distribute-rgt-neg-out_binary64_720
46×sqr-pow_binary64_732
43×distribute-lft-neg-out_binary64_719
41×neg-mul-1_binary64_756 distribute-lft-neg-in_binary64_717
40×associate--r+_binary64_696
38×neg-sub0_binary64_755 associate-+r+_binary64_692
30×associate--l+_binary64_697 *-commutative_binary64_691
27×unswap-sqr_binary64_728
24×+-commutative_binary64_690
23×associate-+r-_binary64_694
21×distribute-neg-out_binary64_722
20×associate-+l-_binary64_695
19×div-sub_binary64_765 distribute-rgt-out--_binary64_714
16×distribute-rgt-out_binary64_713
15×exp-sqrt_binary64_813 +-rgt-identity_binary64_745
14×sub0-neg_binary64_747
13×pow-sqr_binary64_733 distribute-neg-frac_binary64_724
12×remove-double-neg_binary64_748
11×exp-neg_binary64_807 --rgt-identity_binary64_746
distribute-lft-out--_binary64_712
div-exp_binary64_811
swap-sqr_binary64_727
pow-plus_binary64_823 /-rgt-identity_binary64_751 distribute-frac-neg_binary64_723
prod-exp_binary64_809 *-lft-identity_binary64_749 mul0-lft_binary64_742 distribute-lft-out_binary64_711
*-rgt-identity_binary64_750 mul0-rgt_binary64_743
cube-unmult_binary64_797 sqr-neg_binary64_774
rec-exp_binary64_810 mul-1-neg_binary64_752 count-2_binary64_708
cos-neg_binary64_891 unpow2_binary64_825 unpow1_binary64_818 1-exp_binary64_804 *-inverses_binary64_740 rgt-mult-inverse_binary64_737 cancel-sign-sub_binary64_725
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64_1023 erf-erfc_binary64_1022 erf-odd_binary64_1021 if-if-and-not_binary64_1020 if-if-and_binary64_1019 if-if-or-not_binary64_1018 if-if-or_binary64_1017 if-not_binary64_1016 if-same_binary64_1015 if-false_binary64_1014 if-true_binary64_1013 not-gte_binary64_1012 not-lte_binary64_1011 not-gt_binary64_1010 not-lt_binary64_1009 gte-same_binary64_1008 lte-same_binary64_1007 gt-same_binary64_1006 lt-same_binary64_1005 sinh---cosh_binary64_952 sinh-+-cosh_binary64_951 sinh-cosh_binary64_950 tanh-def-c_binary64_949 tanh-def-b_binary64_948 tanh-def-a_binary64_947 cosh-def_binary64_946 sinh-def_binary64_945 tan-neg_binary64_892 sin-neg_binary64_890 tan-0_binary64_889 cos-0_binary64_888 sin-0_binary64_887 hang-m-tan_binary64_886 hang-p-tan_binary64_885 hang-m0-tan_binary64_884 hang-p0-tan_binary64_883 hang-0m-tan_binary64_882 hang-0p-tan_binary64_881 tan-+PI/2_binary64_880 tan-+PI_binary64_879 tan-PI_binary64_878 tan-PI/3_binary64_877 tan-PI/4_binary64_876 tan-PI/6_binary64_875 cos-+PI/2_binary64_874 cos-+PI_binary64_873 cos-PI_binary64_872 cos-PI/2_binary64_871 cos-PI/3_binary64_870 cos-PI/4_binary64_869 cos-PI/6_binary64_868 sin-+PI/2_binary64_867 sin-+PI_binary64_866 sin-PI_binary64_865 sin-PI/2_binary64_864 sin-PI/3_binary64_863 sin-PI/4_binary64_862 sin-PI/6_binary64_861 sub-1-sin_binary64_860 sub-1-cos_binary64_859 -1-add-sin_binary64_858 -1-add-cos_binary64_857 1-sub-sin_binary64_856 1-sub-cos_binary64_855 cos-sin-sum_binary64_854 log-E_binary64_850 log-pow_binary64_849 log-rec_binary64_848 log-div_binary64_847 log-prod_binary64_846 pow-base-0_binary64_844 unpow1/3_binary64_827 unpow3_binary64_826 unpow1/2_binary64_824 exp-to-pow_binary64_822 pow-base-1_binary64_820 unpow0_binary64_819 unpow-1_binary64_817 exp-lft-cube_binary64_816 exp-lft-sqr_binary64_815 exp-cbrt_binary64_814 e-exp-1_binary64_805 exp-1-e_binary64_803 exp-0_binary64_802 rem-log-exp_binary64_801 rem-exp-log_binary64_800 cube-mult_binary64_790 cube-div_binary64_789 cube-prod_binary64_788 cube-neg_binary64_787 rem-3cbrt-rft_binary64_786 rem-3cbrt-lft_binary64_785 rem-cbrt-cube_binary64_784 rem-cube-cbrt_binary64_783 sqr-abs_binary64_775 rem-sqrt-square_binary64_773 rem-square-sqrt_binary64_772 +-lft-identity_binary64_744 div0_binary64_741 +-inverses_binary64_739 lft-mult-inverse_binary64_738 remove-double-div_binary64_736 difference-of-sqr--1_binary64_731 difference-of-sqr-1_binary64_730 difference-of-squares_binary64_729 distribute-rgt1-in_binary64_716 distribute-lft1-in_binary64_715
Counts
1 → 3
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02245
15545
212843
334743
4110843

prune8.0ms (0.2%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New213
Fresh101
Picked000
Done000
Total314
Error
17.6b
Counts
4 → 1
Compiler

Compiled 113 to 73 computations (35.4% saved)

localize23.0ms (0.6%)

Local error

Found 4 expressions with local error:

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

rewrite191.0ms (4.9%)

Algorithm
rewrite-expression-head
Error
17.5b
Rules
28×add-sqr-sqrt_binary64_782
21×*-un-lft-identity_binary64_760
20×cancel-sign-sub-inv_binary64_726
16×exp-sum_binary64_806
13×unpow-prod-down_binary64_839
12×add-cube-cbrt_binary64_795 add-log-exp_binary64_799
exp-prod_binary64_812
difference-of-squares_binary64_729
pow1_binary64_821 add-exp-log_binary64_798 distribute-lft-out--_binary64_712
sub-neg_binary64_753 cos-sum_binary64_894 add-cbrt-cube_binary64_796 associate--l+_binary64_697 diff-log_binary64_852
unpow2_binary64_825 sqr-pow_binary64_732 rem-exp-log_binary64_800 pow-unpow_binary64_837
times-frac_binary64_766
cos-diff_binary64_897 exp-diff_binary64_808 pow-pow_binary64_832 pow-to-exp_binary64_829 pow-exp_binary64_828 flip3--_binary64_764 flip--_binary64_735
Counts
4 → 83
Calls

4 calls:

21.0ms
(exp.f64 (-.f64 (-.f64 (fabs.f64 (-.f64 m n)) l) (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)))
10.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)
9.0ms
(cos.f64 (-.f64 (*.f64 (+.f64 m n) (/.f64 K 2)) M))
8.0ms
(-.f64 (*.f64 (+.f64 m n) (/.f64 K 2)) M)
Compiler

Compiled 3227 to 1612 computations (50% saved)

series1.0s (27.1%)

Error
2.5b
Counts
4 → 78
Calls

4 calls:

299.0ms
(pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)
231.0ms
(exp.f64 (-.f64 (-.f64 (fabs.f64 (-.f64 m n)) l) (pow.f64 (-.f64 (/.f64 (+.f64 m n) 2) M) 2)))
214.0ms
(-.f64 (*.f64 (+.f64 m n) (/.f64 K 2)) M)
197.0ms
(cos.f64 (-.f64 (*.f64 (+.f64 m n) (/.f64 K 2)) M))
Compiler

Compiled 7783 to 5236 computations (32.7% saved)

simplify377.0ms (9.7%)

Algorithm
egg-herbie
Rules
408×distribute-rgt-in_binary64_710
380×cancel-sign-sub-inv_binary64_726
260×sub-neg_binary64_753
256×exp-sum_binary64_806
194×distribute-rgt-neg-in_binary64_718
180×exp-prod_binary64_812
158×distribute-neg-in_binary64_721 distribute-lft-neg-in_binary64_717
134×associate-*r*_binary64_700
128×sqr-pow_binary64_732
122×*-commutative_binary64_691
118×+-commutative_binary64_690
109×neg-mul-1_binary64_756
104×associate-*l*_binary64_701
102×exp-diff_binary64_808
101×neg-sub0_binary64_755
93×unswap-sqr_binary64_728
90×associate--l+_binary64_697
84×distribute-lft-neg-out_binary64_719
82×associate--r+_binary64_696
75×associate-+l+_binary64_693
71×associate-+r+_binary64_692
57×distribute-rgt-neg-out_binary64_720
46×unsub-neg_binary64_754
39×times-frac_binary64_766
38×distribute-rgt-out_binary64_713
27×pow-sqr_binary64_733
25×pow-plus_binary64_823
24×distribute-lft-in_binary64_709
23×distribute-lft-out_binary64_711
22×cube-prod_binary64_788
17×cancel-sign-sub_binary64_725
16×log-prod_binary64_846 unpow2_binary64_825
15×unpow1_binary64_818 associate-+r-_binary64_694
13×swap-sqr_binary64_727
12×cube-unmult_binary64_797 +-rgt-identity_binary64_745
11×exp-neg_binary64_807 associate-*l/_binary64_703
10×distribute-neg-out_binary64_722 distribute-rgt-out--_binary64_714 associate-*r/_binary64_702
log-pow_binary64_849 prod-exp_binary64_809
unpow3_binary64_826 cube-mult_binary64_790 rem-sqrt-square_binary64_773
difference-of-squares_binary64_729
cube-div_binary64_789 *-lft-identity_binary64_749 distribute-neg-frac_binary64_724 associate-+l-_binary64_695
cos-neg_binary64_891 sin-neg_binary64_890 log-div_binary64_847 rem-3cbrt-lft_binary64_785 rem-square-sqrt_binary64_772 distribute-lft-out--_binary64_712
pow-base-1_binary64_820 exp-sqrt_binary64_813 rem-log-exp_binary64_801
div-sub_binary64_765 remove-double-neg_binary64_748 distribute-rgt1-in_binary64_716 associate-/l*_binary64_705 associate--l-_binary64_698
div-exp_binary64_811 1-exp_binary64_804 exp-1-e_binary64_803 rem-3cbrt-rft_binary64_786 *-rgt-identity_binary64_750 sub0-neg_binary64_747 *-inverses_binary64_740 rgt-mult-inverse_binary64_737 distribute-lft1-in_binary64_715 count-2_binary64_708 associate-/l/_binary64_707 associate--r-_binary64_699
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64_1023 erf-erfc_binary64_1022 erf-odd_binary64_1021 if-if-and-not_binary64_1020 if-if-and_binary64_1019 if-if-or-not_binary64_1018 if-if-or_binary64_1017 if-not_binary64_1016 if-same_binary64_1015 if-false_binary64_1014 if-true_binary64_1013 not-gte_binary64_1012 not-lte_binary64_1011 not-gt_binary64_1010 not-lt_binary64_1009 gte-same_binary64_1008 lte-same_binary64_1007 gt-same_binary64_1006 lt-same_binary64_1005 sinh---cosh_binary64_952 sinh-+-cosh_binary64_951 sinh-cosh_binary64_950 tanh-def-c_binary64_949 tanh-def-b_binary64_948 tanh-def-a_binary64_947 cosh-def_binary64_946 sinh-def_binary64_945 tan-neg_binary64_892 tan-0_binary64_889 cos-0_binary64_888 sin-0_binary64_887 hang-m-tan_binary64_886 hang-p-tan_binary64_885 hang-m0-tan_binary64_884 hang-p0-tan_binary64_883 hang-0m-tan_binary64_882 hang-0p-tan_binary64_881 tan-+PI/2_binary64_880 tan-+PI_binary64_879 tan-PI_binary64_878 tan-PI/3_binary64_877 tan-PI/4_binary64_876 tan-PI/6_binary64_875 cos-+PI/2_binary64_874 cos-+PI_binary64_873 cos-PI_binary64_872 cos-PI/2_binary64_871 cos-PI/3_binary64_870 cos-PI/4_binary64_869 cos-PI/6_binary64_868 sin-+PI/2_binary64_867 sin-+PI_binary64_866 sin-PI_binary64_865 sin-PI/2_binary64_864 sin-PI/3_binary64_863 sin-PI/4_binary64_862 sin-PI/6_binary64_861 sub-1-sin_binary64_860 sub-1-cos_binary64_859 -1-add-sin_binary64_858 -1-add-cos_binary64_857 1-sub-sin_binary64_856 1-sub-cos_binary64_855 cos-sin-sum_binary64_854 log-E_binary64_850 log-rec_binary64_848 pow-base-0_binary64_844 unpow1/3_binary64_827 unpow1/2_binary64_824 exp-to-pow_binary64_822 unpow0_binary64_819 unpow-1_binary64_817 exp-lft-cube_binary64_816 exp-lft-sqr_binary64_815 exp-cbrt_binary64_814 rec-exp_binary64_810 e-exp-1_binary64_805 exp-0_binary64_802 rem-exp-log_binary64_800 cube-neg_binary64_787 rem-cbrt-cube_binary64_784 rem-cube-cbrt_binary64_783 sqr-abs_binary64_775 sqr-neg_binary64_774 mul-1-neg_binary64_752 /-rgt-identity_binary64_751 --rgt-identity_binary64_746 +-lft-identity_binary64_744 mul0-rgt_binary64_743 mul0-lft_binary64_742 div0_binary64_741 +-inverses_binary64_739 lft-mult-inverse_binary64_738 remove-double-div_binary64_736 difference-of-sqr--1_binary64_731 difference-of-sqr-1_binary64_730 distribute-frac-neg_binary64_723 associate-/r/_binary64_706 associate-/r*_binary64_704
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03284112
18253732
222043596

end0.0ms (0%)

Profiling

Loading profile data...