Details

Time bar (total: 16.5s)

analyze2.1s (12.9%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
062224
1100224
2116224
3144224
4170224
5295224
6371224
7574224
8743224
9823224
101039224
111224224
121275224
131300224
141326224
151340224
161344224
171273224
044
144
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
9.4%90.4%0.2%9
9.4%90.4%0.2%10
10.9%88.9%0.2%11
10.9%88.9%0.2%12
10.9%88.9%0.2%13
10.9%88.9%0.2%14
Compiler

Compiled 21 to 15 computations (28.6% saved)

sample145.0ms (0.9%)

Algorithm
intervals
Results
85.0ms142×body1024valid
25.0ms67×body512valid
10.0msbody2048valid
5.0ms19×body256valid
3.0ms24×body128valid
Compiler

Compiled 41 to 33 computations (19.5% saved)

simplify30.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01532
12132
22632
33232
43832
56232
68932
711332
814732
917432
1022332
1121132
1223232
1326132
1426132
1527132
1628432
1729232
1829932
1929832
2027132

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 20 to 14 computations (30% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
0.6b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
2.4b
(cos.f64 (-.f64 lambda1 lambda2))
2.6b
(sin.f64 (-.f64 lambda1 lambda2))

rewrite104.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
1.0b
Rules
add-cube-cbrt_binary64_795 cancel-sign-sub-inv_binary64_726 add-sqr-sqrt_binary64_782 *-un-lft-identity_binary64_760 add-log-exp_binary64_799
sin-sum_binary64_893 pow1_binary64_821 add-exp-log_binary64_798 add-cbrt-cube_binary64_796 cos-sum_binary64_894
cos-diff_binary64_897
sub-neg_binary64_753 associate-+r+_binary64_692
sin-diff_binary64_896 sum-log_binary64_851 flip3-+_binary64_763 flip-+_binary64_734 distribute-rgt-in_binary64_710 distribute-lft-in_binary64_709 +-commutative_binary64_690
Counts
4 → 44
Calls

4 calls:

9.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
5.0ms
(sin.f64 (-.f64 lambda1 lambda2))
5.0ms
(cos.f64 (-.f64 lambda1 lambda2))
1.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 1356 to 285 computations (79% saved)

series902.0ms (5.5%)

Error
1.2b
Counts
4 → 56
Calls

4 calls:

514.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
160.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
81.0ms
(cos.f64 (-.f64 lambda1 lambda2))
73.0ms
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 3442 to 1700 computations (50.6% saved)

simplify124.0ms (0.7%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
01952197
14752036
211942006
334562006
446602006
549922006

prune118.0ms (0.7%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New561268
Fresh000
Picked101
Done000
Total571269
Error
1.0b
Counts
69 → 12
Compiler

Compiled 2238 to 543 computations (75.7% saved)

localize27.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
0.6b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
2.4b
(cos.f64 (-.f64 lambda1 lambda2))

rewrite106.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
add-sqr-sqrt_binary64_782
add-cube-cbrt_binary64_795 *-un-lft-identity_binary64_760
pow1_binary64_821 add-log-exp_binary64_799 add-exp-log_binary64_798 add-cbrt-cube_binary64_796
cos-sum_binary64_894
cos-diff_binary64_897 cancel-sign-sub-inv_binary64_726 associate-*l*_binary64_701 associate-*r*_binary64_700
associate-+r+_binary64_692
sub-neg_binary64_753 sum-log_binary64_851 flip3-+_binary64_763 flip-+_binary64_734 distribute-rgt-in_binary64_710 distribute-lft-in_binary64_709 +-commutative_binary64_690 pow-prod-down_binary64_831 prod-exp_binary64_809 cbrt-unprod_binary64_793 unswap-sqr_binary64_728 *-commutative_binary64_691
Counts
4 → 50
Calls

4 calls:

6.0ms
(cos.f64 (-.f64 lambda1 lambda2))
5.0ms
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
5.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 1857 to 334 computations (82% saved)

series1.1s (6.4%)

Error
0.8b
Counts
4 → 52
Calls

4 calls:

543.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
203.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
152.0ms
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
82.0ms
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 4199 to 2107 computations (49.8% saved)

simplify124.0ms (0.7%)

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

Useful iterations: 3 (0.0ms)

IterNodesCost
02012424
14842224
212752189
324732158
445562158
552362158

prune115.0ms (0.7%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New64165
Fresh2911
Picked101
Done000
Total671077
Error
0.2b
Counts
77 → 10
Compiler

Compiled 2512 to 500 computations (80.1% saved)

localize25.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
0.2b
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
0.7b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))

rewrite117.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
12×add-sqr-sqrt_binary64_782
pow1_binary64_821 add-exp-log_binary64_798 add-cbrt-cube_binary64_796 add-cube-cbrt_binary64_795 *-un-lft-identity_binary64_760
add-log-exp_binary64_799 associate-*l*_binary64_701 associate-*r*_binary64_700
associate-+r+_binary64_692 pow-prod-down_binary64_831 prod-exp_binary64_809 cbrt-unprod_binary64_793 unswap-sqr_binary64_728 *-commutative_binary64_691
sum-log_binary64_851 flip3-+_binary64_763 flip-+_binary64_734 distribute-rgt-in_binary64_710 distribute-lft-in_binary64_709 +-commutative_binary64_690 sin-mult_binary64_915
Counts
4 → 57
Calls

4 calls:

5.0ms
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
5.0ms
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
5.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
1.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
Compiler

Compiled 2538 to 380 computations (85% saved)

series1.7s (10.1%)

Error
0.2b
Counts
4 → 52
Calls

4 calls:

1.0s
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
254.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
155.0ms
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
145.0ms
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
Compiler

Compiled 5277 to 2310 computations (56.2% saved)

simplify119.0ms (0.7%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
02243209
15692941
218382892
344692892
450532892

prune143.0ms (0.9%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New85085
Fresh099
Picked011
Done000
Total851095
Error
0.2b
Counts
95 → 10
Compiler

Compiled 3713 to 641 computations (82.7% saved)

localize24.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.6b
(pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)
0.6b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3))))
2.4b
(cos.f64 (-.f64 lambda1 lambda2))
2.6b
(sin.f64 (-.f64 lambda1 lambda2))

rewrite117.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
add-cube-cbrt_binary64_795 add-sqr-sqrt_binary64_782 *-un-lft-identity_binary64_760
cancel-sign-sub-inv_binary64_726 add-log-exp_binary64_799
pow1_binary64_821 add-exp-log_binary64_798 add-cbrt-cube_binary64_796
sin-sum_binary64_893 cos-sum_binary64_894
unpow-prod-down_binary64_839 pow-unpow_binary64_837 cube-prod_binary64_788
sub-neg_binary64_753
sin-diff_binary64_896 cos-diff_binary64_897 sum-log_binary64_851 flip3-+_binary64_763 flip-+_binary64_734 +-commutative_binary64_690 pow-pow_binary64_832 pow-to-exp_binary64_829 pow-exp_binary64_828 unpow3_binary64_826 cube-mult_binary64_790 rem-cube-cbrt_binary64_783 sqr-pow_binary64_732
Counts
4 → 58
Calls

4 calls:

5.0ms
(cos.f64 (-.f64 lambda1 lambda2))
5.0ms
(sin.f64 (-.f64 lambda1 lambda2))
4.0ms
(pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)
4.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3))))
Compiler

Compiled 1870 to 666 computations (64.4% saved)

series983.0ms (5.9%)

Error
0.2b
Counts
4 → 54
Calls

4 calls:

492.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3))))
272.0ms
(pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)
77.0ms
(cos.f64 (-.f64 lambda1 lambda2))
76.0ms
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 3816 to 2135 computations (44.1% saved)

simplify105.0ms (0.6%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
02312016
16171886
218471822
344511822
451271822

prune89.0ms (0.5%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New69170
Fresh178
Picked011
Done011
Total701080
Error
0.2b
Counts
80 → 10
Compiler

Compiled 2044 to 611 computations (70.1% saved)

regimes1.6s (9.6%)

Accuracy

Total 0.1b remaining (64.5%)

Threshold costs 0.1b (64.5%)

Compiler

Compiled 18802 to 12022 computations (36.1% saved)

bsearch0.0ms (0%)

simplify5.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_691
+-commutative_binary64_690
sub-neg_binary64_753
neg-mul-1_binary64_756 neg-sub0_binary64_755
cancel-sign-sub-inv_binary64_726 distribute-rgt-neg-in_binary64_718
distribute-lft-neg-out_binary64_719 distribute-lft-neg-in_binary64_717
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_1020 if-if-and_binary64_1019 if-if-or-not_binary64_1018 if-if-or_binary64_1017 if-not_binary64_1016 if-same_binary64_1015 if-false_binary64_1014 if-true_binary64_1013 tan-0_binary64_889 cos-0_binary64_888 sin-0_binary64_887 unpow1_binary64_818 e-exp-1_binary64_805 1-exp_binary64_804 exp-1-e_binary64_803 exp-0_binary64_802 sqr-abs_binary64_775 sqr-neg_binary64_774 unsub-neg_binary64_754 mul-1-neg_binary64_752 /-rgt-identity_binary64_751 *-rgt-identity_binary64_750 *-lft-identity_binary64_749 remove-double-neg_binary64_748 sub0-neg_binary64_747 --rgt-identity_binary64_746 +-rgt-identity_binary64_745 +-lft-identity_binary64_744 cancel-sign-sub_binary64_725 distribute-neg-frac_binary64_724 distribute-frac-neg_binary64_723 distribute-neg-out_binary64_722 distribute-neg-in_binary64_721 distribute-rgt-neg-out_binary64_720
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02256
13656
24656
35256
45656
55756
65756

end0.0ms (0%)

sample6.5s (39.6%)

Algorithm
intervals
Results
2.8s4494×body1024valid
710.0ms1739×body512valid
189.0ms143×body2048valid
172.0ms694×body256valid
123.0ms930×body128valid
Compiler

Compiled 2733 to 1746 computations (36.1% saved)

Profiling

Loading profile data...