Details

Time bar (total: 2.0s)

analyze2.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%0%100%0
0%0%100%1
Compiler

Compiled 16 to 11 computations (31.3% saved)

sample20.0ms (1%)

Algorithm
intervals
Results
5.0ms256×pre128true
4.0ms256×body128valid
Compiler

Compiled 23 to 17 computations (26.1% saved)

simplify104.0ms (5.2%)

Algorithm
egg-herbie
Rules
24×associate-+l+_binary64_2739
18×associate-+r+_binary64_2738
10×distribute-rgt-in_binary64_2756
*-commutative_binary64_2737
distribute-rgt-out_binary64_2759 distribute-lft-in_binary64_2755
associate-*r*_binary64_2746
count-2_binary64_2754 +-commutative_binary64_2736
associate-*l*_binary64_2747
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_3069 erf-erfc_binary64_3068 erf-odd_binary64_3067 if-if-and-not_binary64_3066 if-if-and_binary64_3065 if-if-or-not_binary64_3064 if-if-or_binary64_3063 if-not_binary64_3062 if-same_binary64_3061 if-false_binary64_3060 if-true_binary64_3059 not-gte_binary64_3058 not-lte_binary64_3057 not-gt_binary64_3056 not-lt_binary64_3055 gte-same_binary64_3054 lte-same_binary64_3053 gt-same_binary64_3052 lt-same_binary64_3051 sinh---cosh_binary64_2998 sinh-+-cosh_binary64_2997 sinh-cosh_binary64_2996 tanh-def-c_binary64_2995 tanh-def-b_binary64_2994 tanh-def-a_binary64_2993 cosh-def_binary64_2992 sinh-def_binary64_2991 tan-neg_binary64_2938 cos-neg_binary64_2937 sin-neg_binary64_2936 tan-0_binary64_2935 cos-0_binary64_2934 sin-0_binary64_2933 hang-m-tan_binary64_2932 hang-p-tan_binary64_2931 hang-m0-tan_binary64_2930 hang-p0-tan_binary64_2929 hang-0m-tan_binary64_2928 hang-0p-tan_binary64_2927 tan-+PI/2_binary64_2926 tan-+PI_binary64_2925 tan-PI_binary64_2924 tan-PI/3_binary64_2923 tan-PI/4_binary64_2922 tan-PI/6_binary64_2921 cos-+PI/2_binary64_2920 cos-+PI_binary64_2919 cos-PI_binary64_2918 cos-PI/2_binary64_2917 cos-PI/3_binary64_2916 cos-PI/4_binary64_2915 cos-PI/6_binary64_2914 sin-+PI/2_binary64_2913 sin-+PI_binary64_2912 sin-PI_binary64_2911 sin-PI/2_binary64_2910 sin-PI/3_binary64_2909 sin-PI/4_binary64_2908 sin-PI/6_binary64_2907 sub-1-sin_binary64_2906 sub-1-cos_binary64_2905 -1-add-sin_binary64_2904 -1-add-cos_binary64_2903 1-sub-sin_binary64_2902 1-sub-cos_binary64_2901 cos-sin-sum_binary64_2900 log-E_binary64_2896 log-pow_binary64_2895 log-rec_binary64_2894 log-div_binary64_2893 log-prod_binary64_2892 pow-base-0_binary64_2890 unpow1/3_binary64_2873 unpow3_binary64_2872 unpow2_binary64_2871 unpow1/2_binary64_2870 pow-plus_binary64_2869 exp-to-pow_binary64_2868 pow-base-1_binary64_2866 unpow0_binary64_2865 unpow1_binary64_2864 unpow-1_binary64_2863 exp-lft-cube_binary64_2862 exp-lft-sqr_binary64_2861 exp-cbrt_binary64_2860 exp-sqrt_binary64_2859 exp-prod_binary64_2858 div-exp_binary64_2857 rec-exp_binary64_2856 prod-exp_binary64_2855 exp-diff_binary64_2854 exp-neg_binary64_2853 exp-sum_binary64_2852 e-exp-1_binary64_2851 1-exp_binary64_2850 exp-1-e_binary64_2849 exp-0_binary64_2848 rem-log-exp_binary64_2847 rem-exp-log_binary64_2846 cube-unmult_binary64_2843 cube-mult_binary64_2836 cube-div_binary64_2835 cube-prod_binary64_2834 cube-neg_binary64_2833 rem-3cbrt-rft_binary64_2832 rem-3cbrt-lft_binary64_2831 rem-cbrt-cube_binary64_2830 rem-cube-cbrt_binary64_2829 sqr-abs_binary64_2821 sqr-neg_binary64_2820 rem-sqrt-square_binary64_2819 rem-square-sqrt_binary64_2818 times-frac_binary64_2812 div-sub_binary64_2811 neg-mul-1_binary64_2802 neg-sub0_binary64_2801 unsub-neg_binary64_2800 sub-neg_binary64_2799 mul-1-neg_binary64_2798 /-rgt-identity_binary64_2797 *-rgt-identity_binary64_2796 *-lft-identity_binary64_2795 remove-double-neg_binary64_2794 sub0-neg_binary64_2793 --rgt-identity_binary64_2792 +-rgt-identity_binary64_2791 +-lft-identity_binary64_2790 mul0-rgt_binary64_2789 mul0-lft_binary64_2788 div0_binary64_2787 *-inverses_binary64_2786 +-inverses_binary64_2785 lft-mult-inverse_binary64_2784 rgt-mult-inverse_binary64_2783 remove-double-div_binary64_2782 pow-sqr_binary64_2779 sqr-pow_binary64_2778 difference-of-sqr--1_binary64_2777 difference-of-sqr-1_binary64_2776 difference-of-squares_binary64_2775 unswap-sqr_binary64_2774 swap-sqr_binary64_2773 cancel-sign-sub-inv_binary64_2772 cancel-sign-sub_binary64_2771 distribute-neg-frac_binary64_2770 distribute-frac-neg_binary64_2769 distribute-neg-out_binary64_2768 distribute-neg-in_binary64_2767 distribute-rgt-neg-out_binary64_2766 distribute-lft-neg-out_binary64_2765 distribute-rgt-neg-in_binary64_2764 distribute-lft-neg-in_binary64_2763 distribute-rgt1-in_binary64_2762 distribute-lft1-in_binary64_2761 distribute-rgt-out--_binary64_2760 distribute-lft-out--_binary64_2758 distribute-lft-out_binary64_2757 associate-/l/_binary64_2753 associate-/r/_binary64_2752 associate-/l*_binary64_2751 associate-/r*_binary64_2750 associate-*l/_binary64_2749 associate-*r/_binary64_2748 associate--r-_binary64_2745 associate--l-_binary64_2744 associate--l+_binary64_2743 associate--r+_binary64_2742 associate-+l-_binary64_2741 associate-+r-_binary64_2740
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0510
11210
22410
33610
45310
56310
66810
77010
87010

prune1.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
0.0b
Counts
1 → 1
Compiler

Compiled 7 to 4 computations (42.9% saved)

localize3.0ms (0.2%)

Local error

Found 1 expressions with local error:

0.0b
(*.f64 (+.f64 a b) (+.f64 a b))

rewrite38.0ms (1.9%)

Algorithm
rewrite-expression-head
Error
0b
Rules
19×*-un-lft-identity_binary64_2806
pow1_binary64_2867
add-sqr-sqrt_binary64_2828
flip3-+_binary64_2809 flip-+_binary64_2780 swap-sqr_binary64_2773 distribute-lft-out_binary64_2757
add-cube-cbrt_binary64_2841
frac-times_binary64_2816 associate-*l*_binary64_2747 associate-*r*_binary64_2746
add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842
associate-*l/_binary64_2749 associate-*r/_binary64_2748
pow2_binary64_2887 pow-prod-down_binary64_2877 pow-prod-up_binary64_2876 pow-plus_binary64_2869 prod-exp_binary64_2855 add-log-exp_binary64_2845 cbrt-unprod_binary64_2839 pow-sqr_binary64_2779 unswap-sqr_binary64_2774 distribute-rgt-in_binary64_2756 distribute-lft-in_binary64_2755 *-commutative_binary64_2737
Counts
1 → 40
Calls

1 calls:

9.0ms
(*.f64 (+.f64 a b) (+.f64 a b))
Compiler

Compiled 610 to 146 computations (76.1% saved)

series95.0ms (4.7%)

Error
0.0b
Counts
1 → 18
Calls

1 calls:

84.0ms
(*.f64 (+.f64 a b) (+.f64 a b))
Compiler

Compiled 378 to 297 computations (21.4% saved)

simplify80.0ms (4%)

Algorithm
egg-herbie
Rules
755×associate-+l+_binary64_2739
594×unswap-sqr_binary64_2774
433×distribute-rgt-in_binary64_2756
424×distribute-lft-in_binary64_2755
187×*-commutative_binary64_2737
81×associate-*l*_binary64_2747
77×associate-*r*_binary64_2746
69×distribute-lft-neg-out_binary64_2765
67×exp-prod_binary64_2858 distribute-rgt-neg-out_binary64_2766
64×associate-+r+_binary64_2738
61×sqr-pow_binary64_2778
58×unsub-neg_binary64_2800
50×swap-sqr_binary64_2773
45×distribute-rgt-out_binary64_2759
44×exp-sum_binary64_2852
42×*-rgt-identity_binary64_2796
41×log-prod_binary64_2892 *-lft-identity_binary64_2795
34×distribute-rgt-neg-in_binary64_2764
30×distribute-lft-neg-in_binary64_2763
28×neg-mul-1_binary64_2802 neg-sub0_binary64_2801
26×cancel-sign-sub-inv_binary64_2772
24×sub-neg_binary64_2799
17×cube-prod_binary64_2834
16×pow-sqr_binary64_2779
15×+-commutative_binary64_2736
14×pow-plus_binary64_2869 difference-of-squares_binary64_2775 associate-+l-_binary64_2741
13×associate-/l*_binary64_2751
12×associate-+r-_binary64_2740
10×cube-unmult_binary64_2843
distribute-lft-out_binary64_2757 associate-/r*_binary64_2750
distribute-neg-out_binary64_2768 distribute-neg-in_binary64_2767
log-pow_binary64_2895
unpow3_binary64_2872
rem-sqrt-square_binary64_2819 +-rgt-identity_binary64_2791 count-2_binary64_2754 associate-/l/_binary64_2753 associate-*r/_binary64_2748
distribute-rgt-out--_binary64_2760 associate-/r/_binary64_2752 associate--r+_binary64_2742
unpow1/2_binary64_2870 cube-mult_binary64_2836 sqr-neg_binary64_2820 sub0-neg_binary64_2793
unpow2_binary64_2871 unpow1_binary64_2864
1-exp_binary64_2850 exp-1-e_binary64_2849 rem-3cbrt-rft_binary64_2832 rem-3cbrt-lft_binary64_2831 rem-square-sqrt_binary64_2818 associate--l+_binary64_2743
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_3069 erf-erfc_binary64_3068 erf-odd_binary64_3067 if-if-and-not_binary64_3066 if-if-and_binary64_3065 if-if-or-not_binary64_3064 if-if-or_binary64_3063 if-not_binary64_3062 if-same_binary64_3061 if-false_binary64_3060 if-true_binary64_3059 not-gte_binary64_3058 not-lte_binary64_3057 not-gt_binary64_3056 not-lt_binary64_3055 gte-same_binary64_3054 lte-same_binary64_3053 gt-same_binary64_3052 lt-same_binary64_3051 sinh---cosh_binary64_2998 sinh-+-cosh_binary64_2997 sinh-cosh_binary64_2996 tanh-def-c_binary64_2995 tanh-def-b_binary64_2994 tanh-def-a_binary64_2993 cosh-def_binary64_2992 sinh-def_binary64_2991 tan-neg_binary64_2938 cos-neg_binary64_2937 sin-neg_binary64_2936 tan-0_binary64_2935 cos-0_binary64_2934 sin-0_binary64_2933 hang-m-tan_binary64_2932 hang-p-tan_binary64_2931 hang-m0-tan_binary64_2930 hang-p0-tan_binary64_2929 hang-0m-tan_binary64_2928 hang-0p-tan_binary64_2927 tan-+PI/2_binary64_2926 tan-+PI_binary64_2925 tan-PI_binary64_2924 tan-PI/3_binary64_2923 tan-PI/4_binary64_2922 tan-PI/6_binary64_2921 cos-+PI/2_binary64_2920 cos-+PI_binary64_2919 cos-PI_binary64_2918 cos-PI/2_binary64_2917 cos-PI/3_binary64_2916 cos-PI/4_binary64_2915 cos-PI/6_binary64_2914 sin-+PI/2_binary64_2913 sin-+PI_binary64_2912 sin-PI_binary64_2911 sin-PI/2_binary64_2910 sin-PI/3_binary64_2909 sin-PI/4_binary64_2908 sin-PI/6_binary64_2907 sub-1-sin_binary64_2906 sub-1-cos_binary64_2905 -1-add-sin_binary64_2904 -1-add-cos_binary64_2903 1-sub-sin_binary64_2902 1-sub-cos_binary64_2901 cos-sin-sum_binary64_2900 log-E_binary64_2896 log-rec_binary64_2894 log-div_binary64_2893 pow-base-0_binary64_2890 unpow1/3_binary64_2873 exp-to-pow_binary64_2868 pow-base-1_binary64_2866 unpow0_binary64_2865 unpow-1_binary64_2863 exp-lft-cube_binary64_2862 exp-lft-sqr_binary64_2861 exp-cbrt_binary64_2860 exp-sqrt_binary64_2859 div-exp_binary64_2857 rec-exp_binary64_2856 prod-exp_binary64_2855 exp-diff_binary64_2854 exp-neg_binary64_2853 e-exp-1_binary64_2851 exp-0_binary64_2848 rem-log-exp_binary64_2847 rem-exp-log_binary64_2846 cube-div_binary64_2835 cube-neg_binary64_2833 rem-cbrt-cube_binary64_2830 rem-cube-cbrt_binary64_2829 sqr-abs_binary64_2821 times-frac_binary64_2812 div-sub_binary64_2811 mul-1-neg_binary64_2798 /-rgt-identity_binary64_2797 remove-double-neg_binary64_2794 --rgt-identity_binary64_2792 +-lft-identity_binary64_2790 mul0-rgt_binary64_2789 mul0-lft_binary64_2788 div0_binary64_2787 *-inverses_binary64_2786 +-inverses_binary64_2785 lft-mult-inverse_binary64_2784 rgt-mult-inverse_binary64_2783 remove-double-div_binary64_2782 difference-of-sqr--1_binary64_2777 difference-of-sqr-1_binary64_2776 cancel-sign-sub_binary64_2771 distribute-neg-frac_binary64_2770 distribute-frac-neg_binary64_2769 distribute-rgt1-in_binary64_2762 distribute-lft1-in_binary64_2761 distribute-lft-out--_binary64_2758 associate-*l/_binary64_2749 associate--r-_binary64_2745 associate--l-_binary64_2744
Counts
58 → 161
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
064902
1192770
2686733
32169634
44990634
54969634

prune103.0ms (5.2%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1592161
Fresh000
Picked011
Done000
Total1593162
Error
0b
Counts
162 → 3
Compiler

Compiled 2209 to 724 computations (67.2% saved)

localize8.0ms (0.4%)

Local error

Found 1 expressions with local error:

0.0b
(+.f64 (*.f64 2 (*.f64 b a)) (*.f64 a a))

rewrite16.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
0b
Rules
add-log-exp_binary64_2845
sum-log_binary64_2897 pow1_binary64_2867 add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842 add-cube-cbrt_binary64_2841 add-sqr-sqrt_binary64_2828 flip3-+_binary64_2809 *-un-lft-identity_binary64_2806 flip-+_binary64_2780 +-commutative_binary64_2736
Counts
1 → 11
Calls

1 calls:

6.0ms
(+.f64 (*.f64 2 (*.f64 b a)) (*.f64 a a))
Compiler

Compiled 264 to 109 computations (58.7% saved)

series110.0ms (5.5%)

Error
0b
Counts
1 → 12
Calls

1 calls:

104.0ms
(+.f64 (*.f64 2 (*.f64 b a)) (*.f64 a a))
Compiler

Compiled 330 to 217 computations (34.2% saved)

simplify60.0ms (3%)

Algorithm
egg-herbie
Rules
432×unswap-sqr_binary64_2774
424×associate-*l*_binary64_2747
384×distribute-rgt-out_binary64_2759
343×associate-*r*_binary64_2746
325×distribute-rgt-in_binary64_2756
300×distribute-lft-in_binary64_2755
290×cancel-sign-sub-inv_binary64_2772
240×distribute-lft-out_binary64_2757
208×distribute-rgt-neg-in_binary64_2764
190×distribute-lft-neg-in_binary64_2763
119×unsub-neg_binary64_2800
113×sub-neg_binary64_2799
108×sqr-pow_binary64_2778
96×neg-mul-1_binary64_2802
94×neg-sub0_binary64_2801 associate-+l+_binary64_2739
88×distribute-rgt-out--_binary64_2760 associate-+r+_binary64_2738
81×*-commutative_binary64_2737
45×exp-prod_binary64_2858
44×cube-prod_binary64_2834
43×+-commutative_binary64_2736
39×distribute-lft-out--_binary64_2758
31×distribute-lft-neg-out_binary64_2765
30×pow-sqr_binary64_2779
21×associate-+l-_binary64_2741
20×unpow3_binary64_2872
19×swap-sqr_binary64_2773
16×difference-of-squares_binary64_2775 associate-+r-_binary64_2740
15×mul0-rgt_binary64_2789 mul0-lft_binary64_2788
14×cube-mult_binary64_2836 sub0-neg_binary64_2793 distribute-neg-in_binary64_2767
13×distribute-rgt-neg-out_binary64_2766
11×+-rgt-identity_binary64_2791
10×prod-exp_binary64_2855 cube-unmult_binary64_2843
exp-sum_binary64_2852
pow-plus_binary64_2869
log-prod_binary64_2892 associate-/l*_binary64_2751
associate-/l/_binary64_2753 associate-*r/_binary64_2748
unpow1_binary64_2864 associate--r+_binary64_2742
exp-lft-sqr_binary64_2861 +-lft-identity_binary64_2790 associate-/r/_binary64_2752
log-pow_binary64_2895 unpow1/2_binary64_2870 times-frac_binary64_2812 associate-/r*_binary64_2750
unpow2_binary64_2871 1-exp_binary64_2850 rem-sqrt-square_binary64_2819 remove-double-neg_binary64_2794 count-2_binary64_2754 associate--l+_binary64_2743
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_3069 erf-erfc_binary64_3068 erf-odd_binary64_3067 if-if-and-not_binary64_3066 if-if-and_binary64_3065 if-if-or-not_binary64_3064 if-if-or_binary64_3063 if-not_binary64_3062 if-same_binary64_3061 if-false_binary64_3060 if-true_binary64_3059 not-gte_binary64_3058 not-lte_binary64_3057 not-gt_binary64_3056 not-lt_binary64_3055 gte-same_binary64_3054 lte-same_binary64_3053 gt-same_binary64_3052 lt-same_binary64_3051 sinh---cosh_binary64_2998 sinh-+-cosh_binary64_2997 sinh-cosh_binary64_2996 tanh-def-c_binary64_2995 tanh-def-b_binary64_2994 tanh-def-a_binary64_2993 cosh-def_binary64_2992 sinh-def_binary64_2991 tan-neg_binary64_2938 cos-neg_binary64_2937 sin-neg_binary64_2936 tan-0_binary64_2935 cos-0_binary64_2934 sin-0_binary64_2933 hang-m-tan_binary64_2932 hang-p-tan_binary64_2931 hang-m0-tan_binary64_2930 hang-p0-tan_binary64_2929 hang-0m-tan_binary64_2928 hang-0p-tan_binary64_2927 tan-+PI/2_binary64_2926 tan-+PI_binary64_2925 tan-PI_binary64_2924 tan-PI/3_binary64_2923 tan-PI/4_binary64_2922 tan-PI/6_binary64_2921 cos-+PI/2_binary64_2920 cos-+PI_binary64_2919 cos-PI_binary64_2918 cos-PI/2_binary64_2917 cos-PI/3_binary64_2916 cos-PI/4_binary64_2915 cos-PI/6_binary64_2914 sin-+PI/2_binary64_2913 sin-+PI_binary64_2912 sin-PI_binary64_2911 sin-PI/2_binary64_2910 sin-PI/3_binary64_2909 sin-PI/4_binary64_2908 sin-PI/6_binary64_2907 sub-1-sin_binary64_2906 sub-1-cos_binary64_2905 -1-add-sin_binary64_2904 -1-add-cos_binary64_2903 1-sub-sin_binary64_2902 1-sub-cos_binary64_2901 cos-sin-sum_binary64_2900 log-E_binary64_2896 log-rec_binary64_2894 log-div_binary64_2893 pow-base-0_binary64_2890 unpow1/3_binary64_2873 exp-to-pow_binary64_2868 pow-base-1_binary64_2866 unpow0_binary64_2865 unpow-1_binary64_2863 exp-lft-cube_binary64_2862 exp-cbrt_binary64_2860 exp-sqrt_binary64_2859 div-exp_binary64_2857 rec-exp_binary64_2856 exp-diff_binary64_2854 exp-neg_binary64_2853 e-exp-1_binary64_2851 exp-1-e_binary64_2849 exp-0_binary64_2848 rem-log-exp_binary64_2847 rem-exp-log_binary64_2846 cube-div_binary64_2835 cube-neg_binary64_2833 rem-3cbrt-rft_binary64_2832 rem-3cbrt-lft_binary64_2831 rem-cbrt-cube_binary64_2830 rem-cube-cbrt_binary64_2829 sqr-abs_binary64_2821 sqr-neg_binary64_2820 rem-square-sqrt_binary64_2818 div-sub_binary64_2811 mul-1-neg_binary64_2798 /-rgt-identity_binary64_2797 *-rgt-identity_binary64_2796 *-lft-identity_binary64_2795 --rgt-identity_binary64_2792 div0_binary64_2787 *-inverses_binary64_2786 +-inverses_binary64_2785 lft-mult-inverse_binary64_2784 rgt-mult-inverse_binary64_2783 remove-double-div_binary64_2782 difference-of-sqr--1_binary64_2777 difference-of-sqr-1_binary64_2776 cancel-sign-sub_binary64_2771 distribute-neg-frac_binary64_2770 distribute-frac-neg_binary64_2769 distribute-neg-out_binary64_2768 distribute-rgt1-in_binary64_2762 distribute-lft1-in_binary64_2761 associate-*l/_binary64_2749 associate--r-_binary64_2745 associate--l-_binary64_2744
Counts
23 → 66
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
033367
1113280
2392274
31590274
44346274
55308274

prune62.0ms (3.1%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New66066
Fresh011
Picked011
Done011
Total66369
Error
0b
Counts
69 → 3
Compiler

Compiled 1639 to 741 computations (54.8% saved)

localize7.0ms (0.3%)

Local error

Found 1 expressions with local error:

0.0b
(*.f64 a (+.f64 (*.f64 b 2) a))

rewrite26.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0b
Rules
add-sqr-sqrt_binary64_2828
pow1_binary64_2867 add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842 add-cube-cbrt_binary64_2841 *-un-lft-identity_binary64_2806 associate-*l*_binary64_2747 associate-*r*_binary64_2746
associate-*r/_binary64_2748
pow-prod-down_binary64_2877 prod-exp_binary64_2855 add-log-exp_binary64_2845 cbrt-unprod_binary64_2839 unswap-sqr_binary64_2774 distribute-rgt-in_binary64_2756 distribute-lft-in_binary64_2755 flip3-+_binary64_2809 flip-+_binary64_2780 *-commutative_binary64_2737
Counts
1 → 22
Calls

1 calls:

7.0ms
(*.f64 a (+.f64 (*.f64 b 2) a))
Compiler

Compiled 406 to 223 computations (45.1% saved)

series103.0ms (5.1%)

Error
0b
Counts
1 → 12
Calls

1 calls:

95.0ms
(*.f64 a (+.f64 (*.f64 b 2) a))
Compiler

Compiled 330 to 217 computations (34.2% saved)

simplify78.0ms (3.9%)

Algorithm
egg-herbie
Rules
512×unswap-sqr_binary64_2774
508×distribute-rgt-out_binary64_2759
414×associate-*l*_binary64_2747
325×associate-+r+_binary64_2738
306×associate-*r*_binary64_2746
281×associate-+l+_binary64_2739
254×distribute-rgt-in_binary64_2756
249×distribute-lft-in_binary64_2755
106×sqr-pow_binary64_2778
93×exp-prod_binary64_2858
88×*-commutative_binary64_2737
81×distribute-rgt-neg-in_binary64_2764
75×rem-sqrt-square_binary64_2819
73×distribute-lft-out_binary64_2757
71×+-commutative_binary64_2736
63×distribute-lft-neg-in_binary64_2763
48×neg-mul-1_binary64_2802
46×associate-/l*_binary64_2751
38×swap-sqr_binary64_2773
26×*-rgt-identity_binary64_2796 cancel-sign-sub-inv_binary64_2772
25×*-lft-identity_binary64_2795 pow-sqr_binary64_2779
22×distribute-neg-in_binary64_2767
19×log-prod_binary64_2892 cube-prod_binary64_2834
17×neg-sub0_binary64_2801
14×pow-plus_binary64_2869 unsub-neg_binary64_2800 distribute-lft-neg-out_binary64_2765
12×sub-neg_binary64_2799
11×unpow3_binary64_2872 unpow1/2_binary64_2870
10×cube-unmult_binary64_2843 distribute-rgt1-in_binary64_2762
distribute-rgt-neg-out_binary64_2766
exp-sum_binary64_2852 associate-/l/_binary64_2753
difference-of-squares_binary64_2775
prod-exp_binary64_2855
exp-lft-sqr_binary64_2861 count-2_binary64_2754 associate-/r*_binary64_2750 associate--r+_binary64_2742
log-pow_binary64_2895 cube-mult_binary64_2836
times-frac_binary64_2812 associate-/r/_binary64_2752 associate-*r/_binary64_2748
sub0-neg_binary64_2793 +-rgt-identity_binary64_2791 distribute-rgt-out--_binary64_2760 associate-+l-_binary64_2741 associate-+r-_binary64_2740
unpow2_binary64_2871 unpow1_binary64_2864 1-exp_binary64_2850 exp-1-e_binary64_2849 distribute-lft1-in_binary64_2761
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_3069 erf-erfc_binary64_3068 erf-odd_binary64_3067 if-if-and-not_binary64_3066 if-if-and_binary64_3065 if-if-or-not_binary64_3064 if-if-or_binary64_3063 if-not_binary64_3062 if-same_binary64_3061 if-false_binary64_3060 if-true_binary64_3059 not-gte_binary64_3058 not-lte_binary64_3057 not-gt_binary64_3056 not-lt_binary64_3055 gte-same_binary64_3054 lte-same_binary64_3053 gt-same_binary64_3052 lt-same_binary64_3051 sinh---cosh_binary64_2998 sinh-+-cosh_binary64_2997 sinh-cosh_binary64_2996 tanh-def-c_binary64_2995 tanh-def-b_binary64_2994 tanh-def-a_binary64_2993 cosh-def_binary64_2992 sinh-def_binary64_2991 tan-neg_binary64_2938 cos-neg_binary64_2937 sin-neg_binary64_2936 tan-0_binary64_2935 cos-0_binary64_2934 sin-0_binary64_2933 hang-m-tan_binary64_2932 hang-p-tan_binary64_2931 hang-m0-tan_binary64_2930 hang-p0-tan_binary64_2929 hang-0m-tan_binary64_2928 hang-0p-tan_binary64_2927 tan-+PI/2_binary64_2926 tan-+PI_binary64_2925 tan-PI_binary64_2924 tan-PI/3_binary64_2923 tan-PI/4_binary64_2922 tan-PI/6_binary64_2921 cos-+PI/2_binary64_2920 cos-+PI_binary64_2919 cos-PI_binary64_2918 cos-PI/2_binary64_2917 cos-PI/3_binary64_2916 cos-PI/4_binary64_2915 cos-PI/6_binary64_2914 sin-+PI/2_binary64_2913 sin-+PI_binary64_2912 sin-PI_binary64_2911 sin-PI/2_binary64_2910 sin-PI/3_binary64_2909 sin-PI/4_binary64_2908 sin-PI/6_binary64_2907 sub-1-sin_binary64_2906 sub-1-cos_binary64_2905 -1-add-sin_binary64_2904 -1-add-cos_binary64_2903 1-sub-sin_binary64_2902 1-sub-cos_binary64_2901 cos-sin-sum_binary64_2900 log-E_binary64_2896 log-rec_binary64_2894 log-div_binary64_2893 pow-base-0_binary64_2890 unpow1/3_binary64_2873 exp-to-pow_binary64_2868 pow-base-1_binary64_2866 unpow0_binary64_2865 unpow-1_binary64_2863 exp-lft-cube_binary64_2862 exp-cbrt_binary64_2860 exp-sqrt_binary64_2859 div-exp_binary64_2857 rec-exp_binary64_2856 exp-diff_binary64_2854 exp-neg_binary64_2853 e-exp-1_binary64_2851 exp-0_binary64_2848 rem-log-exp_binary64_2847 rem-exp-log_binary64_2846 cube-div_binary64_2835 cube-neg_binary64_2833 rem-3cbrt-rft_binary64_2832 rem-3cbrt-lft_binary64_2831 rem-cbrt-cube_binary64_2830 rem-cube-cbrt_binary64_2829 sqr-abs_binary64_2821 sqr-neg_binary64_2820 rem-square-sqrt_binary64_2818 div-sub_binary64_2811 mul-1-neg_binary64_2798 /-rgt-identity_binary64_2797 remove-double-neg_binary64_2794 --rgt-identity_binary64_2792 +-lft-identity_binary64_2790 mul0-rgt_binary64_2789 mul0-lft_binary64_2788 div0_binary64_2787 *-inverses_binary64_2786 +-inverses_binary64_2785 lft-mult-inverse_binary64_2784 rgt-mult-inverse_binary64_2783 remove-double-div_binary64_2782 difference-of-sqr--1_binary64_2777 difference-of-sqr-1_binary64_2776 cancel-sign-sub_binary64_2771 distribute-neg-frac_binary64_2770 distribute-frac-neg_binary64_2769 distribute-neg-out_binary64_2768 distribute-lft-out--_binary64_2758 associate-*l/_binary64_2749 associate--r-_binary64_2745 associate--l-_binary64_2744 associate--l+_binary64_2743
Counts
34 → 73
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
048421
1146379
2491379
31551379
43160379
54853379
64942379

prune53.0ms (2.6%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New73073
Fresh000
Picked011
Done022
Total73376
Error
0b
Counts
76 → 3
Compiler

Compiled 1363 to 549 computations (59.7% saved)

regimes139.0ms (6.9%)

Accuracy

Total 0.0b remaining (98.4%)

Threshold costs 0.0b (98.4%)

Compiler

Compiled 1116 to 752 computations (32.6% saved)

bsearch0.0ms (0%)

simplify4.0ms (0.2%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_2737 +-commutative_binary64_2736
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 if-if-and-not_binary64_3066 if-if-and_binary64_3065 if-if-or-not_binary64_3064 if-if-or_binary64_3063 if-not_binary64_3062 if-same_binary64_3061 if-false_binary64_3060 if-true_binary64_3059 tan-0_binary64_2935 cos-0_binary64_2934 sin-0_binary64_2933 unpow1_binary64_2864 e-exp-1_binary64_2851 1-exp_binary64_2850 exp-1-e_binary64_2849 exp-0_binary64_2848 sqr-abs_binary64_2821 sqr-neg_binary64_2820 neg-mul-1_binary64_2802 neg-sub0_binary64_2801 unsub-neg_binary64_2800 sub-neg_binary64_2799 mul-1-neg_binary64_2798 /-rgt-identity_binary64_2797 *-rgt-identity_binary64_2796 *-lft-identity_binary64_2795 remove-double-neg_binary64_2794 sub0-neg_binary64_2793 --rgt-identity_binary64_2792 +-rgt-identity_binary64_2791 +-lft-identity_binary64_2790 cancel-sign-sub-inv_binary64_2772 cancel-sign-sub_binary64_2771 distribute-neg-frac_binary64_2770 distribute-frac-neg_binary64_2769 distribute-neg-out_binary64_2768 distribute-neg-in_binary64_2767 distribute-rgt-neg-out_binary64_2766 distribute-lft-neg-out_binary64_2765 distribute-rgt-neg-in_binary64_2764 distribute-lft-neg-in_binary64_2763
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0716
11116
21116

end0.0ms (0%)

sample896.0ms (44.6%)

Algorithm
intervals
Results
185.0ms8000×pre128true
133.0ms8000×body128valid
Compiler

Compiled 297 to 197 computations (33.7% saved)

Profiling

Loading profile data...