Time bar (total: 30.7s)
| 1× | search |
| 2× | egg-herbie |
| 966× | distribute-rgt-in_binary64_2756 |
| 910× | unsub-neg_binary64_2800 |
| 843× | distribute-lft-in_binary64_2755 |
| 580× | distribute-rgt-neg-out_binary64_2766 |
| 450× | distribute-lft-neg-out_binary64_2765 |
| 437× | neg-sub0_binary64_2801 |
| 376× | neg-mul-1_binary64_2802 |
| 344× | distribute-rgt-neg-in_binary64_2764 |
| 295× | sub-neg_binary64_2799 |
| 276× | *-commutative_binary64_2737 |
| 230× | cancel-sign-sub-inv_binary64_2772 |
| 180× | distribute-neg-out_binary64_2768 |
| 165× | distribute-lft-neg-in_binary64_2763 |
| 160× | associate-*l*_binary64_2747 associate-*r*_binary64_2746 associate--r+_binary64_2742 |
| 137× | remove-double-neg_binary64_2794 |
| 130× | distribute-neg-in_binary64_2767 |
| 113× | +-commutative_binary64_2736 |
| 100× | associate-+l-_binary64_2741 |
| 73× | *-lft-identity_binary64_2795 |
| 67× | mul0-rgt_binary64_2789 mul0-lft_binary64_2788 |
| 60× | +-lft-identity_binary64_2790 |
| 55× | sub0-neg_binary64_2793 |
| 51× | *-rgt-identity_binary64_2796 |
| 50× | associate--r-_binary64_2745 |
| 30× | distribute-lft-out_binary64_2757 |
| 25× | --rgt-identity_binary64_2792 |
| 20× | cancel-sign-sub_binary64_2771 associate--l+_binary64_2743 |
| 10× | associate-+r-_binary64_2740 associate-+l+_binary64_2739 associate-+r+_binary64_2738 |
| 6× | distribute-rgt-out--_binary64_2760 |
| 5× | +-rgt-identity_binary64_2791 |
| 4× | distribute-lft-out--_binary64_2758 |
| 1× | 1-exp_binary64_2850 |
| 0× | 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 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 mul-1-neg_binary64_2798 /-rgt-identity_binary64_2797 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 distribute-neg-frac_binary64_2770 distribute-frac-neg_binary64_2769 distribute-rgt1-in_binary64_2762 distribute-lft1-in_binary64_2761 distribute-rgt-out_binary64_2759 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 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 131 | 605 |
| 1 | 263 | 605 |
| 2 | 417 | 605 |
| 3 | 512 | 605 |
| 4 | 598 | 605 |
| 5 | 1028 | 605 |
| 6 | 994 | 605 |
| 7 | 1659 | 605 |
| 8 | 2449 | 605 |
| 9 | 2458 | 605 |
| 10 | 2534 | 605 |
| 11 | 2537 | 605 |
| 12 | 2537 | 605 |
| 13 | 2903 | 605 |
| 14 | 2948 | 605 |
| 15 | 2948 | 605 |
| 16 | 4374 | 605 |
| 17 | 4909 | 605 |
| 0 | 5 | 5 |
| 1 | 5 | 5 |
| True | Other | False | Iter |
|---|---|---|---|
| 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 |
| 0% | 99.8% | 0.2% | 9 |
| 0% | 99.8% | 0.2% | 10 |
| 1.2% | 98.6% | 0.2% | 11 |
| 1.4% | 98.4% | 0.2% | 12 |
| 10.8% | 88.9% | 0.2% | 13 |
| 10.8% | 88.9% | 0.2% | 14 |
Compiled 34 to 24 computations (29.4% saved)
| 1× | intervals |
| 155.0ms | 127× | body | 1024 | valid |
| 33.0ms | 45× | body | 512 | valid |
| 13.0ms | 64× | body | 128 | valid |
| 9.0ms | 19× | body | 256 | valid |
| 2.0ms | 1× | body | 2048 | valid |
Compiled 67 to 52 computations (22.4% saved)
| 1× | egg-herbie |
| 103× | unsub-neg_binary64_2800 |
| 90× | associate-*l*_binary64_2747 |
| 88× | distribute-rgt-in_binary64_2756 |
| 82× | cancel-sign-sub-inv_binary64_2772 |
| 80× | associate-*r*_binary64_2746 |
| 70× | distribute-rgt-neg-in_binary64_2764 |
| 58× | distribute-lft-neg-out_binary64_2765 |
| 57× | distribute-lft-in_binary64_2755 |
| 56× | distribute-rgt-neg-out_binary64_2766 |
| 49× | sub-neg_binary64_2799 |
| 41× | neg-sub0_binary64_2801 |
| 40× | distribute-lft-neg-in_binary64_2763 |
| 34× | neg-mul-1_binary64_2802 |
| 33× | associate--r+_binary64_2742 |
| 28× | *-commutative_binary64_2737 |
| 25× | distribute-neg-in_binary64_2767 |
| 21× | mul0-rgt_binary64_2789 mul0-lft_binary64_2788 |
| 17× | +-commutative_binary64_2736 |
| 14× | associate-+l-_binary64_2741 |
| 13× | *-lft-identity_binary64_2795 |
| 12× | remove-double-neg_binary64_2794 |
| 8× | sub0-neg_binary64_2793 +-lft-identity_binary64_2790 |
| 7× | *-rgt-identity_binary64_2796 |
| 5× | associate--l+_binary64_2743 associate-+l+_binary64_2739 |
| 4× | mul-1-neg_binary64_2798 |
| 3× | --rgt-identity_binary64_2792 associate--r-_binary64_2745 associate--l-_binary64_2744 associate-+r+_binary64_2738 |
| 2× | +-rgt-identity_binary64_2791 |
| 1× | 1-exp_binary64_2850 cancel-sign-sub_binary64_2771 associate-+r-_binary64_2740 |
| 0× | 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 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 /-rgt-identity_binary64_2797 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 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 distribute-rgt-out--_binary64_2760 distribute-rgt-out_binary64_2759 distribute-lft-out--_binary64_2758 distribute-lft-out_binary64_2757 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 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 23 | 55 |
| 1 | 39 | 55 |
| 2 | 61 | 55 |
| 3 | 72 | 55 |
| 4 | 83 | 55 |
| 5 | 107 | 55 |
| 6 | 134 | 55 |
| 7 | 164 | 55 |
| 8 | 217 | 55 |
| 9 | 216 | 55 |
| 10 | 240 | 55 |
| 11 | 275 | 55 |
| 12 | 317 | 55 |
| 13 | 431 | 55 |
| 14 | 486 | 55 |
| 15 | 534 | 55 |
| 16 | 567 | 55 |
| 17 | 521 | 55 |
| 18 | 523 | 55 |
| 19 | 525 | 55 |
| 20 | 526 | 55 |
| 21 | 463 | 55 |
1 alts after pruning (1 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1 | 0 | 1 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 1 | 1 | 2 |
Compiled 66 to 46 computations (30.3% saved)
Found 4 expressions with local error:
| 0.3b | (*.f64 (sin.f64 theta) (sin.f64 delta)) |
| 0.3b | (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))) |
| 0.3b | (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))) |
| 0.5b | (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))))) |
| 1× | rewrite-expression-head |
| 12× | add-sqr-sqrt_binary64_2828 |
| 8× | pow1_binary64_2867 add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842 add-cube-cbrt_binary64_2841 *-un-lft-identity_binary64_2806 |
| 6× | add-log-exp_binary64_2845 associate-*l*_binary64_2747 associate-*r*_binary64_2746 |
| 2× | sin-mult_binary64_2961 pow-prod-down_binary64_2877 prod-exp_binary64_2855 cbrt-unprod_binary64_2839 unswap-sqr_binary64_2774 *-commutative_binary64_2737 |
| 1× | diff-log_binary64_2898 flip3--_binary64_2810 sub-neg_binary64_2799 flip--_binary64_2781 cancel-sign-sub-inv_binary64_2772 asin-acos_binary64_2986 |
4 calls:
| 9.0ms | (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))))) |
| 6.0ms | (*.f64 (sin.f64 theta) (sin.f64 delta)) |
| 6.0ms | (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))) |
| 2.0ms | (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))) |
Compiled 2653 to 371 computations (86% saved)
4 calls:
| 639.0ms | (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))))) |
| 548.0ms | (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))) |
| 155.0ms | (*.f64 (sin.f64 theta) (sin.f64 delta)) |
| 113.0ms | (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))) |
Compiled 3878 to 1832 computations (52.8% saved)
| 1× | egg-herbie |
| 560× | unsub-neg_binary64_2800 |
| 445× | distribute-rgt-in_binary64_2756 |
| 337× | distribute-rgt-neg-in_binary64_2764 |
| 331× | distribute-lft-in_binary64_2755 |
| 292× | distribute-lft-neg-in_binary64_2763 |
| 267× | cancel-sign-sub-inv_binary64_2772 |
| 247× | *-commutative_binary64_2737 |
| 239× | neg-mul-1_binary64_2802 |
| 218× | neg-sub0_binary64_2801 |
| 186× | sub-neg_binary64_2799 |
| 147× | +-commutative_binary64_2736 |
| 130× | sqr-pow_binary64_2778 |
| 128× | times-frac_binary64_2812 |
| 109× | associate-*l*_binary64_2747 |
| 98× | associate-*r*_binary64_2746 |
| 81× | associate-+l-_binary64_2741 |
| 78× | associate--r+_binary64_2742 |
| 71× | distribute-neg-in_binary64_2767 |
| 59× | associate-+l+_binary64_2739 |
| 57× | distribute-lft-neg-out_binary64_2765 associate-+r+_binary64_2738 |
| 49× | exp-prod_binary64_2858 |
| 47× | distribute-rgt-neg-out_binary64_2766 |
| 42× | distribute-rgt-out_binary64_2759 |
| 38× | associate-/l*_binary64_2751 |
| 34× | exp-sum_binary64_2852 |
| 33× | distribute-neg-out_binary64_2768 |
| 32× | unswap-sqr_binary64_2774 |
| 30× | associate-+r-_binary64_2740 |
| 29× | mul0-rgt_binary64_2789 mul0-lft_binary64_2788 |
| 28× | sub0-neg_binary64_2793 pow-sqr_binary64_2779 associate-/r*_binary64_2750 |
| 27× | cube-prod_binary64_2834 |
| 26× | rem-sqrt-square_binary64_2819 |
| 21× | swap-sqr_binary64_2773 associate--l+_binary64_2743 |
| 20× | log-prod_binary64_2892 distribute-rgt-out--_binary64_2760 |
| 19× | div-sub_binary64_2811 +-rgt-identity_binary64_2791 |
| 18× | difference-of-squares_binary64_2775 |
| 17× | *-lft-identity_binary64_2795 associate-/l/_binary64_2753 |
| 16× | exp-diff_binary64_2854 |
| 15× | cube-unmult_binary64_2843 *-rgt-identity_binary64_2796 associate-*r/_binary64_2748 |
| 11× | unpow3_binary64_2872 unpow1/2_binary64_2870 |
| 10× | associate--r-_binary64_2745 |
| 9× | distribute-lft-out_binary64_2757 |
| 6× | associate-*l/_binary64_2749 |
| 5× | cube-mult_binary64_2836 remove-double-neg_binary64_2794 |
| 4× | sqr-neg_binary64_2820 +-lft-identity_binary64_2790 associate-/r/_binary64_2752 |
| 3× | cos-neg_binary64_2937 cube-neg_binary64_2833 --rgt-identity_binary64_2792 cancel-sign-sub_binary64_2771 distribute-frac-neg_binary64_2769 distribute-rgt1-in_binary64_2762 distribute-lft-out--_binary64_2758 associate--l-_binary64_2744 |
| 2× | distribute-lft1-in_binary64_2761 |
| 1× | sin-neg_binary64_2936 unpow2_binary64_2871 pow-plus_binary64_2869 unpow1_binary64_2864 div-exp_binary64_2857 1-exp_binary64_2850 exp-1-e_binary64_2849 count-2_binary64_2754 |
| 0× | 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 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 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 rec-exp_binary64_2856 prod-exp_binary64_2855 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 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 mul-1-neg_binary64_2798 /-rgt-identity_binary64_2797 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-neg-frac_binary64_2770 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 147 | 3100 |
| 1 | 318 | 2935 |
| 2 | 806 | 2872 |
| 3 | 1428 | 2872 |
| 4 | 2518 | 2872 |
| 5 | 4253 | 2872 |
| 6 | 4919 | 2872 |
10 alts after pruning (10 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 63 | 10 | 73 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 64 | 10 | 74 |
Compiled 3434 to 593 computations (82.7% saved)
Found 4 expressions with local error:
| 0.3b | (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) |
| 0.3b | (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) |
| 0.5b | (-.f64 (cos.f64 delta) (log.f64 (exp.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))))) |
| 2.1b | (log.f64 (exp.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))))) |
| 1× | rewrite-expression-head |
| 13× | add-sqr-sqrt_binary64_2828 |
| 12× | *-un-lft-identity_binary64_2806 |
| 9× | pow1_binary64_2867 add-cube-cbrt_binary64_2841 |
| 7× | add-log-exp_binary64_2845 log-pow_binary64_2895 |
| 6× | log-prod_binary64_2892 add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842 cancel-sign-sub-inv_binary64_2772 |
| 3× | associate--r+_binary64_2742 associate-*l*_binary64_2747 associate-*r*_binary64_2746 |
| 2× | exp-to-pow_binary64_2868 exp-prod_binary64_2858 distribute-lft-out--_binary64_2758 |
| 1× | rem-log-exp_binary64_2847 diff-log_binary64_2898 flip3--_binary64_2810 sub-neg_binary64_2799 flip--_binary64_2781 difference-of-squares_binary64_2775 asin-acos_binary64_2986 sin-mult_binary64_2961 pow-prod-down_binary64_2877 prod-exp_binary64_2855 cbrt-unprod_binary64_2839 unswap-sqr_binary64_2774 *-commutative_binary64_2737 |
4 calls:
| 10.0ms | (-.f64 (cos.f64 delta) (log.f64 (exp.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))))) |
| 6.0ms | (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) |
| 3.0ms | (log.f64 (exp.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))))) |
| 1.0ms | (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) |
Compiled 3270 to 427 computations (86.9% saved)
4 calls:
| 1.4s | (-.f64 (cos.f64 delta) (log.f64 (exp.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))))) |
| 1.4s | (log.f64 (exp.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))))) |
| 523.0ms | (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) |
| 113.0ms | (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) |
Compiled 4346 to 2057 computations (52.7% saved)
| 1× | egg-herbie |
| 621× | unsub-neg_binary64_2800 |
| 377× | distribute-rgt-in_binary64_2756 |
| 329× | distribute-lft-in_binary64_2755 |
| 313× | associate-*l*_binary64_2747 |
| 286× | sub-neg_binary64_2799 |
| 262× | associate-*r*_binary64_2746 |
| 252× | sqr-pow_binary64_2778 |
| 242× | neg-mul-1_binary64_2802 |
| 221× | neg-sub0_binary64_2801 |
| 210× | cancel-sign-sub-inv_binary64_2772 distribute-rgt-neg-in_binary64_2764 |
| 195× | distribute-lft-neg-in_binary64_2763 |
| 148× | times-frac_binary64_2812 |
| 106× | exp-prod_binary64_2858 |
| 93× | log-pow_binary64_2895 log-prod_binary64_2892 |
| 84× | distribute-lft-neg-out_binary64_2765 |
| 81× | *-commutative_binary64_2737 |
| 77× | exp-sum_binary64_2852 |
| 76× | pow-sqr_binary64_2779 |
| 71× | associate-+r+_binary64_2738 |
| 69× | distribute-rgt-neg-out_binary64_2766 |
| 59× | associate-+l+_binary64_2739 |
| 55× | +-commutative_binary64_2736 |
| 51× | mul0-rgt_binary64_2789 mul0-lft_binary64_2788 |
| 46× | cube-prod_binary64_2834 |
| 40× | sub0-neg_binary64_2793 associate-+l-_binary64_2741 |
| 37× | unswap-sqr_binary64_2774 |
| 34× | rem-sqrt-square_binary64_2819 *-lft-identity_binary64_2795 |
| 33× | *-rgt-identity_binary64_2796 |
| 30× | +-rgt-identity_binary64_2791 |
| 29× | distribute-rgt-out_binary64_2759 associate--r+_binary64_2742 |
| 28× | exp-diff_binary64_2854 |
| 27× | div-sub_binary64_2811 |
| 23× | remove-double-neg_binary64_2794 |
| 20× | cube-unmult_binary64_2843 distribute-lft-out_binary64_2757 associate-+r-_binary64_2740 |
| 19× | unpow3_binary64_2872 associate--l+_binary64_2743 |
| 18× | +-lft-identity_binary64_2790 swap-sqr_binary64_2773 |
| 16× | exp-to-pow_binary64_2868 |
| 11× | pow-plus_binary64_2869 |
| 9× | cube-mult_binary64_2836 associate-/r*_binary64_2750 |
| 8× | unpow1/2_binary64_2870 sqr-neg_binary64_2820 --rgt-identity_binary64_2792 difference-of-squares_binary64_2775 |
| 7× | rem-log-exp_binary64_2847 mul-1-neg_binary64_2798 distribute-neg-in_binary64_2767 |
| 6× | rem-exp-log_binary64_2846 distribute-lft-out--_binary64_2758 count-2_binary64_2754 |
| 5× | distribute-rgt-out--_binary64_2760 |
| 4× | exp-sqrt_binary64_2859 |
| 3× | log-div_binary64_2893 div-exp_binary64_2857 cube-div_binary64_2835 distribute-rgt1-in_binary64_2762 associate-/l/_binary64_2753 associate-*r/_binary64_2748 |
| 2× | cos-neg_binary64_2937 sin-neg_binary64_2936 unpow2_binary64_2871 rec-exp_binary64_2856 cube-neg_binary64_2833 associate-/l*_binary64_2751 |
| 1× | log-E_binary64_2896 unpow1_binary64_2864 1-exp_binary64_2850 exp-1-e_binary64_2849 rem-3cbrt-lft_binary64_2831 rem-square-sqrt_binary64_2818 difference-of-sqr-1_binary64_2776 distribute-lft1-in_binary64_2761 associate-/r/_binary64_2752 associate--r-_binary64_2745 associate--l-_binary64_2744 |
| 0× | 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 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-rec_binary64_2894 pow-base-0_binary64_2890 unpow1/3_binary64_2873 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 prod-exp_binary64_2855 exp-neg_binary64_2853 e-exp-1_binary64_2851 exp-0_binary64_2848 rem-3cbrt-rft_binary64_2832 rem-cbrt-cube_binary64_2830 rem-cube-cbrt_binary64_2829 sqr-abs_binary64_2821 /-rgt-identity_binary64_2797 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 associate-*l/_binary64_2749 |
Useful iterations: 5 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 131 | 4124 |
| 1 | 249 | 3928 |
| 2 | 565 | 3841 |
| 3 | 1636 | 3812 |
| 4 | 3658 | 3812 |
| 5 | 4202 | 3737 |
| 6 | 4985 | 3737 |
| 7 | 4855 | 3737 |
9 alts after pruning (8 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 68 | 2 | 70 |
| Fresh | 3 | 6 | 9 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 71 | 9 | 80 |
Compiled 3224 to 478 computations (85.2% saved)
Found 4 expressions with local error:
| 0.3b | (pow.f64 (cos.f64 delta) 3) |
| 0.5b | (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) 3) |
| 0.8b | (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))) 6) |
| 4.0b | (cbrt.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))) |
| 1× | rewrite-expression-head |
| 10× | add-cube-cbrt_binary64_2841 add-sqr-sqrt_binary64_2828 *-un-lft-identity_binary64_2806 |
| 9× | pow1_binary64_2867 add-exp-log_binary64_2844 pow-unpow_binary64_2883 |
| 8× | add-cbrt-cube_binary64_2842 unpow-prod-down_binary64_2885 |
| 5× | pow-pow_binary64_2878 |
| 4× | add-log-exp_binary64_2845 pow-exp_binary64_2874 cube-prod_binary64_2834 |
| 3× | pow-to-exp_binary64_2875 sqr-pow_binary64_2778 rem-cube-cbrt_binary64_2829 |
| 2× | pow1/3_binary64_2888 sin-mult_binary64_2961 cbrt-prod_binary64_2837 unpow3_binary64_2872 cube-mult_binary64_2836 |
| 1× | cbrt-div_binary64_2838 pow-prod-down_binary64_2877 prod-exp_binary64_2855 cube-div_binary64_2835 cbrt-unprod_binary64_2839 |
4 calls:
| 6.0ms | (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) 3) |
| 4.0ms | (cbrt.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))) |
| 4.0ms | (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))) 6) |
| 3.0ms | (pow.f64 (cos.f64 delta) 3) |
Compiled 7322 to 1090 computations (85.1% saved)
4 calls:
| 2.2s | (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))) 6) |
| 1.4s | (cbrt.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))) |
| 1.1s | (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) 3) |
| 65.0ms | (pow.f64 (cos.f64 delta) 3) |
Compiled 8374 to 2771 computations (66.9% saved)
| 1× | egg-herbie |
| 493× | log-prod_binary64_2892 |
| 402× | sqr-pow_binary64_2778 |
| 386× | distribute-rgt-in_binary64_2756 |
| 327× | exp-prod_binary64_2858 |
| 307× | *-commutative_binary64_2737 |
| 281× | cube-prod_binary64_2834 |
| 196× | swap-sqr_binary64_2773 |
| 158× | log-pow_binary64_2895 |
| 124× | pow-sqr_binary64_2779 |
| 101× | associate-*r*_binary64_2746 |
| 98× | associate-*l*_binary64_2747 |
| 86× | unpow3_binary64_2872 |
| 74× | cube-mult_binary64_2836 distribute-lft-out_binary64_2757 |
| 73× | distribute-rgt-neg-in_binary64_2764 |
| 71× | distribute-lft-neg-in_binary64_2763 |
| 61× | distribute-rgt-out_binary64_2759 |
| 41× | distribute-lft-in_binary64_2755 |
| 39× | cancel-sign-sub-inv_binary64_2772 |
| 38× | pow-plus_binary64_2869 |
| 33× | rem-sqrt-square_binary64_2819 unswap-sqr_binary64_2774 |
| 29× | neg-mul-1_binary64_2802 neg-sub0_binary64_2801 |
| 24× | sub-neg_binary64_2799 |
| 19× | associate-+l+_binary64_2739 associate-+r+_binary64_2738 |
| 13× | cube-unmult_binary64_2843 |
| 12× | distribute-rgt-neg-out_binary64_2766 distribute-lft-neg-out_binary64_2765 |
| 11× | exp-sum_binary64_2852 *-rgt-identity_binary64_2796 |
| 9× | *-lft-identity_binary64_2795 |
| 8× | count-2_binary64_2754 +-commutative_binary64_2736 |
| 6× | unpow1/3_binary64_2873 unpow1/2_binary64_2870 unpow1_binary64_2864 prod-exp_binary64_2855 associate-/l/_binary64_2753 associate-*r/_binary64_2748 |
| 4× | rem-cube-cbrt_binary64_2829 unsub-neg_binary64_2800 sub0-neg_binary64_2793 associate-+l-_binary64_2741 |
| 3× | unpow2_binary64_2871 rem-cbrt-cube_binary64_2830 +-rgt-identity_binary64_2791 associate-+r-_binary64_2740 |
| 2× | exp-to-pow_binary64_2868 rem-exp-log_binary64_2846 distribute-rgt-out--_binary64_2760 associate-/r/_binary64_2752 associate-/l*_binary64_2751 |
| 1× | cos-neg_binary64_2937 1-exp_binary64_2850 rem-3cbrt-rft_binary64_2832 rem-3cbrt-lft_binary64_2831 sqr-neg_binary64_2820 rem-square-sqrt_binary64_2818 distribute-rgt1-in_binary64_2762 distribute-lft-out--_binary64_2758 |
| 0× | 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 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 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 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 cube-div_binary64_2835 cube-neg_binary64_2833 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 difference-of-squares_binary64_2775 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-lft1-in_binary64_2761 associate-/r*_binary64_2750 associate-*l/_binary64_2749 associate--r-_binary64_2745 associate--l-_binary64_2744 associate--l+_binary64_2743 associate--r+_binary64_2742 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 137 | 3312 |
| 1 | 294 | 3158 |
| 2 | 964 | 3034 |
| 3 | 2303 | 3026 |
| 4 | 4839 | 3026 |
| 5 | 4999 | 3026 |
9 alts after pruning (7 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 73 | 0 | 73 |
| Fresh | 0 | 7 | 7 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 73 | 9 | 82 |
Compiled 6895 to 1083 computations (84.3% saved)
Found 4 expressions with local error:
| 0.3b | (*.f64 (sin.f64 phi1) (sin.f64 (log.f64 (exp.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))))) |
| 0.3b | (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) |
| 0.5b | (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (log.f64 (exp.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))))) |
| 3.2b | (log.f64 (exp.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) |
| 1× | rewrite-expression-head |
| 15× | log-prod_binary64_2892 |
| 14× | add-sqr-sqrt_binary64_2828 |
| 12× | add-cube-cbrt_binary64_2841 *-un-lft-identity_binary64_2806 sin-sum_binary64_2939 |
| 7× | pow1_binary64_2867 |
| 6× | add-log-exp_binary64_2845 add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842 distribute-rgt-in_binary64_2756 associate--r+_binary64_2742 distribute-lft-in_binary64_2755 |
| 4× | log-pow_binary64_2895 |
| 3× | exp-prod_binary64_2858 associate-*l*_binary64_2747 associate-*r*_binary64_2746 |
| 2× | asin-acos_binary64_2986 |
| 1× | exp-diff_binary64_2854 log-div_binary64_2893 rem-log-exp_binary64_2847 diff-log_binary64_2898 flip3--_binary64_2810 sub-neg_binary64_2799 flip--_binary64_2781 cancel-sign-sub-inv_binary64_2772 sin-mult_binary64_2961 pow-prod-down_binary64_2877 prod-exp_binary64_2855 cbrt-unprod_binary64_2839 unswap-sqr_binary64_2774 *-commutative_binary64_2737 |
4 calls:
| 8.0ms | (*.f64 (sin.f64 phi1) (sin.f64 (log.f64 (exp.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))))) |
| 5.0ms | (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (log.f64 (exp.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))))) |
| 3.0ms | (log.f64 (exp.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) |
| 1.0ms | (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) |
Compiled 4020 to 499 computations (87.6% saved)
4 calls:
| 1.2s | (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (log.f64 (exp.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))))))) |
| 1.1s | (*.f64 (sin.f64 phi1) (sin.f64 (log.f64 (exp.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))))) |
| 737.0ms | (log.f64 (exp.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) |
| 117.0ms | (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) |
Compiled 4225 to 2008 computations (52.5% saved)
| 1× | egg-herbie |
| 479× | neg-mul-1_binary64_2802 |
| 461× | neg-sub0_binary64_2801 |
| 419× | unsub-neg_binary64_2800 |
| 410× | distribute-rgt-neg-in_binary64_2764 |
| 403× | cancel-sign-sub-inv_binary64_2772 |
| 308× | associate-*l*_binary64_2747 |
| 253× | associate-*r*_binary64_2746 |
| 232× | distribute-rgt-in_binary64_2756 |
| 210× | distribute-lft-neg-in_binary64_2763 |
| 192× | distribute-lft-in_binary64_2755 |
| 182× | distribute-lft-neg-out_binary64_2765 |
| 176× | sub-neg_binary64_2799 |
| 160× | distribute-rgt-neg-out_binary64_2766 |
| 120× | *-commutative_binary64_2737 |
| 96× | sqr-pow_binary64_2778 |
| 94× | times-frac_binary64_2812 |
| 84× | distribute-neg-in_binary64_2767 |
| 83× | distribute-neg-out_binary64_2768 |
| 57× | exp-prod_binary64_2858 |
| 54× | unswap-sqr_binary64_2774 |
| 53× | log-prod_binary64_2892 associate-+r+_binary64_2738 |
| 49× | +-commutative_binary64_2736 |
| 47× | associate-+l+_binary64_2739 |
| 44× | *-rgt-identity_binary64_2796 |
| 42× | *-lft-identity_binary64_2795 |
| 41× | mul0-rgt_binary64_2789 mul0-lft_binary64_2788 |
| 36× | exp-sum_binary64_2852 |
| 30× | associate-+l-_binary64_2741 |
| 26× | sub0-neg_binary64_2793 |
| 24× | cube-prod_binary64_2834 distribute-rgt-out_binary64_2759 |
| 21× | pow-sqr_binary64_2779 |
| 20× | associate--r+_binary64_2742 |
| 19× | log-pow_binary64_2895 rem-sqrt-square_binary64_2819 difference-of-squares_binary64_2775 |
| 18× | exp-diff_binary64_2854 cube-unmult_binary64_2843 |
| 16× | +-rgt-identity_binary64_2791 associate-+r-_binary64_2740 |
| 15× | div-sub_binary64_2811 |
| 14× | unpow3_binary64_2872 distribute-lft-out_binary64_2757 |
| 12× | associate--l+_binary64_2743 |
| 11× | distribute-rgt-out--_binary64_2760 |
| 10× | swap-sqr_binary64_2773 |
| 8× | unpow1/2_binary64_2870 remove-double-neg_binary64_2794 |
| 7× | rem-log-exp_binary64_2847 +-lft-identity_binary64_2790 |
| 6× | cube-neg_binary64_2833 sqr-neg_binary64_2820 --rgt-identity_binary64_2792 distribute-lft-out--_binary64_2758 associate-/r*_binary64_2750 |
| 5× | pow-plus_binary64_2869 mul-1-neg_binary64_2798 |
| 3× | exp-sqrt_binary64_2859 rem-exp-log_binary64_2846 cube-mult_binary64_2836 distribute-frac-neg_binary64_2769 distribute-rgt1-in_binary64_2762 count-2_binary64_2754 associate--r-_binary64_2745 |
| 2× | cos-neg_binary64_2937 sin-neg_binary64_2936 exp-neg_binary64_2853 associate-/l/_binary64_2753 associate-/l*_binary64_2751 associate-*r/_binary64_2748 |
| 1× | unpow2_binary64_2871 unpow1_binary64_2864 div-exp_binary64_2857 1-exp_binary64_2850 exp-1-e_binary64_2849 cancel-sign-sub_binary64_2771 distribute-lft1-in_binary64_2761 associate--l-_binary64_2744 |
| 0× | 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 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 rec-exp_binary64_2856 prod-exp_binary64_2855 e-exp-1_binary64_2851 exp-0_binary64_2848 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 /-rgt-identity_binary64_2797 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-neg-frac_binary64_2770 associate-/r/_binary64_2752 associate-*l/_binary64_2749 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 157 | 4917 |
| 1 | 313 | 4544 |
| 2 | 769 | 4486 |
| 3 | 1617 | 4486 |
| 4 | 2952 | 4486 |
| 5 | 4106 | 4486 |
| 6 | 4988 | 4486 |
| 7 | 4878 | 4486 |
9 alts after pruning (6 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 80 | 0 | 80 |
| Fresh | 0 | 6 | 6 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 80 | 9 | 89 |
Compiled 3816 to 409 computations (89.3% saved)
Total 0.1b remaining (69.7%)
Threshold costs 0.1b (69.7%)
Compiled 22566 to 12047 computations (46.6% saved)
| 1× | egg-herbie |
| 7× | *-commutative_binary64_2737 |
| 4× | +-commutative_binary64_2736 |
| 2× | sub-neg_binary64_2799 |
| 1× | neg-mul-1_binary64_2802 neg-sub0_binary64_2801 |
| 0× | 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 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 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 25 | 59 |
| 1 | 35 | 59 |
| 2 | 40 | 59 |
| 3 | 42 | 59 |
| 4 | 43 | 59 |
| 5 | 43 | 59 |
| 1× | intervals |
| 4.9s | 3930× | body | 1024 | valid |
| 1.0s | 1323× | body | 512 | valid |
| 495.0ms | 2208× | body | 128 | valid |
| 241.0ms | 527× | body | 256 | valid |
| 28.0ms | 12× | body | 2048 | valid |
Compiled 3273 to 1755 computations (46.4% saved)
Loading profile data...