Details

Time bar (total: 17.6s)

analyze43.0ms (0.2%)

Algorithm
search
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
25%74.9%0.1%4
37.5%62.4%0.1%5
59.3%40.6%0.1%6
76.5%23.4%0.1%7
82%18%0.1%8
87.8%12.1%0.1%9
90.7%9.2%0.1%10
93.8%6.1%0.1%11
95.3%4.6%0.1%12
96.8%3.1%0.1%13
97.6%2.3%0.1%14
Compiler

Compiled 8 to 6 computations (25% saved)

sample13.0ms (0.1%)

Algorithm
intervals
Results
5.0ms256×body128valid
Compiler

Compiled 15 to 13 computations (13.3% saved)

simplify8.5s (48.2%)

Algorithm
egg-herbie
Rules
534×associate-/l*_binary64_17755
297×associate-*r/_binary64_17752
262×exp-prod_binary64_17862
221×times-frac_binary64_17816
180×associate-/l/_binary64_17757
176×associate-/r*_binary64_17754
96×sub-neg_binary64_17803
91×distribute-rgt-in_binary64_17760
86×associate-/r/_binary64_17756
69×exp-sum_binary64_17856
62×distribute-lft-in_binary64_17759
60×div-sub_binary64_17815
59×unsub-neg_binary64_17804
50×neg-mul-1_binary64_17806
43×neg-sub0_binary64_17805
41×distribute-rgt-neg-in_binary64_17768
38×*-commutative_binary64_17741
31×cancel-sign-sub-inv_binary64_17776
27×distribute-lft-neg-in_binary64_17767
25×distribute-rgt1-in_binary64_17766
21×exp-diff_binary64_17858
19×distribute-rgt-out_binary64_17763 associate-*r*_binary64_17750 associate--r+_binary64_17746 associate-+l+_binary64_17743
18×pow-plus_binary64_17873 associate-+r+_binary64_17742 +-commutative_binary64_17740
17×associate-+l-_binary64_17745
16×distribute-neg-frac_binary64_17774
12×sub0-neg_binary64_17797 div0_binary64_17791
11×remove-double-neg_binary64_17798 distribute-neg-in_binary64_17771
10×distribute-rgt-out--_binary64_17764 associate--l+_binary64_17747
cube-unmult_binary64_17847 distribute-lft-neg-out_binary64_17769
exp-lft-sqr_binary64_17865 distribute-rgt-neg-out_binary64_17770
+-rgt-identity_binary64_17795 mul0-lft_binary64_17792 associate-+r-_binary64_17744
sqr-neg_binary64_17824 *-rgt-identity_binary64_17800 *-lft-identity_binary64_17799
mul0-rgt_binary64_17793 associate-*l*_binary64_17751 associate--l-_binary64_17748
+-lft-identity_binary64_17794 distribute-lft1-in_binary64_17765 count-2_binary64_17758 associate--r-_binary64_17749
+-inverses_binary64_17789 cancel-sign-sub_binary64_17775 distribute-lft-out--_binary64_17762 distribute-lft-out_binary64_17761
exp-neg_binary64_17857 cube-prod_binary64_17838 cube-neg_binary64_17837 --rgt-identity_binary64_17796 *-inverses_binary64_17790 associate-*l/_binary64_17753
1-exp_binary64_17854 pow-sqr_binary64_17783 sqr-pow_binary64_17782 distribute-frac-neg_binary64_17773 distribute-neg-out_binary64_17772
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_18073 erf-erfc_binary64_18072 erf-odd_binary64_18071 if-if-and-not_binary64_18070 if-if-and_binary64_18069 if-if-or-not_binary64_18068 if-if-or_binary64_18067 if-not_binary64_18066 if-same_binary64_18065 if-false_binary64_18064 if-true_binary64_18063 not-gte_binary64_18062 not-lte_binary64_18061 not-gt_binary64_18060 not-lt_binary64_18059 gte-same_binary64_18058 lte-same_binary64_18057 gt-same_binary64_18056 lt-same_binary64_18055 sinh---cosh_binary64_18002 sinh-+-cosh_binary64_18001 sinh-cosh_binary64_18000 tanh-def-c_binary64_17999 tanh-def-b_binary64_17998 tanh-def-a_binary64_17997 cosh-def_binary64_17996 sinh-def_binary64_17995 tan-neg_binary64_17942 cos-neg_binary64_17941 sin-neg_binary64_17940 tan-0_binary64_17939 cos-0_binary64_17938 sin-0_binary64_17937 hang-m-tan_binary64_17936 hang-p-tan_binary64_17935 hang-m0-tan_binary64_17934 hang-p0-tan_binary64_17933 hang-0m-tan_binary64_17932 hang-0p-tan_binary64_17931 tan-+PI/2_binary64_17930 tan-+PI_binary64_17929 tan-PI_binary64_17928 tan-PI/3_binary64_17927 tan-PI/4_binary64_17926 tan-PI/6_binary64_17925 cos-+PI/2_binary64_17924 cos-+PI_binary64_17923 cos-PI_binary64_17922 cos-PI/2_binary64_17921 cos-PI/3_binary64_17920 cos-PI/4_binary64_17919 cos-PI/6_binary64_17918 sin-+PI/2_binary64_17917 sin-+PI_binary64_17916 sin-PI_binary64_17915 sin-PI/2_binary64_17914 sin-PI/3_binary64_17913 sin-PI/4_binary64_17912 sin-PI/6_binary64_17911 sub-1-sin_binary64_17910 sub-1-cos_binary64_17909 -1-add-sin_binary64_17908 -1-add-cos_binary64_17907 1-sub-sin_binary64_17906 1-sub-cos_binary64_17905 cos-sin-sum_binary64_17904 log-E_binary64_17900 log-pow_binary64_17899 log-rec_binary64_17898 log-div_binary64_17897 log-prod_binary64_17896 pow-base-0_binary64_17894 unpow1/3_binary64_17877 unpow3_binary64_17876 unpow2_binary64_17875 unpow1/2_binary64_17874 exp-to-pow_binary64_17872 pow-base-1_binary64_17870 unpow0_binary64_17869 unpow1_binary64_17868 unpow-1_binary64_17867 exp-lft-cube_binary64_17866 exp-cbrt_binary64_17864 exp-sqrt_binary64_17863 div-exp_binary64_17861 rec-exp_binary64_17860 prod-exp_binary64_17859 e-exp-1_binary64_17855 exp-1-e_binary64_17853 exp-0_binary64_17852 rem-log-exp_binary64_17851 rem-exp-log_binary64_17850 cube-mult_binary64_17840 cube-div_binary64_17839 rem-3cbrt-rft_binary64_17836 rem-3cbrt-lft_binary64_17835 rem-cbrt-cube_binary64_17834 rem-cube-cbrt_binary64_17833 sqr-abs_binary64_17825 rem-sqrt-square_binary64_17823 rem-square-sqrt_binary64_17822 mul-1-neg_binary64_17802 /-rgt-identity_binary64_17801 lft-mult-inverse_binary64_17788 rgt-mult-inverse_binary64_17787 remove-double-div_binary64_17786 difference-of-sqr--1_binary64_17781 difference-of-sqr-1_binary64_17780 difference-of-squares_binary64_17779 unswap-sqr_binary64_17778 swap-sqr_binary64_17777
Counts
1 → 1
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
0610
11210
21910
32910
45110
57710
614210
735510
821641
9231

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 8 to 8 computations (0% saved)

localize4.0ms (0%)

Local error

Found 1 expressions with local error:

0.0b
(/.f64 (-.f64 x y) (+.f64 x y))

rewrite54.0ms (0.3%)

Algorithm
rewrite-expression-head
Error
0b
Rules
34×*-un-lft-identity_binary64_17810
22×add-sqr-sqrt_binary64_17832
20×times-frac_binary64_17816
12×add-cube-cbrt_binary64_17845
distribute-lft-out_binary64_17761
difference-of-squares_binary64_17779 distribute-lft-out--_binary64_17762 associate-/l*_binary64_17755
associate-/r*_binary64_17754
add-exp-log_binary64_17848 add-cbrt-cube_binary64_17846
associate-/l/_binary64_17757 associate-/r/_binary64_17756
pow1_binary64_17871 div-exp_binary64_17861 add-log-exp_binary64_17849 cbrt-undiv_binary64_17844 frac-2neg_binary64_17821 div-sub_binary64_17815 clear-num_binary64_17809 div-inv_binary64_17807 flip3--_binary64_17814 flip--_binary64_17785 flip3-+_binary64_17813 flip-+_binary64_17784
Counts
1 → 46
Calls

1 calls:

9.0ms
(/.f64 (-.f64 x y) (+.f64 x y))
Compiler

Compiled 725 to 165 computations (77.2% saved)

series144.0ms (0.8%)

Error
0.0b
Counts
1 → 24
Calls

1 calls:

123.0ms
(/.f64 (-.f64 x y) (+.f64 x y))
Compiler

Compiled 624 to 514 computations (17.6% saved)

simplify244.0ms (1.4%)

Algorithm
egg-herbie
Rules
530×cancel-sign-sub-inv_binary64_17776
330×distribute-rgt-in_binary64_17760
310×distribute-lft-in_binary64_17759
228×times-frac_binary64_17816
211×div-sub_binary64_17815
193×distribute-neg-frac_binary64_17774
190×distribute-rgt-neg-in_binary64_17768
187×associate-/l*_binary64_17755
165×distribute-lft-neg-in_binary64_17767
160×associate-/r*_binary64_17754
142×sub-neg_binary64_17803
116×distribute-rgt-out_binary64_17763
102×associate-*l/_binary64_17753
101×distribute-lft-neg-out_binary64_17769 associate-*r/_binary64_17752
97×associate-*l*_binary64_17751
96×associate-*r*_binary64_17750
93×distribute-rgt-out--_binary64_17764
89×unswap-sqr_binary64_17778
87×associate-/r/_binary64_17756
78×distribute-rgt-neg-out_binary64_17770
69×associate-/l/_binary64_17757 *-commutative_binary64_17741
66×neg-sub0_binary64_17805
62×neg-mul-1_binary64_17806
48×unsub-neg_binary64_17804 +-commutative_binary64_17740
42×distribute-lft-out_binary64_17761
41×distribute-frac-neg_binary64_17773
37×sqr-pow_binary64_17782
35×associate-+l+_binary64_17743
30×distribute-lft-out--_binary64_17762
25×cube-prod_binary64_17838 associate-+l-_binary64_17745
22×pow-sqr_binary64_17783
21×associate--l+_binary64_17747
20×associate-+r-_binary64_17744
19×/-rgt-identity_binary64_17801
18×associate-+r+_binary64_17742
17×swap-sqr_binary64_17777
15×associate--r+_binary64_17746
14×*-rgt-identity_binary64_17800 sub0-neg_binary64_17797 +-rgt-identity_binary64_17795 distribute-neg-out_binary64_17772
13×pow-plus_binary64_17873 cube-div_binary64_17839 *-lft-identity_binary64_17799 distribute-neg-in_binary64_17771
12×difference-of-squares_binary64_17779 distribute-rgt1-in_binary64_17766
11×log-prod_binary64_17896
10×log-div_binary64_17897 cube-unmult_binary64_17847
div-exp_binary64_17861 prod-exp_binary64_17859
exp-prod_binary64_17862 rec-exp_binary64_17860 exp-diff_binary64_17858
unpow3_binary64_17876 unpow2_binary64_17875 unpow1_binary64_17868 exp-sum_binary64_17856 cube-mult_binary64_17840 sqr-neg_binary64_17824 rem-sqrt-square_binary64_17823 *-inverses_binary64_17790 cancel-sign-sub_binary64_17775 distribute-lft1-in_binary64_17765 associate--r-_binary64_17749
log-pow_binary64_17899 log-rec_binary64_17898 1-exp_binary64_17854 rem-log-exp_binary64_17851 cube-neg_binary64_17837 remove-double-neg_binary64_17798 --rgt-identity_binary64_17796 rgt-mult-inverse_binary64_17787 associate--l-_binary64_17748
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_18073 erf-erfc_binary64_18072 erf-odd_binary64_18071 if-if-and-not_binary64_18070 if-if-and_binary64_18069 if-if-or-not_binary64_18068 if-if-or_binary64_18067 if-not_binary64_18066 if-same_binary64_18065 if-false_binary64_18064 if-true_binary64_18063 not-gte_binary64_18062 not-lte_binary64_18061 not-gt_binary64_18060 not-lt_binary64_18059 gte-same_binary64_18058 lte-same_binary64_18057 gt-same_binary64_18056 lt-same_binary64_18055 sinh---cosh_binary64_18002 sinh-+-cosh_binary64_18001 sinh-cosh_binary64_18000 tanh-def-c_binary64_17999 tanh-def-b_binary64_17998 tanh-def-a_binary64_17997 cosh-def_binary64_17996 sinh-def_binary64_17995 tan-neg_binary64_17942 cos-neg_binary64_17941 sin-neg_binary64_17940 tan-0_binary64_17939 cos-0_binary64_17938 sin-0_binary64_17937 hang-m-tan_binary64_17936 hang-p-tan_binary64_17935 hang-m0-tan_binary64_17934 hang-p0-tan_binary64_17933 hang-0m-tan_binary64_17932 hang-0p-tan_binary64_17931 tan-+PI/2_binary64_17930 tan-+PI_binary64_17929 tan-PI_binary64_17928 tan-PI/3_binary64_17927 tan-PI/4_binary64_17926 tan-PI/6_binary64_17925 cos-+PI/2_binary64_17924 cos-+PI_binary64_17923 cos-PI_binary64_17922 cos-PI/2_binary64_17921 cos-PI/3_binary64_17920 cos-PI/4_binary64_17919 cos-PI/6_binary64_17918 sin-+PI/2_binary64_17917 sin-+PI_binary64_17916 sin-PI_binary64_17915 sin-PI/2_binary64_17914 sin-PI/3_binary64_17913 sin-PI/4_binary64_17912 sin-PI/6_binary64_17911 sub-1-sin_binary64_17910 sub-1-cos_binary64_17909 -1-add-sin_binary64_17908 -1-add-cos_binary64_17907 1-sub-sin_binary64_17906 1-sub-cos_binary64_17905 cos-sin-sum_binary64_17904 log-E_binary64_17900 pow-base-0_binary64_17894 unpow1/3_binary64_17877 unpow1/2_binary64_17874 exp-to-pow_binary64_17872 pow-base-1_binary64_17870 unpow0_binary64_17869 unpow-1_binary64_17867 exp-lft-cube_binary64_17866 exp-lft-sqr_binary64_17865 exp-cbrt_binary64_17864 exp-sqrt_binary64_17863 exp-neg_binary64_17857 e-exp-1_binary64_17855 exp-1-e_binary64_17853 exp-0_binary64_17852 rem-exp-log_binary64_17850 rem-3cbrt-rft_binary64_17836 rem-3cbrt-lft_binary64_17835 rem-cbrt-cube_binary64_17834 rem-cube-cbrt_binary64_17833 sqr-abs_binary64_17825 rem-square-sqrt_binary64_17822 mul-1-neg_binary64_17802 +-lft-identity_binary64_17794 mul0-rgt_binary64_17793 mul0-lft_binary64_17792 div0_binary64_17791 +-inverses_binary64_17789 lft-mult-inverse_binary64_17788 remove-double-div_binary64_17786 difference-of-sqr--1_binary64_17781 difference-of-sqr-1_binary64_17780 count-2_binary64_17758
Counts
70 → 85
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01041289
12721229
27931191
323891155

prune82.0ms (0.5%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New82385
Fresh000
Picked011
Done000
Total82486
Error
0b
Counts
86 → 4
Compiler

Compiled 1472 to 553 computations (62.4% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.5b
(cbrt.f64 (+.f64 x y))
0.5b
(cbrt.f64 (-.f64 x y))
0.5b
(cbrt.f64 (-.f64 x y))
0.5b
(cbrt.f64 (-.f64 x y))

rewrite89.0ms (0.5%)

Algorithm
rewrite-expression-head
Error
0b
Rules
19×cbrt-prod_binary64_17841
16×*-un-lft-identity_binary64_17810
14×add-sqr-sqrt_binary64_17832
add-cube-cbrt_binary64_17845 cbrt-div_binary64_17842
pow1/3_binary64_17892 pow1_binary64_17871 add-log-exp_binary64_17849 add-exp-log_binary64_17848 add-cbrt-cube_binary64_17846
flip3--_binary64_17814 flip--_binary64_17785 difference-of-squares_binary64_17779 distribute-lft-out--_binary64_17762
flip3-+_binary64_17813 flip-+_binary64_17784 distribute-lft-out_binary64_17761
Counts
4 → 59
Calls

4 calls:

3.0ms
(cbrt.f64 (-.f64 x y))
3.0ms
(cbrt.f64 (-.f64 x y))
3.0ms
(cbrt.f64 (-.f64 x y))
3.0ms
(cbrt.f64 (+.f64 x y))
Compiler

Compiled 2102 to 268 computations (87.3% saved)

series522.0ms (3%)

Error
0b
Counts
4 → 34
Calls

4 calls:

133.0ms
(cbrt.f64 (+.f64 x y))
122.0ms
(cbrt.f64 (-.f64 x y))
115.0ms
(cbrt.f64 (-.f64 x y))
110.0ms
(cbrt.f64 (-.f64 x y))
Compiler

Compiled 3464 to 1631 computations (52.9% saved)

simplify211.0ms (1.2%)

Algorithm
egg-herbie
Rules
421×associate-*l*_binary64_17751
351×unswap-sqr_binary64_17778
346×associate-*r*_binary64_17750
256×distribute-rgt-neg-in_binary64_17768
247×sub-neg_binary64_17803
211×div-sub_binary64_17815
158×sqr-pow_binary64_17782
150×exp-sum_binary64_17856
123×unsub-neg_binary64_17804
103×*-commutative_binary64_17741
96×pow-sqr_binary64_17783
93×exp-diff_binary64_17858
92×cancel-sign-sub-inv_binary64_17776 distribute-rgt-in_binary64_17760
91×distribute-lft-neg-out_binary64_17769
85×distribute-rgt-neg-out_binary64_17770
76×neg-sub0_binary64_17805
73×distribute-lft-in_binary64_17759
72×distribute-neg-in_binary64_17771
69×neg-mul-1_binary64_17806
67×exp-prod_binary64_17862
64×difference-of-squares_binary64_17779
63×associate-/r*_binary64_17754
57×distribute-lft-neg-in_binary64_17767 associate--l-_binary64_17748
48×+-commutative_binary64_17740
46×associate-+r-_binary64_17744
45×associate-+l-_binary64_17745
43×times-frac_binary64_17816
38×associate-+r+_binary64_17742
36×associate-/l/_binary64_17757
35×distribute-neg-out_binary64_17772
33×associate-+l+_binary64_17743
31×associate--l+_binary64_17747
29×log-div_binary64_17897 cube-unmult_binary64_17847
28×log-prod_binary64_17896 pow-plus_binary64_17873
26×associate--r+_binary64_17746
24×associate-/r/_binary64_17756 associate-/l*_binary64_17755
20×associate--r-_binary64_17749
19×exp-to-pow_binary64_17872 sub0-neg_binary64_17797
16×mul0-lft_binary64_17792 associate-*l/_binary64_17753
15×/-rgt-identity_binary64_17801 mul0-rgt_binary64_17793 distribute-frac-neg_binary64_17773
14×cube-prod_binary64_17838 associate-*r/_binary64_17752
13×prod-exp_binary64_17859 cancel-sign-sub_binary64_17775
12×log-pow_binary64_17899 unpow1/3_binary64_17877 swap-sqr_binary64_17777
10×mul-1-neg_binary64_17802 +-rgt-identity_binary64_17795
*-lft-identity_binary64_17799 distribute-neg-frac_binary64_17774
exp-neg_binary64_17857 distribute-rgt-out_binary64_17763
rem-exp-log_binary64_17850 cube-div_binary64_17839
remove-double-neg_binary64_17798
log-rec_binary64_17898 rem-sqrt-square_binary64_17823
*-rgt-identity_binary64_17800 distribute-rgt-out--_binary64_17764
unpow3_binary64_17876 unpow2_binary64_17875 unpow1_binary64_17868 div-exp_binary64_17861 cube-mult_binary64_17840 rem-3cbrt-lft_binary64_17835 --rgt-identity_binary64_17796 count-2_binary64_17758
1-exp_binary64_17854 rem-log-exp_binary64_17851 sqr-neg_binary64_17824 +-lft-identity_binary64_17794 div0_binary64_17791 *-inverses_binary64_17790 +-inverses_binary64_17789 rgt-mult-inverse_binary64_17787 distribute-rgt1-in_binary64_17766
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_18073 erf-erfc_binary64_18072 erf-odd_binary64_18071 if-if-and-not_binary64_18070 if-if-and_binary64_18069 if-if-or-not_binary64_18068 if-if-or_binary64_18067 if-not_binary64_18066 if-same_binary64_18065 if-false_binary64_18064 if-true_binary64_18063 not-gte_binary64_18062 not-lte_binary64_18061 not-gt_binary64_18060 not-lt_binary64_18059 gte-same_binary64_18058 lte-same_binary64_18057 gt-same_binary64_18056 lt-same_binary64_18055 sinh---cosh_binary64_18002 sinh-+-cosh_binary64_18001 sinh-cosh_binary64_18000 tanh-def-c_binary64_17999 tanh-def-b_binary64_17998 tanh-def-a_binary64_17997 cosh-def_binary64_17996 sinh-def_binary64_17995 tan-neg_binary64_17942 cos-neg_binary64_17941 sin-neg_binary64_17940 tan-0_binary64_17939 cos-0_binary64_17938 sin-0_binary64_17937 hang-m-tan_binary64_17936 hang-p-tan_binary64_17935 hang-m0-tan_binary64_17934 hang-p0-tan_binary64_17933 hang-0m-tan_binary64_17932 hang-0p-tan_binary64_17931 tan-+PI/2_binary64_17930 tan-+PI_binary64_17929 tan-PI_binary64_17928 tan-PI/3_binary64_17927 tan-PI/4_binary64_17926 tan-PI/6_binary64_17925 cos-+PI/2_binary64_17924 cos-+PI_binary64_17923 cos-PI_binary64_17922 cos-PI/2_binary64_17921 cos-PI/3_binary64_17920 cos-PI/4_binary64_17919 cos-PI/6_binary64_17918 sin-+PI/2_binary64_17917 sin-+PI_binary64_17916 sin-PI_binary64_17915 sin-PI/2_binary64_17914 sin-PI/3_binary64_17913 sin-PI/4_binary64_17912 sin-PI/6_binary64_17911 sub-1-sin_binary64_17910 sub-1-cos_binary64_17909 -1-add-sin_binary64_17908 -1-add-cos_binary64_17907 1-sub-sin_binary64_17906 1-sub-cos_binary64_17905 cos-sin-sum_binary64_17904 log-E_binary64_17900 pow-base-0_binary64_17894 unpow1/2_binary64_17874 pow-base-1_binary64_17870 unpow0_binary64_17869 unpow-1_binary64_17867 exp-lft-cube_binary64_17866 exp-lft-sqr_binary64_17865 exp-cbrt_binary64_17864 exp-sqrt_binary64_17863 rec-exp_binary64_17860 e-exp-1_binary64_17855 exp-1-e_binary64_17853 exp-0_binary64_17852 cube-neg_binary64_17837 rem-3cbrt-rft_binary64_17836 rem-cbrt-cube_binary64_17834 rem-cube-cbrt_binary64_17833 sqr-abs_binary64_17825 rem-square-sqrt_binary64_17822 lft-mult-inverse_binary64_17788 remove-double-div_binary64_17786 difference-of-sqr--1_binary64_17781 difference-of-sqr-1_binary64_17780 distribute-lft1-in_binary64_17765 distribute-lft-out--_binary64_17762 distribute-lft-out_binary64_17761
Counts
93 → 82
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0931031
11971031
24161031
39411031
430411031

prune112.0ms (0.6%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New82082
Fresh022
Picked011
Done011
Total82486
Error
0b
Counts
86 → 4
Compiler

Compiled 2887 to 499 computations (82.7% saved)

localize8.0ms (0%)

Local error

Found 4 expressions with local error:

0.5b
(*.f64 (cbrt.f64 (-.f64 x y)) (cbrt.f64 (-.f64 x y)))
0.5b
(cbrt.f64 (-.f64 x y))
0.5b
(cbrt.f64 (-.f64 x y))
0.5b
(cbrt.f64 (-.f64 x y))

rewrite134.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
0b
Rules
43×cbrt-prod_binary64_17841
37×add-sqr-sqrt_binary64_17832
35×*-un-lft-identity_binary64_17810
18×cbrt-div_binary64_17842
15×add-cube-cbrt_binary64_17845
11×pow1_binary64_17871
10×swap-sqr_binary64_17777
pow1/3_binary64_17892 flip3--_binary64_17814 flip--_binary64_17785 distribute-lft-out--_binary64_17762
associate-*l*_binary64_17751 associate-*r*_binary64_17750
difference-of-squares_binary64_17779
add-exp-log_binary64_17848
add-log-exp_binary64_17849 add-cbrt-cube_binary64_17846 frac-times_binary64_17820 unswap-sqr_binary64_17778
pow-prod-down_binary64_17881 pow-prod-up_binary64_17880 pow-sqr_binary64_17783 associate-*l/_binary64_17753 associate-*r/_binary64_17752
pow2_binary64_17891 pow-plus_binary64_17873 prod-exp_binary64_17859 cbrt-unprod_binary64_17843 *-commutative_binary64_17741
Counts
4 → 101
Calls

4 calls:

12.0ms
(*.f64 (cbrt.f64 (-.f64 x y)) (cbrt.f64 (-.f64 x y)))
4.0ms
(cbrt.f64 (-.f64 x y))
3.0ms
(cbrt.f64 (-.f64 x y))
3.0ms
(cbrt.f64 (-.f64 x y))
Compiler

Compiled 2624 to 420 computations (84% saved)

series585.0ms (3.3%)

Error
0b
Counts
4 → 36
Calls

4 calls:

206.0ms
(*.f64 (cbrt.f64 (-.f64 x y)) (cbrt.f64 (-.f64 x y)))
119.0ms
(cbrt.f64 (-.f64 x y))
114.0ms
(cbrt.f64 (-.f64 x y))
105.0ms
(cbrt.f64 (-.f64 x y))
Compiler

Compiled 2463 to 1579 computations (35.9% saved)

simplify319.0ms (1.8%)

Algorithm
egg-herbie
Rules
383×associate-*l*_binary64_17751
367×associate-*r*_binary64_17750
295×distribute-rgt-in_binary64_17760
257×distribute-lft-in_binary64_17759
235×cancel-sign-sub-inv_binary64_17776
228×unswap-sqr_binary64_17778
222×distribute-rgt-neg-in_binary64_17768
209×distribute-lft-neg-in_binary64_17767
170×associate-/l/_binary64_17757
115×*-commutative_binary64_17741
114×sqr-pow_binary64_17782
110×swap-sqr_binary64_17777
107×exp-prod_binary64_17862
84×log-prod_binary64_17896
68×cube-prod_binary64_17838
63×sub-neg_binary64_17803
58×distribute-rgt-out_binary64_17763
56×pow-sqr_binary64_17783
53×neg-sub0_binary64_17805 distribute-lft-neg-out_binary64_17769 associate-*l/_binary64_17753
52×times-frac_binary64_17816
44×neg-mul-1_binary64_17806
40×log-div_binary64_17897
39×distribute-rgt-neg-out_binary64_17770
32×cube-div_binary64_17839
30×associate-*r/_binary64_17752
29×associate-/r*_binary64_17754
27×*-lft-identity_binary64_17799
25×*-rgt-identity_binary64_17800
20×cube-unmult_binary64_17847 unsub-neg_binary64_17804 associate-/l*_binary64_17755
19×pow-plus_binary64_17873 exp-sqrt_binary64_17863 distribute-lft-out_binary64_17761
18×difference-of-squares_binary64_17779
16×associate-/r/_binary64_17756 +-commutative_binary64_17740
14×exp-sum_binary64_17856
13×distribute-rgt-out--_binary64_17764
11×distribute-neg-out_binary64_17772
10×exp-lft-sqr_binary64_17865 div-sub_binary64_17815 distribute-neg-frac_binary64_17774
unpow1/3_binary64_17877 rem-sqrt-square_binary64_17823 sub0-neg_binary64_17797 associate-+l-_binary64_17745
log-pow_binary64_17899 +-rgt-identity_binary64_17795 associate-+r-_binary64_17744
unpow3_binary64_17876 exp-diff_binary64_17858 /-rgt-identity_binary64_17801
log-rec_binary64_17898 mul-1-neg_binary64_17802 distribute-rgt1-in_binary64_17766 count-2_binary64_17758 associate-+l+_binary64_17743
unpow2_binary64_17875 exp-to-pow_binary64_17872 cube-mult_binary64_17840 distribute-lft-out--_binary64_17762 associate-+r+_binary64_17742
unpow1_binary64_17868 rem-exp-log_binary64_17850
exp-neg_binary64_17857 rem-3cbrt-lft_binary64_17835 mul0-lft_binary64_17792 distribute-neg-in_binary64_17771 distribute-lft1-in_binary64_17765
pow-base-1_binary64_17870 prod-exp_binary64_17859 1-exp_binary64_17854 exp-1-e_binary64_17853 rem-log-exp_binary64_17851 rem-3cbrt-rft_binary64_17836 rem-cbrt-cube_binary64_17834 sqr-neg_binary64_17824 rem-square-sqrt_binary64_17822 remove-double-neg_binary64_17798 --rgt-identity_binary64_17796 *-inverses_binary64_17790 distribute-frac-neg_binary64_17773 associate--r-_binary64_17749
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_18073 erf-erfc_binary64_18072 erf-odd_binary64_18071 if-if-and-not_binary64_18070 if-if-and_binary64_18069 if-if-or-not_binary64_18068 if-if-or_binary64_18067 if-not_binary64_18066 if-same_binary64_18065 if-false_binary64_18064 if-true_binary64_18063 not-gte_binary64_18062 not-lte_binary64_18061 not-gt_binary64_18060 not-lt_binary64_18059 gte-same_binary64_18058 lte-same_binary64_18057 gt-same_binary64_18056 lt-same_binary64_18055 sinh---cosh_binary64_18002 sinh-+-cosh_binary64_18001 sinh-cosh_binary64_18000 tanh-def-c_binary64_17999 tanh-def-b_binary64_17998 tanh-def-a_binary64_17997 cosh-def_binary64_17996 sinh-def_binary64_17995 tan-neg_binary64_17942 cos-neg_binary64_17941 sin-neg_binary64_17940 tan-0_binary64_17939 cos-0_binary64_17938 sin-0_binary64_17937 hang-m-tan_binary64_17936 hang-p-tan_binary64_17935 hang-m0-tan_binary64_17934 hang-p0-tan_binary64_17933 hang-0m-tan_binary64_17932 hang-0p-tan_binary64_17931 tan-+PI/2_binary64_17930 tan-+PI_binary64_17929 tan-PI_binary64_17928 tan-PI/3_binary64_17927 tan-PI/4_binary64_17926 tan-PI/6_binary64_17925 cos-+PI/2_binary64_17924 cos-+PI_binary64_17923 cos-PI_binary64_17922 cos-PI/2_binary64_17921 cos-PI/3_binary64_17920 cos-PI/4_binary64_17919 cos-PI/6_binary64_17918 sin-+PI/2_binary64_17917 sin-+PI_binary64_17916 sin-PI_binary64_17915 sin-PI/2_binary64_17914 sin-PI/3_binary64_17913 sin-PI/4_binary64_17912 sin-PI/6_binary64_17911 sub-1-sin_binary64_17910 sub-1-cos_binary64_17909 -1-add-sin_binary64_17908 -1-add-cos_binary64_17907 1-sub-sin_binary64_17906 1-sub-cos_binary64_17905 cos-sin-sum_binary64_17904 log-E_binary64_17900 pow-base-0_binary64_17894 unpow1/2_binary64_17874 unpow0_binary64_17869 unpow-1_binary64_17867 exp-lft-cube_binary64_17866 exp-cbrt_binary64_17864 div-exp_binary64_17861 rec-exp_binary64_17860 e-exp-1_binary64_17855 exp-0_binary64_17852 cube-neg_binary64_17837 rem-cube-cbrt_binary64_17833 sqr-abs_binary64_17825 +-lft-identity_binary64_17794 mul0-rgt_binary64_17793 div0_binary64_17791 +-inverses_binary64_17789 lft-mult-inverse_binary64_17788 rgt-mult-inverse_binary64_17787 remove-double-div_binary64_17786 difference-of-sqr--1_binary64_17781 difference-of-sqr-1_binary64_17780 cancel-sign-sub_binary64_17775 associate--l-_binary64_17748 associate--l+_binary64_17747 associate--r+_binary64_17746
Counts
137 → 130
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01232074
12591998
27291960
322221953

prune134.0ms (0.8%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1300130
Fresh011
Picked011
Done022
Total1304134
Error
0b
Counts
134 → 4
Compiler

Compiled 3126 to 689 computations (78% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 2 (-.f64 (*.f64 (/.f64 y x) (+.f64 (/.f64 y x) -1)) (pow.f64 (/.f64 y x) 3)))
0.1b
(*.f64 (/.f64 y x) (+.f64 (/.f64 y x) -1))
0.2b
(pow.f64 (/.f64 y x) 3)
9.1b
(-.f64 (*.f64 (/.f64 y x) (+.f64 (/.f64 y x) -1)) (pow.f64 (/.f64 y x) 3))

rewrite451.0ms (2.6%)

Algorithm
rewrite-expression-head
Error
0b
Rules
96×cancel-sign-sub-inv_binary64_17776
84×add-sqr-sqrt_binary64_17832
83×times-frac_binary64_17816
76×*-un-lft-identity_binary64_17810
74×add-cube-cbrt_binary64_17845
52×unpow-prod-down_binary64_17889 cube-prod_binary64_17838
39×distribute-rgt-in_binary64_17760 distribute-lft-in_binary64_17759
16×associate-*l*_binary64_17751
14×add-exp-log_binary64_17848 add-cbrt-cube_binary64_17846
13×associate-*r/_binary64_17752
11×cube-div_binary64_17839
10×frac-sub_binary64_17819 associate-*r*_binary64_17750
pow1_binary64_17871 div-inv_binary64_17807
add-log-exp_binary64_17849 flip3-+_binary64_17813 frac-times_binary64_17820 flip-+_binary64_17784 cube-mult_binary64_17840 associate--l+_binary64_17747
unpow3_binary64_17876 sqr-pow_binary64_17782
associate-*l/_binary64_17753 sub-neg_binary64_17803 pow-unpow_binary64_17887 prod-exp_binary64_17859 cbrt-unprod_binary64_17843 unswap-sqr_binary64_17778
flip3--_binary64_17814 flip--_binary64_17785 distribute-lft-out--_binary64_17762 div-exp_binary64_17861 pow-exp_binary64_17878 rem-cube-cbrt_binary64_17833 cbrt-undiv_binary64_17844 pow-prod-down_binary64_17881 difference-of-sqr--1_binary64_17781 *-commutative_binary64_17741
diff-log_binary64_17902 pow-pow_binary64_17882 pow-to-exp_binary64_17879 distribute-lft-out_binary64_17761
Counts
4 → 234
Calls

4 calls:

26.0ms
(*.f64 2 (-.f64 (*.f64 (/.f64 y x) (+.f64 (/.f64 y x) -1)) (pow.f64 (/.f64 y x) 3)))
21.0ms
(-.f64 (*.f64 (/.f64 y x) (+.f64 (/.f64 y x) -1)) (pow.f64 (/.f64 y x) 3))
17.0ms
(*.f64 (/.f64 y x) (+.f64 (/.f64 y x) -1))
5.0ms
(pow.f64 (/.f64 y x) 3)
Compiler

Compiled 7126 to 3743 computations (47.5% saved)

series903.0ms (5.1%)

Error
0b
Counts
4 → 42
Calls

4 calls:

279.0ms
(*.f64 2 (-.f64 (*.f64 (/.f64 y x) (+.f64 (/.f64 y x) -1)) (pow.f64 (/.f64 y x) 3)))
234.0ms
(-.f64 (*.f64 (/.f64 y x) (+.f64 (/.f64 y x) -1)) (pow.f64 (/.f64 y x) 3))
213.0ms
(*.f64 (/.f64 y x) (+.f64 (/.f64 y x) -1))
136.0ms
(pow.f64 (/.f64 y x) 3)
Compiler

Compiled 1950 to 1515 computations (22.3% saved)

simplify1.9s (10.6%)

Algorithm
egg-herbie
Rules
625×associate-*r*_binary64_17750
614×associate-*l*_binary64_17751
218×associate-*l/_binary64_17753
204×*-commutative_binary64_17741
196×associate-*r/_binary64_17752
188×log-prod_binary64_17896
114×distribute-rgt-in_binary64_17760
110×distribute-lft-in_binary64_17759
97×associate-/l*_binary64_17755
81×cancel-sign-sub-inv_binary64_17776
75×log-div_binary64_17897
74×distribute-rgt-neg-in_binary64_17768
71×sqr-pow_binary64_17782
64×times-frac_binary64_17816
58×distribute-lft-neg-in_binary64_17767
48×neg-sub0_binary64_17805
47×neg-mul-1_binary64_17806 distribute-lft-neg-out_binary64_17769
45×unswap-sqr_binary64_17778
43×associate-/r*_binary64_17754
40×sub-neg_binary64_17803
36×pow-sqr_binary64_17783
35×log-pow_binary64_17899
32×unpow3_binary64_17876
31×cube-mult_binary64_17840
30×cube-div_binary64_17839 distribute-rgt-neg-out_binary64_17770
29×+-commutative_binary64_17740
26×associate-/l/_binary64_17757
19×distribute-neg-frac_binary64_17774
16×exp-prod_binary64_17862
15×mul-1-neg_binary64_17802
13×cube-prod_binary64_17838 swap-sqr_binary64_17777
distribute-neg-in_binary64_17771 associate-/r/_binary64_17756 associate-+l+_binary64_17743
pow-plus_binary64_17873
associate-+r-_binary64_17744
distribute-rgt-out_binary64_17763
*-rgt-identity_binary64_17800 difference-of-squares_binary64_17779 associate--r+_binary64_17746 associate-+r+_binary64_17742
cube-unmult_binary64_17847 rem-cube-cbrt_binary64_17833 rem-sqrt-square_binary64_17823 rem-square-sqrt_binary64_17822 /-rgt-identity_binary64_17801 distribute-rgt-out--_binary64_17764 distribute-lft-out--_binary64_17762 associate--l+_binary64_17747 associate-+l-_binary64_17745
unpow2_binary64_17875 pow-base-1_binary64_17870 exp-lft-sqr_binary64_17865 div-exp_binary64_17861 exp-sum_binary64_17856 *-lft-identity_binary64_17799 remove-double-neg_binary64_17798 difference-of-sqr--1_binary64_17781 distribute-rgt1-in_binary64_17766 associate--r-_binary64_17749
log-rec_binary64_17898 unpow1_binary64_17868 rec-exp_binary64_17860 prod-exp_binary64_17859 1-exp_binary64_17854 rem-cbrt-cube_binary64_17834 div-sub_binary64_17815 unsub-neg_binary64_17804 *-inverses_binary64_17790 distribute-neg-out_binary64_17772 distribute-lft-out_binary64_17761
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_18073 erf-erfc_binary64_18072 erf-odd_binary64_18071 if-if-and-not_binary64_18070 if-if-and_binary64_18069 if-if-or-not_binary64_18068 if-if-or_binary64_18067 if-not_binary64_18066 if-same_binary64_18065 if-false_binary64_18064 if-true_binary64_18063 not-gte_binary64_18062 not-lte_binary64_18061 not-gt_binary64_18060 not-lt_binary64_18059 gte-same_binary64_18058 lte-same_binary64_18057 gt-same_binary64_18056 lt-same_binary64_18055 sinh---cosh_binary64_18002 sinh-+-cosh_binary64_18001 sinh-cosh_binary64_18000 tanh-def-c_binary64_17999 tanh-def-b_binary64_17998 tanh-def-a_binary64_17997 cosh-def_binary64_17996 sinh-def_binary64_17995 tan-neg_binary64_17942 cos-neg_binary64_17941 sin-neg_binary64_17940 tan-0_binary64_17939 cos-0_binary64_17938 sin-0_binary64_17937 hang-m-tan_binary64_17936 hang-p-tan_binary64_17935 hang-m0-tan_binary64_17934 hang-p0-tan_binary64_17933 hang-0m-tan_binary64_17932 hang-0p-tan_binary64_17931 tan-+PI/2_binary64_17930 tan-+PI_binary64_17929 tan-PI_binary64_17928 tan-PI/3_binary64_17927 tan-PI/4_binary64_17926 tan-PI/6_binary64_17925 cos-+PI/2_binary64_17924 cos-+PI_binary64_17923 cos-PI_binary64_17922 cos-PI/2_binary64_17921 cos-PI/3_binary64_17920 cos-PI/4_binary64_17919 cos-PI/6_binary64_17918 sin-+PI/2_binary64_17917 sin-+PI_binary64_17916 sin-PI_binary64_17915 sin-PI/2_binary64_17914 sin-PI/3_binary64_17913 sin-PI/4_binary64_17912 sin-PI/6_binary64_17911 sub-1-sin_binary64_17910 sub-1-cos_binary64_17909 -1-add-sin_binary64_17908 -1-add-cos_binary64_17907 1-sub-sin_binary64_17906 1-sub-cos_binary64_17905 cos-sin-sum_binary64_17904 log-E_binary64_17900 pow-base-0_binary64_17894 unpow1/3_binary64_17877 unpow1/2_binary64_17874 exp-to-pow_binary64_17872 unpow0_binary64_17869 unpow-1_binary64_17867 exp-lft-cube_binary64_17866 exp-cbrt_binary64_17864 exp-sqrt_binary64_17863 exp-diff_binary64_17858 exp-neg_binary64_17857 e-exp-1_binary64_17855 exp-1-e_binary64_17853 exp-0_binary64_17852 rem-log-exp_binary64_17851 rem-exp-log_binary64_17850 cube-neg_binary64_17837 rem-3cbrt-rft_binary64_17836 rem-3cbrt-lft_binary64_17835 sqr-abs_binary64_17825 sqr-neg_binary64_17824 sub0-neg_binary64_17797 --rgt-identity_binary64_17796 +-rgt-identity_binary64_17795 +-lft-identity_binary64_17794 mul0-rgt_binary64_17793 mul0-lft_binary64_17792 div0_binary64_17791 +-inverses_binary64_17789 lft-mult-inverse_binary64_17788 rgt-mult-inverse_binary64_17787 remove-double-div_binary64_17786 difference-of-sqr-1_binary64_17780 cancel-sign-sub_binary64_17775 distribute-frac-neg_binary64_17773 distribute-lft1-in_binary64_17765 count-2_binary64_17758 associate--l-_binary64_17748
Counts
276 → 955
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03146607
19465806
248215806

prune2.3s (12.8%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New9550955
Fresh000
Picked011
Done033
Total9554959
Error
0b
Counts
959 → 4
Compiler

Compiled 27150 to 13785 computations (49.2% saved)

regimes149.0ms (0.8%)

Accuracy

Total 0.0b remaining (94.7%)

Threshold costs 0.0b (94.7%)

Compiler

Compiled 1435 to 827 computations (42.4% saved)

bsearch0.0ms (0%)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_17740
sub-neg_binary64_17803
neg-mul-1_binary64_17806 neg-sub0_binary64_17805 *-commutative_binary64_17741
distribute-neg-frac_binary64_17774
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_18070 if-if-and_binary64_18069 if-if-or-not_binary64_18068 if-if-or_binary64_18067 if-not_binary64_18066 if-same_binary64_18065 if-false_binary64_18064 if-true_binary64_18063 tan-0_binary64_17939 cos-0_binary64_17938 sin-0_binary64_17937 unpow1_binary64_17868 e-exp-1_binary64_17855 1-exp_binary64_17854 exp-1-e_binary64_17853 exp-0_binary64_17852 sqr-abs_binary64_17825 sqr-neg_binary64_17824 unsub-neg_binary64_17804 mul-1-neg_binary64_17802 /-rgt-identity_binary64_17801 *-rgt-identity_binary64_17800 *-lft-identity_binary64_17799 remove-double-neg_binary64_17798 sub0-neg_binary64_17797 --rgt-identity_binary64_17796 +-rgt-identity_binary64_17795 +-lft-identity_binary64_17794 cancel-sign-sub-inv_binary64_17776 cancel-sign-sub_binary64_17775 distribute-frac-neg_binary64_17773 distribute-neg-out_binary64_17772 distribute-neg-in_binary64_17771 distribute-rgt-neg-out_binary64_17770 distribute-lft-neg-out_binary64_17769 distribute-rgt-neg-in_binary64_17768 distribute-lft-neg-in_binary64_17767
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0716
11016
21716
32116
42416
52516
Proof
(- f64 (/ f64 h0 (+ f64 h0 h1)) (/ f64 h1 (+ f64 h0 h1)))

end0.0ms (0%)

sample778.0ms (4.4%)

Algorithm
intervals
Results
178.0ms8000×body128valid
Compiler

Compiled 475 to 275 computations (42.1% saved)

Profiling

Loading profile data...