Details

Time bar (total: 8.7s)

analyze367.0ms (4.2%)

Algorithm
search
egg-herbie
Rules
511×unsub-neg_binary64_2800
501×sub-neg_binary64_2799
352×associate--l+_binary64_2743
328×associate-+l+_binary64_2739
312×neg-mul-1_binary64_2802
308×neg-sub0_binary64_2801
296×associate-+r+_binary64_2738
251×associate-*l*_binary64_2747
245×distribute-rgt-neg-in_binary64_2764
243×distribute-rgt-in_binary64_2756
232×distribute-rgt-out_binary64_2759
217×associate-*r*_binary64_2746
205×distribute-neg-in_binary64_2767
185×distribute-lft-in_binary64_2755
179×*-commutative_binary64_2737
144×associate-+l-_binary64_2741
131×+-commutative_binary64_2736
101×distribute-lft-neg-out_binary64_2765
92×associate-+r-_binary64_2740
88×distribute-rgt-neg-out_binary64_2766
84×unswap-sqr_binary64_2774
81×cancel-sign-sub-inv_binary64_2772
58×associate--r+_binary64_2742
40×*-rgt-identity_binary64_2796
36×cancel-sign-sub_binary64_2771
28×distribute-lft-out_binary64_2757
27×*-lft-identity_binary64_2795
23×remove-double-neg_binary64_2794
22×associate--r-_binary64_2745
20×sub0-neg_binary64_2793 sqr-pow_binary64_2778 distribute-lft-neg-in_binary64_2763
16×+-rgt-identity_binary64_2791
10×pow-plus_binary64_2869
mul0-rgt_binary64_2789 mul0-lft_binary64_2788 difference-of-sqr--1_binary64_2777
cube-unmult_binary64_2843 difference-of-squares_binary64_2775 swap-sqr_binary64_2773 distribute-lft1-in_binary64_2761
unpow2_binary64_2871 rem-sqrt-square_binary64_2819 difference-of-sqr-1_binary64_2776
unpow3_binary64_2872 mul-1-neg_binary64_2798
cube-prod_binary64_2834 --rgt-identity_binary64_2792 distribute-neg-out_binary64_2768 distribute-rgt1-in_binary64_2762
unpow1/2_binary64_2870 unpow1_binary64_2864 1-exp_binary64_2850 pow-sqr_binary64_2779
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 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 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 exp-1-e_binary64_2849 exp-0_binary64_2848 rem-log-exp_binary64_2847 rem-exp-log_binary64_2846 cube-mult_binary64_2836 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 times-frac_binary64_2812 div-sub_binary64_2811 /-rgt-identity_binary64_2797 +-lft-identity_binary64_2790 div0_binary64_2787 *-inverses_binary64_2786 +-inverses_binary64_2785 lft-mult-inverse_binary64_2784 rgt-mult-inverse_binary64_2783 remove-double-div_binary64_2782 distribute-neg-frac_binary64_2770 distribute-frac-neg_binary64_2769 distribute-rgt-out--_binary64_2760 distribute-lft-out--_binary64_2758 count-2_binary64_2754 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--l-_binary64_2744
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02986
19086
225886
366086
4191286
5340586
6457386
7499486
8500086
9492386
022
122
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
25%74.9%0.1%5
25%68.7%6.3%6
25%53.1%22%7
25%46.8%28.2%8
25%33.6%41.5%9
28.1%18%54%10
31.6%12.1%56.3%11
33.4%5.9%60.8%12
35.2%3.8%61%13
36.1%2.9%61%14
Compiler

Compiled 30 to 20 computations (33.3% saved)

sample28.0ms (0.3%)

Algorithm
intervals
Results
17.0ms256×body128valid
Compiler

Compiled 59 to 41 computations (30.5% saved)

simplify82.0ms (0.9%)

Algorithm
egg-herbie
Rules
705×unsub-neg_binary64_2800
556×cancel-sign-sub-inv_binary64_2772
344×+-commutative_binary64_2736
342×distribute-rgt-in_binary64_2756
317×sub-neg_binary64_2799
271×associate-*l*_binary64_2747
266×distribute-rgt-neg-in_binary64_2764
248×distribute-lft-in_binary64_2755
233×neg-sub0_binary64_2801
226×neg-mul-1_binary64_2802
213×associate-*r*_binary64_2746
206×distribute-lft-neg-in_binary64_2763
185×associate--l+_binary64_2743
173×associate-+l+_binary64_2739
162×unswap-sqr_binary64_2774
155×distribute-rgt-out_binary64_2759
153×distribute-neg-in_binary64_2767
151×associate-+r+_binary64_2738
102×*-commutative_binary64_2737
76×distribute-lft-out_binary64_2757
73×associate-+l-_binary64_2741
64×distribute-lft-neg-out_binary64_2765
48×associate-+r-_binary64_2740
45×difference-of-sqr--1_binary64_2777
44×remove-double-neg_binary64_2794
43×distribute-rgt-neg-out_binary64_2766
41×*-rgt-identity_binary64_2796
38×associate--r+_binary64_2742
31×sqr-pow_binary64_2778
29×*-lft-identity_binary64_2795
16×cube-prod_binary64_2834
13×pow-plus_binary64_2869
11×sub0-neg_binary64_2793 associate--r-_binary64_2745
mul-1-neg_binary64_2798 +-rgt-identity_binary64_2791 distribute-rgt-out--_binary64_2760
mul0-rgt_binary64_2789 mul0-lft_binary64_2788 distribute-lft1-in_binary64_2761
unpow3_binary64_2872 cube-unmult_binary64_2843 swap-sqr_binary64_2773 distribute-rgt1-in_binary64_2762
unpow2_binary64_2871 sqr-neg_binary64_2820 difference-of-sqr-1_binary64_2776 distribute-lft-out--_binary64_2758
difference-of-squares_binary64_2775
unpow1_binary64_2864 cube-neg_binary64_2833 rem-sqrt-square_binary64_2819 pow-sqr_binary64_2779
cube-mult_binary64_2836
unpow1/2_binary64_2870 1-exp_binary64_2850 --rgt-identity_binary64_2792 cancel-sign-sub_binary64_2771 distribute-neg-out_binary64_2768
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 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 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 exp-1-e_binary64_2849 exp-0_binary64_2848 rem-log-exp_binary64_2847 rem-exp-log_binary64_2846 cube-div_binary64_2835 rem-3cbrt-rft_binary64_2832 rem-3cbrt-lft_binary64_2831 rem-cbrt-cube_binary64_2830 rem-cube-cbrt_binary64_2829 sqr-abs_binary64_2821 rem-square-sqrt_binary64_2818 times-frac_binary64_2812 div-sub_binary64_2811 /-rgt-identity_binary64_2797 +-lft-identity_binary64_2790 div0_binary64_2787 *-inverses_binary64_2786 +-inverses_binary64_2785 lft-mult-inverse_binary64_2784 rgt-mult-inverse_binary64_2783 remove-double-div_binary64_2782 distribute-neg-frac_binary64_2770 distribute-frac-neg_binary64_2769 count-2_binary64_2754 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--l-_binary64_2744
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01943
15543
215043
338943
4108343
5223143
6432843
7471443
8491543

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
0.2b
Counts
2 → 1
Compiler

Compiled 58 to 38 computations (34.5% saved)

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))))
0.0b
(*.f64 (*.f64 a a) (-.f64 1 a))
0.3b
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
0.8b
(*.f64 (*.f64 b b) (+.f64 3 a))

rewrite261.0ms (3%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
15×pow1_binary64_2867 add-exp-log_binary64_2844 add-sqr-sqrt_binary64_2828 *-un-lft-identity_binary64_2806
14×add-cbrt-cube_binary64_2842
10×add-cube-cbrt_binary64_2841 associate-*r*_binary64_2746
pow-prod-down_binary64_2877 prod-exp_binary64_2855 add-log-exp_binary64_2845 cbrt-unprod_binary64_2839 distribute-rgt-in_binary64_2756 distribute-lft-in_binary64_2755 cancel-sign-sub-inv_binary64_2772
associate-*r/_binary64_2748
unpow-prod-down_binary64_2885 pow-unpow_binary64_2883
unswap-sqr_binary64_2774 flip3-+_binary64_2809 flip-+_binary64_2780 associate-*l*_binary64_2747 *-commutative_binary64_2737 sub-neg_binary64_2799 difference-of-squares_binary64_2775 associate-+r+_binary64_2738
distribute-lft-out_binary64_2757 pow-pow_binary64_2878 pow-to-exp_binary64_2875 pow-exp_binary64_2874 unpow2_binary64_2871 sqr-pow_binary64_2778 flip3--_binary64_2810 flip--_binary64_2781 distribute-lft-out--_binary64_2758 sum-log_binary64_2897 +-commutative_binary64_2736
Counts
4 → 87
Calls

4 calls:

10.0ms
(*.f64 (*.f64 a a) (-.f64 1 a))
9.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))))
9.0ms
(*.f64 (*.f64 b b) (+.f64 3 a))
5.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
Compiler

Compiled 3139 to 1575 computations (49.8% saved)

series1.0s (11.7%)

Error
0.0b
Counts
4 → 48
Calls

4 calls:

608.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))))
177.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
118.0ms
(*.f64 (*.f64 b b) (+.f64 3 a))
64.0ms
(*.f64 (*.f64 a a) (-.f64 1 a))
Compiler

Compiled 2601 to 2008 computations (22.8% saved)

simplify141.0ms (1.6%)

Algorithm
egg-herbie
Rules
535×associate-+l+_binary64_2739
345×associate-+r+_binary64_2738
267×associate-*l*_binary64_2747
224×exp-prod_binary64_2858
217×associate-*r*_binary64_2746 +-commutative_binary64_2736
212×cancel-sign-sub-inv_binary64_2772
148×associate--l+_binary64_2743
139×neg-mul-1_binary64_2802
138×neg-sub0_binary64_2801
136×*-commutative_binary64_2737
116×distribute-rgt-out_binary64_2759
107×distribute-rgt-in_binary64_2756
106×exp-sum_binary64_2852
101×distribute-lft-in_binary64_2755
99×log-prod_binary64_2892
97×unswap-sqr_binary64_2774
69×distribute-rgt-neg-in_binary64_2764
66×sqr-pow_binary64_2778
64×distribute-lft-out_binary64_2757
59×cube-prod_binary64_2834
58×distribute-lft-neg-in_binary64_2763
51×associate--r+_binary64_2742
45×distribute-lft-neg-out_binary64_2765
43×sub-neg_binary64_2799 distribute-rgt-neg-out_binary64_2766
39×distribute-neg-in_binary64_2767
29×log-pow_binary64_2895
28×associate-+r-_binary64_2740
27×*-lft-identity_binary64_2795
26×associate-+l-_binary64_2741
22×exp-diff_binary64_2854 *-rgt-identity_binary64_2796
20×swap-sqr_binary64_2773 distribute-rgt-out--_binary64_2760
18×cube-unmult_binary64_2843
17×pow-plus_binary64_2869
16×unsub-neg_binary64_2800
15×unpow3_binary64_2872 rem-sqrt-square_binary64_2819
13×exp-neg_binary64_2853
12×pow-sqr_binary64_2779
10×cube-mult_binary64_2836
unpow1/2_binary64_2870
unpow2_binary64_2871 div-sub_binary64_2811 distribute-lft-out--_binary64_2758
unpow1_binary64_2864
difference-of-squares_binary64_2775
associate-/l/_binary64_2753 associate-*r/_binary64_2748
exp-lft-cube_binary64_2862 rem-square-sqrt_binary64_2818 count-2_binary64_2754
prod-exp_binary64_2855 1-exp_binary64_2850 exp-1-e_binary64_2849 rem-3cbrt-rft_binary64_2832 rem-3cbrt-lft_binary64_2831 mul-1-neg_binary64_2798 distribute-rgt1-in_binary64_2762 associate-/r/_binary64_2752 associate-/l*_binary64_2751
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-sqr_binary64_2861 exp-cbrt_binary64_2860 exp-sqrt_binary64_2859 div-exp_binary64_2857 rec-exp_binary64_2856 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 sqr-neg_binary64_2820 times-frac_binary64_2812 /-rgt-identity_binary64_2797 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 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-lft1-in_binary64_2761 associate-/r*_binary64_2750 associate-*l/_binary64_2749 associate--r-_binary64_2745 associate--l-_binary64_2744
Counts
135 → 110
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02122797
15832486
218662390
342532386
449802386
549622386

prune172.0ms (2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1073110
Fresh000
Picked101
Done000
Total1083111
Error
0.0b
Counts
111 → 3
Compiler

Compiled 2372 to 1252 computations (47.2% saved)

localize23.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 (*.f64 a a) (-.f64 1 a))
0.7b
(*.f64 a (*.f64 b b))
0.8b
(*.f64 (*.f64 b b) (+.f64 3 a))
1.0b
(*.f64 a (*.f64 a (*.f64 b b)))

rewrite290.0ms (3.3%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
28×pow1_binary64_2867 add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842
16×add-sqr-sqrt_binary64_2828
15×pow-prod-down_binary64_2877 prod-exp_binary64_2855 cbrt-unprod_binary64_2839 *-un-lft-identity_binary64_2806
12×associate-*r*_binary64_2746
10×add-cube-cbrt_binary64_2841
associate-*l*_binary64_2747
cancel-sign-sub-inv_binary64_2772
distribute-rgt-in_binary64_2756 distribute-lft-in_binary64_2755
add-log-exp_binary64_2845 *-commutative_binary64_2737 associate-*r/_binary64_2748
unswap-sqr_binary64_2774
sub-neg_binary64_2799 difference-of-squares_binary64_2775
flip3-+_binary64_2809 flip-+_binary64_2780 distribute-lft-out_binary64_2757 flip3--_binary64_2810 flip--_binary64_2781 distribute-lft-out--_binary64_2758
Counts
4 → 96
Calls

4 calls:

10.0ms
(*.f64 (*.f64 a a) (-.f64 1 a))
9.0ms
(*.f64 (*.f64 b b) (+.f64 3 a))
8.0ms
(*.f64 a (*.f64 a (*.f64 b b)))
6.0ms
(*.f64 a (*.f64 b b))
Compiler

Compiled 3667 to 1977 computations (46.1% saved)

series420.0ms (4.8%)

Error
0.0b
Counts
4 → 27
Calls

4 calls:

122.0ms
(*.f64 (*.f64 b b) (+.f64 3 a))
107.0ms
(*.f64 a (*.f64 a (*.f64 b b)))
94.0ms
(*.f64 a (*.f64 b b))
73.0ms
(*.f64 (*.f64 a a) (-.f64 1 a))
Compiler

Compiled 2113 to 1560 computations (26.2% saved)

simplify126.0ms (1.4%)

Algorithm
egg-herbie
Rules
415×distribute-rgt-in_binary64_2756
398×distribute-lft-in_binary64_2755
319×associate-*l*_binary64_2747
267×exp-prod_binary64_2858 associate-*r*_binary64_2746
216×unsub-neg_binary64_2800
214×distribute-rgt-neg-out_binary64_2766
208×distribute-lft-neg-out_binary64_2765
156×unswap-sqr_binary64_2774
141×*-commutative_binary64_2737
126×sqr-pow_binary64_2778
122×log-prod_binary64_2892
89×cube-prod_binary64_2834
70×distribute-rgt-neg-in_binary64_2764
68×*-lft-identity_binary64_2795
65×swap-sqr_binary64_2773
64×*-rgt-identity_binary64_2796
60×distribute-lft-neg-in_binary64_2763
54×exp-neg_binary64_2853
53×neg-mul-1_binary64_2802 neg-sub0_binary64_2801
43×exp-sum_binary64_2852
36×exp-diff_binary64_2854
33×unpow3_binary64_2872
31×sub-neg_binary64_2799
29×pow-sqr_binary64_2779
28×+-commutative_binary64_2736
27×cube-mult_binary64_2836
26×associate-+l+_binary64_2739
25×cancel-sign-sub-inv_binary64_2772 associate-+r+_binary64_2738
17×pow-plus_binary64_2869
15×cube-unmult_binary64_2843
13×log-pow_binary64_2895
12×mul0-rgt_binary64_2789 mul0-lft_binary64_2788
11×unpow1/2_binary64_2870 distribute-rgt-out_binary64_2759
difference-of-squares_binary64_2775 associate-/l*_binary64_2751
div-sub_binary64_2811 sub0-neg_binary64_2793 associate-+l-_binary64_2741
rem-sqrt-square_binary64_2819 distribute-neg-in_binary64_2767 distribute-lft-out_binary64_2757
difference-of-sqr-1_binary64_2776 distribute-rgt-out--_binary64_2760 associate-+r-_binary64_2740
unpow2_binary64_2871 unpow1_binary64_2864 exp-lft-cube_binary64_2862 +-rgt-identity_binary64_2791 count-2_binary64_2754
prod-exp_binary64_2855 1-exp_binary64_2850 exp-1-e_binary64_2849 rem-3cbrt-lft_binary64_2831 sqr-neg_binary64_2820 rem-square-sqrt_binary64_2818 mul-1-neg_binary64_2798 distribute-rgt1-in_binary64_2762
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-sqr_binary64_2861 exp-cbrt_binary64_2860 exp-sqrt_binary64_2859 div-exp_binary64_2857 rec-exp_binary64_2856 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-cbrt-cube_binary64_2830 rem-cube-cbrt_binary64_2829 sqr-abs_binary64_2821 times-frac_binary64_2812 /-rgt-identity_binary64_2797 remove-double-neg_binary64_2794 --rgt-identity_binary64_2792 +-lft-identity_binary64_2790 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 cancel-sign-sub_binary64_2771 distribute-neg-frac_binary64_2770 distribute-frac-neg_binary64_2769 distribute-neg-out_binary64_2768 distribute-lft1-in_binary64_2761 distribute-lft-out--_binary64_2758 associate-/l/_binary64_2753 associate-/r/_binary64_2752 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
Counts
123 → 101
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01531537
13921286
213261251
333141229
445651229
549891229
649291229

prune150.0ms (1.7%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1010101
Fresh022
Picked011
Done000
Total1013104
Error
0.0b
Counts
104 → 3
Compiler

Compiled 2100 to 1191 computations (43.3% saved)

localize23.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.8b
(*.f64 (+.f64 a 3) (*.f64 b b))
26.4b
(cbrt.f64 (*.f64 (+.f64 a 3) (*.f64 b b)))
26.4b
(cbrt.f64 (*.f64 (+.f64 a 3) (*.f64 b b)))
26.4b
(cbrt.f64 (*.f64 (+.f64 a 3) (*.f64 b b)))

rewrite214.0ms (2.5%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
pow1_binary64_2867 add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842
associate-*l/_binary64_2749
*-un-lft-identity_binary64_2806
cbrt-div_binary64_2838 add-sqr-sqrt_binary64_2828
add-cube-cbrt_binary64_2841
add-log-exp_binary64_2845 flip3-+_binary64_2809 flip-+_binary64_2780 associate-*l*_binary64_2747
pow1/3_binary64_2888 cbrt-prod_binary64_2837 pow-prod-down_binary64_2877 prod-exp_binary64_2855 cbrt-unprod_binary64_2839
unswap-sqr_binary64_2774 distribute-lft-out_binary64_2757 associate-*r*_binary64_2746 *-commutative_binary64_2737
Counts
4 → 55
Calls

4 calls:

9.0ms
(*.f64 (+.f64 a 3) (*.f64 b b))
7.0ms
(cbrt.f64 (*.f64 (+.f64 a 3) (*.f64 b b)))
7.0ms
(cbrt.f64 (*.f64 (+.f64 a 3) (*.f64 b b)))
7.0ms
(cbrt.f64 (*.f64 (+.f64 a 3) (*.f64 b b)))
Compiler

Compiled 2784 to 1519 computations (45.4% saved)

series895.0ms (10.3%)

Error
0.0b
Counts
4 → 27
Calls

4 calls:

238.0ms
(cbrt.f64 (*.f64 (+.f64 a 3) (*.f64 b b)))
237.0ms
(cbrt.f64 (*.f64 (+.f64 a 3) (*.f64 b b)))
220.0ms
(cbrt.f64 (*.f64 (+.f64 a 3) (*.f64 b b)))
132.0ms
(*.f64 (+.f64 a 3) (*.f64 b b))
Compiler

Compiled 3879 to 2584 computations (33.4% saved)

simplify95.0ms (1.1%)

Algorithm
egg-herbie
Rules
514×associate-*l*_binary64_2747
426×associate-*r*_binary64_2746
254×exp-prod_binary64_2858
245×associate-+r+_binary64_2738
224×distribute-rgt-in_binary64_2756
220×distribute-lft-in_binary64_2755
197×unswap-sqr_binary64_2774
194×associate-+l+_binary64_2739
144×prod-exp_binary64_2855
138×exp-sum_binary64_2852
125×*-commutative_binary64_2737
124×log-prod_binary64_2892
89×distribute-rgt-out_binary64_2759
86×+-commutative_binary64_2736
84×sqr-pow_binary64_2778
76×associate--r+_binary64_2742
71×associate-+r-_binary64_2740
68×sub-neg_binary64_2799
63×unsub-neg_binary64_2800
61×distribute-lft-out_binary64_2757
51×log-pow_binary64_2895
48×associate--r-_binary64_2745
47×associate--l+_binary64_2743
46×associate-+l-_binary64_2741
40×exp-to-pow_binary64_2868 exp-diff_binary64_2854
32×cancel-sign-sub-inv_binary64_2772
30×associate-*l/_binary64_2749
29×div-sub_binary64_2811
28×associate-/l*_binary64_2751
27×neg-sub0_binary64_2801
25×swap-sqr_binary64_2773 distribute-neg-in_binary64_2767
23×log-div_binary64_2893
22×unpow3_binary64_2872 neg-mul-1_binary64_2802 pow-sqr_binary64_2779 distribute-rgt-neg-in_binary64_2764
19×distribute-rgt-neg-out_binary64_2766 distribute-lft-neg-out_binary64_2765 associate-*r/_binary64_2748
18×pow-plus_binary64_2869 distribute-lft-neg-in_binary64_2763
17×cube-prod_binary64_2834
16×unpow1/3_binary64_2873
15×distribute-neg-out_binary64_2768
14×associate--l-_binary64_2744
10×rem-exp-log_binary64_2846 cube-unmult_binary64_2843
exp-neg_binary64_2853
exp-lft-sqr_binary64_2861 associate-/r*_binary64_2750
log-rec_binary64_2894 associate-/l/_binary64_2753
sub0-neg_binary64_2793 +-rgt-identity_binary64_2791 count-2_binary64_2754
unpow2_binary64_2871 rem-sqrt-square_binary64_2819 --rgt-identity_binary64_2792
div-exp_binary64_2857 cube-mult_binary64_2836 remove-double-neg_binary64_2794 distribute-frac-neg_binary64_2769 distribute-rgt-out--_binary64_2760
unpow1_binary64_2864 exp-lft-cube_binary64_2862 distribute-lft-out--_binary64_2758
unpow1/2_binary64_2870 rec-exp_binary64_2856 1-exp_binary64_2850 cube-div_binary64_2835 rem-3cbrt-lft_binary64_2831 mul-1-neg_binary64_2798 +-inverses_binary64_2785 cancel-sign-sub_binary64_2771 associate-/r/_binary64_2752
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 pow-base-0_binary64_2890 pow-base-1_binary64_2866 unpow0_binary64_2865 unpow-1_binary64_2863 exp-cbrt_binary64_2860 exp-sqrt_binary64_2859 e-exp-1_binary64_2851 exp-1-e_binary64_2849 exp-0_binary64_2848 rem-log-exp_binary64_2847 cube-neg_binary64_2833 rem-3cbrt-rft_binary64_2832 rem-cbrt-cube_binary64_2830 rem-cube-cbrt_binary64_2829 sqr-abs_binary64_2821 sqr-neg_binary64_2820 rem-square-sqrt_binary64_2818 times-frac_binary64_2812 /-rgt-identity_binary64_2797 *-rgt-identity_binary64_2796 *-lft-identity_binary64_2795 +-lft-identity_binary64_2790 mul0-rgt_binary64_2789 mul0-lft_binary64_2788 div0_binary64_2787 *-inverses_binary64_2786 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 difference-of-squares_binary64_2775 distribute-neg-frac_binary64_2770 distribute-rgt1-in_binary64_2762 distribute-lft1-in_binary64_2761
Counts
82 → 70
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0981220
12321105
26111074
320721025
444321025
549601025

prune149.0ms (1.7%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New70070
Fresh011
Picked011
Done011
Total70373
Error
0.0b
Counts
73 → 3
Compiler

Compiled 2320 to 1264 computations (45.5% saved)

localize23.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 (*.f64 a a) (-.f64 1 a))
0.8b
(*.f64 (*.f64 b b) (+.f64 3 a))
3.6b
(exp.f64 (*.f64 2 (log.f64 (+.f64 (*.f64 b b) (*.f64 a a)))))
9.6b
(log.f64 (+.f64 (*.f64 b b) (*.f64 a a)))

rewrite236.0ms (2.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
16×add-sqr-sqrt_binary64_2828 *-un-lft-identity_binary64_2806
15×pow1_binary64_2867 add-exp-log_binary64_2844
14×add-cbrt-cube_binary64_2842
11×add-cube-cbrt_binary64_2841
10×associate-*r*_binary64_2746
log-prod_binary64_2892
distribute-rgt-in_binary64_2756 distribute-lft-in_binary64_2755
add-log-exp_binary64_2845 exp-sum_binary64_2852 pow-prod-down_binary64_2877 prod-exp_binary64_2855 cbrt-unprod_binary64_2839 cancel-sign-sub-inv_binary64_2772
associate-*r/_binary64_2748
flip3-+_binary64_2809 log-div_binary64_2893 flip-+_binary64_2780 unswap-sqr_binary64_2774 associate-*l*_binary64_2747 *-commutative_binary64_2737 sub-neg_binary64_2799 difference-of-squares_binary64_2775
log-pow_binary64_2895 rem-log-exp_binary64_2847 exp-to-pow_binary64_2868 exp-prod_binary64_2858 rem-exp-log_binary64_2846 distribute-lft-out_binary64_2757 flip3--_binary64_2810 flip--_binary64_2781 distribute-lft-out--_binary64_2758
Counts
4 → 86
Calls

4 calls:

10.0ms
(*.f64 (*.f64 a a) (-.f64 1 a))
9.0ms
(*.f64 (*.f64 b b) (+.f64 3 a))
5.0ms
(exp.f64 (*.f64 2 (log.f64 (+.f64 (*.f64 b b) (*.f64 a a)))))
4.0ms
(log.f64 (+.f64 (*.f64 b b) (*.f64 a a)))
Compiler

Compiled 3062 to 1496 computations (51.1% saved)

series570.0ms (6.5%)

Error
0.0b
Counts
4 → 38
Calls

4 calls:

173.0ms
(exp.f64 (*.f64 2 (log.f64 (+.f64 (*.f64 b b) (*.f64 a a)))))
150.0ms
(log.f64 (+.f64 (*.f64 b b) (*.f64 a a)))
119.0ms
(*.f64 (*.f64 b b) (+.f64 3 a))
79.0ms
(*.f64 (*.f64 a a) (-.f64 1 a))
Compiler

Compiled 2649 to 1970 computations (25.6% saved)

simplify117.0ms (1.3%)

Algorithm
egg-herbie
Rules
488×times-frac_binary64_2812
476×distribute-rgt-in_binary64_2756
445×distribute-lft-in_binary64_2755
231×associate-*l*_binary64_2747
180×associate-*r*_binary64_2746
149×associate-/r*_binary64_2750
139×exp-prod_binary64_2858
130×associate-/l*_binary64_2751 *-commutative_binary64_2737
95×log-prod_binary64_2892
94×unswap-sqr_binary64_2774
82×cancel-sign-sub-inv_binary64_2772
70×distribute-rgt-neg-in_binary64_2764
58×sqr-pow_binary64_2778
54×distribute-lft-neg-in_binary64_2763
44×sub-neg_binary64_2799 associate-+l+_binary64_2739
38×log-div_binary64_2893
36×distribute-rgt-neg-out_binary64_2766
35×distribute-lft-neg-out_binary64_2765 distribute-rgt-out_binary64_2759 +-commutative_binary64_2736
33×neg-sub0_binary64_2801 associate-+r-_binary64_2740
32×neg-mul-1_binary64_2802
29×log-pow_binary64_2895
28×cube-prod_binary64_2834
26×*-lft-identity_binary64_2795 associate-*r/_binary64_2748
25×associate-*l/_binary64_2749
22×swap-sqr_binary64_2773
21×*-rgt-identity_binary64_2796
19×distribute-rgt-out--_binary64_2760 associate-+l-_binary64_2741
17×unsub-neg_binary64_2800
14×unpow3_binary64_2872 exp-sum_binary64_2852
13×distribute-lft-out_binary64_2757
12×distribute-neg-frac_binary64_2770
11×log-rec_binary64_2894 pow-plus_binary64_2869 pow-sqr_binary64_2779 difference-of-squares_binary64_2775
10×prod-exp_binary64_2855 cube-unmult_binary64_2843
associate--l+_binary64_2743
unpow1/2_binary64_2870
distribute-neg-in_binary64_2767
exp-to-pow_binary64_2868 unpow1_binary64_2864 associate-/r/_binary64_2752
unpow2_binary64_2871 exp-lft-sqr_binary64_2861 associate-+r+_binary64_2738
rem-exp-log_binary64_2846 count-2_binary64_2754
cube-mult_binary64_2836 rem-sqrt-square_binary64_2819 /-rgt-identity_binary64_2797
exp-lft-cube_binary64_2862 exp-diff_binary64_2854 rem-log-exp_binary64_2847 rem-square-sqrt_binary64_2818 remove-double-neg_binary64_2794 distribute-rgt1-in_binary64_2762 distribute-lft-out--_binary64_2758 associate--r+_binary64_2742
1-exp_binary64_2850 exp-1-e_binary64_2849 rem-3cbrt-lft_binary64_2831 div-sub_binary64_2811 mul-1-neg_binary64_2798 cancel-sign-sub_binary64_2771 distribute-lft1-in_binary64_2761 associate--l-_binary64_2744
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 pow-base-0_binary64_2890 unpow1/3_binary64_2873 pow-base-1_binary64_2866 unpow0_binary64_2865 unpow-1_binary64_2863 exp-cbrt_binary64_2860 exp-sqrt_binary64_2859 div-exp_binary64_2857 rec-exp_binary64_2856 exp-neg_binary64_2853 e-exp-1_binary64_2851 exp-0_binary64_2848 cube-div_binary64_2835 cube-neg_binary64_2833 rem-3cbrt-rft_binary64_2832 rem-cbrt-cube_binary64_2830 rem-cube-cbrt_binary64_2829 sqr-abs_binary64_2821 sqr-neg_binary64_2820 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 difference-of-sqr--1_binary64_2777 difference-of-sqr-1_binary64_2776 distribute-frac-neg_binary64_2769 distribute-neg-out_binary64_2768 associate-/l/_binary64_2753 associate--r-_binary64_2745
Counts
124 → 100
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02121805
15001616
214591602
348051595
449701595
549511595

prune141.0ms (1.6%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1000100
Fresh000
Picked011
Done022
Total1003103
Error
0.0b
Counts
103 → 3
Compiler

Compiled 2147 to 1098 computations (48.9% saved)

regimes2.2s (25.3%)

Accuracy

Total 0.0b remaining (32%)

Threshold costs 0.0b (32%)

Compiler

Compiled 33254 to 22332 computations (32.8% saved)

bsearch0.0ms (0%)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_2736
*-commutative_binary64_2737
sub-neg_binary64_2799
1-exp_binary64_2850 neg-mul-1_binary64_2802 neg-sub0_binary64_2801
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 exp-1-e_binary64_2849 exp-0_binary64_2848 sqr-abs_binary64_2821 sqr-neg_binary64_2820 unsub-neg_binary64_2800 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
02455
14255
24655
34855
44955
54755

end2.0ms (0%)

Compiler

Compiled 37 to 26 computations (29.7% saved)

sample940.0ms (10.8%)

Algorithm
intervals
Results
553.0ms8000×body128valid
0.0msbody128invalid
Compiler

Compiled 186 to 134 computations (28% saved)

Profiling

Loading profile data...