Details

Time bar (total: 7.0s)

analyze698.0ms (10%)

Algorithm
search
egg-herbie
Rules
824×div-sub_binary64_19861
752×sub-neg_binary64_19849
680×unsub-neg_binary64_19850
566×associate-/l/_binary64_19803
383×distribute-rgt-out--_binary64_19810
378×neg-mul-1_binary64_19852
314×distribute-rgt-neg-in_binary64_19814
282×distribute-lft-neg-in_binary64_19813
272×*-commutative_binary64_19787
271×neg-sub0_binary64_19851
245×distribute-rgt-out_binary64_19809
243×distribute-lft-neg-out_binary64_19815
232×distribute-rgt-neg-out_binary64_19816
230×distribute-frac-neg_binary64_19819
214×distribute-neg-frac_binary64_19820
184×+-commutative_binary64_19786
176×distribute-neg-out_binary64_19818
169×associate-+l-_binary64_19791
152×times-frac_binary64_19862
149×distribute-rgt-in_binary64_19806 associate--r-_binary64_19795
146×associate--l-_binary64_19794
122×associate-/r*_binary64_19800
113×distribute-neg-in_binary64_19817
112×associate-/r/_binary64_19802
104×associate-*l/_binary64_19799 associate--r+_binary64_19792
95×remove-double-neg_binary64_19844
78×distribute-lft-in_binary64_19805
72×cancel-sign-sub-inv_binary64_19822
62×associate-/l*_binary64_19801
60×associate--l+_binary64_19793
51×/-rgt-identity_binary64_19847
50×associate-*r*_binary64_19796
49×associate-+r+_binary64_19788
48×distribute-rgt1-in_binary64_19812
47×distribute-lft1-in_binary64_19811
44×associate-*r/_binary64_19798
34×cancel-sign-sub_binary64_19821
32×sub0-neg_binary64_19843
30×mul0-rgt_binary64_19839
28×associate-+l+_binary64_19789
27×associate-*l*_binary64_19797 associate-+r-_binary64_19790
25×*-lft-identity_binary64_19845
24×*-rgt-identity_binary64_19846
18×div0_binary64_19837
16×mul0-lft_binary64_19838
12×distribute-lft-out--_binary64_19808
--rgt-identity_binary64_19842
mul-1-neg_binary64_19848 +-rgt-identity_binary64_19841
*-inverses_binary64_19836 remove-double-div_binary64_19832
sqr-neg_binary64_19870 +-lft-identity_binary64_19840
1-exp_binary64_19900 distribute-lft-out_binary64_19807
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_20119 erf-erfc_binary64_20118 erf-odd_binary64_20117 if-if-and-not_binary64_20116 if-if-and_binary64_20115 if-if-or-not_binary64_20114 if-if-or_binary64_20113 if-not_binary64_20112 if-same_binary64_20111 if-false_binary64_20110 if-true_binary64_20109 not-gte_binary64_20108 not-lte_binary64_20107 not-gt_binary64_20106 not-lt_binary64_20105 gte-same_binary64_20104 lte-same_binary64_20103 gt-same_binary64_20102 lt-same_binary64_20101 sinh---cosh_binary64_20048 sinh-+-cosh_binary64_20047 sinh-cosh_binary64_20046 tanh-def-c_binary64_20045 tanh-def-b_binary64_20044 tanh-def-a_binary64_20043 cosh-def_binary64_20042 sinh-def_binary64_20041 tan-neg_binary64_19988 cos-neg_binary64_19987 sin-neg_binary64_19986 tan-0_binary64_19985 cos-0_binary64_19984 sin-0_binary64_19983 hang-m-tan_binary64_19982 hang-p-tan_binary64_19981 hang-m0-tan_binary64_19980 hang-p0-tan_binary64_19979 hang-0m-tan_binary64_19978 hang-0p-tan_binary64_19977 tan-+PI/2_binary64_19976 tan-+PI_binary64_19975 tan-PI_binary64_19974 tan-PI/3_binary64_19973 tan-PI/4_binary64_19972 tan-PI/6_binary64_19971 cos-+PI/2_binary64_19970 cos-+PI_binary64_19969 cos-PI_binary64_19968 cos-PI/2_binary64_19967 cos-PI/3_binary64_19966 cos-PI/4_binary64_19965 cos-PI/6_binary64_19964 sin-+PI/2_binary64_19963 sin-+PI_binary64_19962 sin-PI_binary64_19961 sin-PI/2_binary64_19960 sin-PI/3_binary64_19959 sin-PI/4_binary64_19958 sin-PI/6_binary64_19957 sub-1-sin_binary64_19956 sub-1-cos_binary64_19955 -1-add-sin_binary64_19954 -1-add-cos_binary64_19953 1-sub-sin_binary64_19952 1-sub-cos_binary64_19951 cos-sin-sum_binary64_19950 log-E_binary64_19946 log-pow_binary64_19945 log-rec_binary64_19944 log-div_binary64_19943 log-prod_binary64_19942 pow-base-0_binary64_19940 unpow1/3_binary64_19923 unpow3_binary64_19922 unpow2_binary64_19921 unpow1/2_binary64_19920 pow-plus_binary64_19919 exp-to-pow_binary64_19918 pow-base-1_binary64_19916 unpow0_binary64_19915 unpow1_binary64_19914 unpow-1_binary64_19913 exp-lft-cube_binary64_19912 exp-lft-sqr_binary64_19911 exp-cbrt_binary64_19910 exp-sqrt_binary64_19909 exp-prod_binary64_19908 div-exp_binary64_19907 rec-exp_binary64_19906 prod-exp_binary64_19905 exp-diff_binary64_19904 exp-neg_binary64_19903 exp-sum_binary64_19902 e-exp-1_binary64_19901 exp-1-e_binary64_19899 exp-0_binary64_19898 rem-log-exp_binary64_19897 rem-exp-log_binary64_19896 cube-unmult_binary64_19893 cube-mult_binary64_19886 cube-div_binary64_19885 cube-prod_binary64_19884 cube-neg_binary64_19883 rem-3cbrt-rft_binary64_19882 rem-3cbrt-lft_binary64_19881 rem-cbrt-cube_binary64_19880 rem-cube-cbrt_binary64_19879 sqr-abs_binary64_19871 rem-sqrt-square_binary64_19869 rem-square-sqrt_binary64_19868 +-inverses_binary64_19835 lft-mult-inverse_binary64_19834 rgt-mult-inverse_binary64_19833 pow-sqr_binary64_19829 sqr-pow_binary64_19828 difference-of-sqr--1_binary64_19827 difference-of-sqr-1_binary64_19826 difference-of-squares_binary64_19825 unswap-sqr_binary64_19824 swap-sqr_binary64_19823 count-2_binary64_19804
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02052
13552
26952
311752
418852
541752
667952
7145852
8284152
9293152
10390452
11386252
12393552
13400352
14494952
15489052
033
133
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
9.4%90.5%0.1%7
14%85.8%0.1%8
21.1%78%0.9%9
37.3%60.3%2.5%10
39.7%56.1%4.2%11
45.6%48.7%5.7%12
55.9%35.1%8.9%13
57.6%32.1%10.3%14
Compiler

Compiled 10 to 8 computations (20% saved)

sample19.0ms (0.3%)

Algorithm
intervals
Results
7.0ms256×body128valid
1.0ms33×body128invalid
Compiler

Compiled 19 to 18 computations (5.3% saved)

simplify337.0ms (4.8%)

Algorithm
egg-herbie
Rules
2125×div-sub_binary64_19861
1879×associate-/l/_binary64_19803
704×sub-neg_binary64_19849
541×unsub-neg_binary64_19850
510×distribute-rgt-in_binary64_19806
492×distribute-lft-in_binary64_19805
365×associate-/l*_binary64_19801
334×distribute-neg-frac_binary64_19820
280×*-commutative_binary64_19787
274×distribute-rgt-neg-in_binary64_19814
265×neg-mul-1_binary64_19852
259×neg-sub0_binary64_19851
256×distribute-rgt-neg-out_binary64_19816
214×associate-/r/_binary64_19802
186×distribute-lft-neg-out_binary64_19815
174×distribute-lft-neg-in_binary64_19813
173×cancel-sign-sub-inv_binary64_19822
161×distribute-frac-neg_binary64_19819
151×associate-/r*_binary64_19800
127×times-frac_binary64_19862
124×associate--r+_binary64_19792
118×associate-*l*_binary64_19797
115×+-commutative_binary64_19786
102×div0_binary64_19837
93×cancel-sign-sub_binary64_19821
89×associate-*r*_binary64_19796
86×mul0-rgt_binary64_19839
84×distribute-rgt-out--_binary64_19810
81×mul0-lft_binary64_19838
75×associate-*l/_binary64_19799
68×distribute-lft-out_binary64_19807
67×distribute-lft-out--_binary64_19808
64×associate-*r/_binary64_19798
49×remove-double-div_binary64_19832
48×remove-double-neg_binary64_19844
47×distribute-neg-in_binary64_19817
43×distribute-rgt-out_binary64_19809
41×*-lft-identity_binary64_19845
39×associate--r-_binary64_19795
28×associate-+r-_binary64_19790
27×distribute-neg-out_binary64_19818 associate-+l-_binary64_19791
26×associate--l-_binary64_19794
22×/-rgt-identity_binary64_19847 associate--l+_binary64_19793
21×associate-+r+_binary64_19788
19×associate-+l+_binary64_19789
16×sub0-neg_binary64_19843
15×--rgt-identity_binary64_19842
14×*-rgt-identity_binary64_19846
+-lft-identity_binary64_19840 distribute-rgt1-in_binary64_19812
mul-1-neg_binary64_19848 +-rgt-identity_binary64_19841 distribute-lft1-in_binary64_19811
sqr-neg_binary64_19870 swap-sqr_binary64_19823
1-exp_binary64_19900 *-inverses_binary64_19836
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_20119 erf-erfc_binary64_20118 erf-odd_binary64_20117 if-if-and-not_binary64_20116 if-if-and_binary64_20115 if-if-or-not_binary64_20114 if-if-or_binary64_20113 if-not_binary64_20112 if-same_binary64_20111 if-false_binary64_20110 if-true_binary64_20109 not-gte_binary64_20108 not-lte_binary64_20107 not-gt_binary64_20106 not-lt_binary64_20105 gte-same_binary64_20104 lte-same_binary64_20103 gt-same_binary64_20102 lt-same_binary64_20101 sinh---cosh_binary64_20048 sinh-+-cosh_binary64_20047 sinh-cosh_binary64_20046 tanh-def-c_binary64_20045 tanh-def-b_binary64_20044 tanh-def-a_binary64_20043 cosh-def_binary64_20042 sinh-def_binary64_20041 tan-neg_binary64_19988 cos-neg_binary64_19987 sin-neg_binary64_19986 tan-0_binary64_19985 cos-0_binary64_19984 sin-0_binary64_19983 hang-m-tan_binary64_19982 hang-p-tan_binary64_19981 hang-m0-tan_binary64_19980 hang-p0-tan_binary64_19979 hang-0m-tan_binary64_19978 hang-0p-tan_binary64_19977 tan-+PI/2_binary64_19976 tan-+PI_binary64_19975 tan-PI_binary64_19974 tan-PI/3_binary64_19973 tan-PI/4_binary64_19972 tan-PI/6_binary64_19971 cos-+PI/2_binary64_19970 cos-+PI_binary64_19969 cos-PI_binary64_19968 cos-PI/2_binary64_19967 cos-PI/3_binary64_19966 cos-PI/4_binary64_19965 cos-PI/6_binary64_19964 sin-+PI/2_binary64_19963 sin-+PI_binary64_19962 sin-PI_binary64_19961 sin-PI/2_binary64_19960 sin-PI/3_binary64_19959 sin-PI/4_binary64_19958 sin-PI/6_binary64_19957 sub-1-sin_binary64_19956 sub-1-cos_binary64_19955 -1-add-sin_binary64_19954 -1-add-cos_binary64_19953 1-sub-sin_binary64_19952 1-sub-cos_binary64_19951 cos-sin-sum_binary64_19950 log-E_binary64_19946 log-pow_binary64_19945 log-rec_binary64_19944 log-div_binary64_19943 log-prod_binary64_19942 pow-base-0_binary64_19940 unpow1/3_binary64_19923 unpow3_binary64_19922 unpow2_binary64_19921 unpow1/2_binary64_19920 pow-plus_binary64_19919 exp-to-pow_binary64_19918 pow-base-1_binary64_19916 unpow0_binary64_19915 unpow1_binary64_19914 unpow-1_binary64_19913 exp-lft-cube_binary64_19912 exp-lft-sqr_binary64_19911 exp-cbrt_binary64_19910 exp-sqrt_binary64_19909 exp-prod_binary64_19908 div-exp_binary64_19907 rec-exp_binary64_19906 prod-exp_binary64_19905 exp-diff_binary64_19904 exp-neg_binary64_19903 exp-sum_binary64_19902 e-exp-1_binary64_19901 exp-1-e_binary64_19899 exp-0_binary64_19898 rem-log-exp_binary64_19897 rem-exp-log_binary64_19896 cube-unmult_binary64_19893 cube-mult_binary64_19886 cube-div_binary64_19885 cube-prod_binary64_19884 cube-neg_binary64_19883 rem-3cbrt-rft_binary64_19882 rem-3cbrt-lft_binary64_19881 rem-cbrt-cube_binary64_19880 rem-cube-cbrt_binary64_19879 sqr-abs_binary64_19871 rem-sqrt-square_binary64_19869 rem-square-sqrt_binary64_19868 +-inverses_binary64_19835 lft-mult-inverse_binary64_19834 rgt-mult-inverse_binary64_19833 pow-sqr_binary64_19829 sqr-pow_binary64_19828 difference-of-sqr--1_binary64_19827 difference-of-sqr-1_binary64_19826 difference-of-squares_binary64_19825 unswap-sqr_binary64_19824 count-2_binary64_19804
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
11213
22313
34213
46613
510813
617513
736113
886113
9203813
10237113
11251013
12283913
13300713
14307913
15357713
16320113
17320113
18334113
19336113
20336113
21434113
22349313
23349313
24349313
25349313
26433213
27565913

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 9 to 7 computations (22.2% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 x (*.f64 y (-.f64 z x)))
0.0b
(*.f64 y (-.f64 z x))
9.2b
(/.f64 (+.f64 x (*.f64 y (-.f64 z x))) z)

rewrite96.0ms (1.4%)

Algorithm
rewrite-expression-head
Error
9.8b
Rules
21×add-sqr-sqrt_binary64_19878
19×*-un-lft-identity_binary64_19856
17×add-cube-cbrt_binary64_19891
12×cancel-sign-sub-inv_binary64_19822
times-frac_binary64_19862
distribute-rgt-in_binary64_19806 distribute-lft-in_binary64_19805 associate-+r+_binary64_19788
add-exp-log_binary64_19894 add-cbrt-cube_binary64_19892
pow1_binary64_19917 add-log-exp_binary64_19895 associate-*r*_binary64_19796
sub-neg_binary64_19849
associate-/l*_binary64_19801 associate-/r*_binary64_19800 associate-*l*_binary64_19797
flip3-+_binary64_19859 associate-/l/_binary64_19803 flip-+_binary64_19830 associate-*r/_binary64_19798
div-exp_binary64_19907 cbrt-undiv_binary64_19890 frac-2neg_binary64_19867 clear-num_binary64_19855 div-inv_binary64_19853 pow-prod-down_binary64_19927 prod-exp_binary64_19905 cbrt-unprod_binary64_19889 unswap-sqr_binary64_19824 flip3--_binary64_19860 flip--_binary64_19831 difference-of-squares_binary64_19825 distribute-lft-out--_binary64_19808 *-commutative_binary64_19787 sum-log_binary64_19947 +-commutative_binary64_19786
Counts
3 → 78
Calls

3 calls:

8.0ms
(*.f64 y (-.f64 z x))
6.0ms
(/.f64 (+.f64 x (*.f64 y (-.f64 z x))) z)
5.0ms
(+.f64 x (*.f64 y (-.f64 z x)))
Compiler

Compiled 1355 to 327 computations (75.9% saved)

series624.0ms (8.9%)

Error
1.1b
Counts
3 → 51
Calls

3 calls:

287.0ms
(/.f64 (+.f64 x (*.f64 y (-.f64 z x))) z)
169.0ms
(+.f64 x (*.f64 y (-.f64 z x)))
141.0ms
(*.f64 y (-.f64 z x))
Compiler

Compiled 1173 to 639 computations (45.5% saved)

simplify86.0ms (1.2%)

Algorithm
egg-herbie
Rules
532×distribute-rgt-in_binary64_19806
514×distribute-lft-in_binary64_19805
432×div-sub_binary64_19861
290×unsub-neg_binary64_19850
245×*-commutative_binary64_19787
170×exp-prod_binary64_19908
169×sub-neg_binary64_19849
156×associate-/l*_binary64_19801
110×neg-sub0_binary64_19851
103×cancel-sign-sub-inv_binary64_19822
102×neg-mul-1_binary64_19852
90×associate-*l*_binary64_19797
79×associate-*l/_binary64_19799
75×associate-*r*_binary64_19796
69×exp-sum_binary64_19902 distribute-rgt-neg-in_binary64_19814 associate-+l+_binary64_19789
66×associate-*r/_binary64_19798
60×associate-+r+_binary64_19788
51×+-commutative_binary64_19786
48×distribute-lft-neg-in_binary64_19813 associate-/r*_binary64_19800
46×associate-/l/_binary64_19803
44×distribute-rgt-neg-out_binary64_19816 distribute-lft-neg-out_binary64_19815
43×associate-/r/_binary64_19802
37×associate--r+_binary64_19792
36×exp-diff_binary64_19904 times-frac_binary64_19862
31×distribute-neg-in_binary64_19817
23×cube-prod_binary64_19884 associate-+l-_binary64_19791
21×associate-+r-_binary64_19790
20×sqr-pow_binary64_19828
19×associate--l+_binary64_19793
18×*-rgt-identity_binary64_19846 *-lft-identity_binary64_19845 distribute-rgt-out_binary64_19809
17×log-prod_binary64_19942
12×unswap-sqr_binary64_19824
11×distribute-rgt-out--_binary64_19810
exp-neg_binary64_19903 sqr-neg_binary64_19870 mul-1-neg_binary64_19848 distribute-neg-frac_binary64_19820 distribute-lft-out_binary64_19807 associate--r-_binary64_19795
unpow3_binary64_19922 /-rgt-identity_binary64_19847
swap-sqr_binary64_19823 cancel-sign-sub_binary64_19821
log-div_binary64_19943 cube-unmult_binary64_19893 difference-of-squares_binary64_19825 distribute-lft-out--_binary64_19808 associate--l-_binary64_19794
cube-mult_binary64_19886 remove-double-neg_binary64_19844
cube-div_binary64_19885 cube-neg_binary64_19883 +-rgt-identity_binary64_19841 distribute-rgt1-in_binary64_19812
unpow1/2_binary64_19920 prod-exp_binary64_19905 1-exp_binary64_19900 exp-1-e_binary64_19899 rem-3cbrt-lft_binary64_19881 rem-sqrt-square_binary64_19869 rem-square-sqrt_binary64_19868 sub0-neg_binary64_19843 pow-sqr_binary64_19829 distribute-lft1-in_binary64_19811
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_20119 erf-erfc_binary64_20118 erf-odd_binary64_20117 if-if-and-not_binary64_20116 if-if-and_binary64_20115 if-if-or-not_binary64_20114 if-if-or_binary64_20113 if-not_binary64_20112 if-same_binary64_20111 if-false_binary64_20110 if-true_binary64_20109 not-gte_binary64_20108 not-lte_binary64_20107 not-gt_binary64_20106 not-lt_binary64_20105 gte-same_binary64_20104 lte-same_binary64_20103 gt-same_binary64_20102 lt-same_binary64_20101 sinh---cosh_binary64_20048 sinh-+-cosh_binary64_20047 sinh-cosh_binary64_20046 tanh-def-c_binary64_20045 tanh-def-b_binary64_20044 tanh-def-a_binary64_20043 cosh-def_binary64_20042 sinh-def_binary64_20041 tan-neg_binary64_19988 cos-neg_binary64_19987 sin-neg_binary64_19986 tan-0_binary64_19985 cos-0_binary64_19984 sin-0_binary64_19983 hang-m-tan_binary64_19982 hang-p-tan_binary64_19981 hang-m0-tan_binary64_19980 hang-p0-tan_binary64_19979 hang-0m-tan_binary64_19978 hang-0p-tan_binary64_19977 tan-+PI/2_binary64_19976 tan-+PI_binary64_19975 tan-PI_binary64_19974 tan-PI/3_binary64_19973 tan-PI/4_binary64_19972 tan-PI/6_binary64_19971 cos-+PI/2_binary64_19970 cos-+PI_binary64_19969 cos-PI_binary64_19968 cos-PI/2_binary64_19967 cos-PI/3_binary64_19966 cos-PI/4_binary64_19965 cos-PI/6_binary64_19964 sin-+PI/2_binary64_19963 sin-+PI_binary64_19962 sin-PI_binary64_19961 sin-PI/2_binary64_19960 sin-PI/3_binary64_19959 sin-PI/4_binary64_19958 sin-PI/6_binary64_19957 sub-1-sin_binary64_19956 sub-1-cos_binary64_19955 -1-add-sin_binary64_19954 -1-add-cos_binary64_19953 1-sub-sin_binary64_19952 1-sub-cos_binary64_19951 cos-sin-sum_binary64_19950 log-E_binary64_19946 log-pow_binary64_19945 log-rec_binary64_19944 pow-base-0_binary64_19940 unpow1/3_binary64_19923 unpow2_binary64_19921 pow-plus_binary64_19919 exp-to-pow_binary64_19918 pow-base-1_binary64_19916 unpow0_binary64_19915 unpow1_binary64_19914 unpow-1_binary64_19913 exp-lft-cube_binary64_19912 exp-lft-sqr_binary64_19911 exp-cbrt_binary64_19910 exp-sqrt_binary64_19909 div-exp_binary64_19907 rec-exp_binary64_19906 e-exp-1_binary64_19901 exp-0_binary64_19898 rem-log-exp_binary64_19897 rem-exp-log_binary64_19896 rem-3cbrt-rft_binary64_19882 rem-cbrt-cube_binary64_19880 rem-cube-cbrt_binary64_19879 sqr-abs_binary64_19871 --rgt-identity_binary64_19842 +-lft-identity_binary64_19840 mul0-rgt_binary64_19839 mul0-lft_binary64_19838 div0_binary64_19837 *-inverses_binary64_19836 +-inverses_binary64_19835 lft-mult-inverse_binary64_19834 rgt-mult-inverse_binary64_19833 remove-double-div_binary64_19832 difference-of-sqr--1_binary64_19827 difference-of-sqr-1_binary64_19826 distribute-frac-neg_binary64_19819 distribute-neg-out_binary64_19818 count-2_binary64_19804
Counts
129 → 79
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01521658
13531556
211161554
334371554
450181554

prune54.0ms (0.8%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New76379
Fresh000
Picked011
Done000
Total76480
Error
0.0b
Counts
80 → 4
Compiler

Compiled 909 to 197 computations (78.3% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(+.f64 y (*.f64 (/.f64 x z) (-.f64 1 y)))
3.1b
(*.f64 (/.f64 x z) (-.f64 1 y))

rewrite88.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0b
Rules
22×add-sqr-sqrt_binary64_19878
17×*-un-lft-identity_binary64_19856
14×add-cube-cbrt_binary64_19891
13×associate-*l*_binary64_19797
12×cancel-sign-sub-inv_binary64_19822
10×times-frac_binary64_19862
distribute-rgt-in_binary64_19806 distribute-lft-in_binary64_19805 associate-+r+_binary64_19788
add-exp-log_binary64_19894 add-cbrt-cube_binary64_19892
associate-*r*_binary64_19796
pow1_binary64_19917 add-log-exp_binary64_19895 sub-neg_binary64_19849
prod-exp_binary64_19905 cbrt-unprod_binary64_19889 flip3--_binary64_19860 frac-times_binary64_19866 flip--_binary64_19831 unswap-sqr_binary64_19824 associate-*r/_binary64_19798 difference-of-squares_binary64_19825
pow-prod-down_binary64_19927 div-exp_binary64_19907 cbrt-undiv_binary64_19890 associate-*l/_binary64_19799 div-inv_binary64_19853 distribute-lft-out--_binary64_19808 *-commutative_binary64_19787 sum-log_binary64_19947 flip3-+_binary64_19859 flip-+_binary64_19830 +-commutative_binary64_19786
Counts
2 → 66
Calls

2 calls:

11.0ms
(*.f64 (/.f64 x z) (-.f64 1 y))
5.0ms
(+.f64 y (*.f64 (/.f64 x z) (-.f64 1 y)))
Compiler

Compiled 1152 to 555 computations (51.8% saved)

series492.0ms (7%)

Error
0.0b
Counts
2 → 30
Calls

2 calls:

282.0ms
(+.f64 y (*.f64 (/.f64 x z) (-.f64 1 y)))
193.0ms
(*.f64 (/.f64 x z) (-.f64 1 y))
Compiler

Compiled 708 to 426 computations (39.8% saved)

simplify81.0ms (1.1%)

Algorithm
egg-herbie
Rules
415×distribute-rgt-in_binary64_19806
373×distribute-lft-in_binary64_19805
333×associate-*l/_binary64_19799
315×times-frac_binary64_19862
305×div-sub_binary64_19861
281×associate-/l*_binary64_19801
272×associate-*r/_binary64_19798
213×*-commutative_binary64_19787
158×associate-/r*_binary64_19800
126×exp-prod_binary64_19908
121×neg-sub0_binary64_19851
113×neg-mul-1_binary64_19852
101×associate-*l*_binary64_19797
92×associate-*r*_binary64_19796
62×distribute-rgt-neg-in_binary64_19814
59×distribute-lft-neg-out_binary64_19815
52×distribute-rgt-neg-out_binary64_19816
51×cube-prod_binary64_19884
49×cancel-sign-sub-inv_binary64_19822
46×+-commutative_binary64_19786
44×log-prod_binary64_19942 sub-neg_binary64_19849
41×associate-/r/_binary64_19802
39×exp-sum_binary64_19902 distribute-lft-neg-in_binary64_19813 associate-+l+_binary64_19789
36×*-lft-identity_binary64_19845
30×exp-diff_binary64_19904 *-rgt-identity_binary64_19846 distribute-neg-frac_binary64_19820
28×associate-+r+_binary64_19788
27×log-div_binary64_19943
25×cube-div_binary64_19885
24×associate-+l-_binary64_19791
23×distribute-rgt-out_binary64_19809
22×sqr-pow_binary64_19828
20×distribute-neg-in_binary64_19817
19×associate-+r-_binary64_19790
15×distribute-rgt-out--_binary64_19810 associate--r+_binary64_19792
13×unswap-sqr_binary64_19824 associate-/l/_binary64_19803
12×swap-sqr_binary64_19823
10×associate--l+_binary64_19793
unpow3_binary64_19922
unsub-neg_binary64_19850
exp-neg_binary64_19903 mul-1-neg_binary64_19848 distribute-lft-out_binary64_19807
log-rec_binary64_19944
cube-unmult_binary64_19893 cube-mult_binary64_19886
distribute-lft-out--_binary64_19808
sqr-neg_binary64_19870 distribute-rgt1-in_binary64_19812 associate--r-_binary64_19795
unpow1/2_binary64_19920 cube-neg_binary64_19883
prod-exp_binary64_19905 1-exp_binary64_19900 exp-1-e_binary64_19899 rem-3cbrt-lft_binary64_19881 rem-sqrt-square_binary64_19869 rem-square-sqrt_binary64_19868 /-rgt-identity_binary64_19847 pow-sqr_binary64_19829 difference-of-squares_binary64_19825 associate--l-_binary64_19794
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_20119 erf-erfc_binary64_20118 erf-odd_binary64_20117 if-if-and-not_binary64_20116 if-if-and_binary64_20115 if-if-or-not_binary64_20114 if-if-or_binary64_20113 if-not_binary64_20112 if-same_binary64_20111 if-false_binary64_20110 if-true_binary64_20109 not-gte_binary64_20108 not-lte_binary64_20107 not-gt_binary64_20106 not-lt_binary64_20105 gte-same_binary64_20104 lte-same_binary64_20103 gt-same_binary64_20102 lt-same_binary64_20101 sinh---cosh_binary64_20048 sinh-+-cosh_binary64_20047 sinh-cosh_binary64_20046 tanh-def-c_binary64_20045 tanh-def-b_binary64_20044 tanh-def-a_binary64_20043 cosh-def_binary64_20042 sinh-def_binary64_20041 tan-neg_binary64_19988 cos-neg_binary64_19987 sin-neg_binary64_19986 tan-0_binary64_19985 cos-0_binary64_19984 sin-0_binary64_19983 hang-m-tan_binary64_19982 hang-p-tan_binary64_19981 hang-m0-tan_binary64_19980 hang-p0-tan_binary64_19979 hang-0m-tan_binary64_19978 hang-0p-tan_binary64_19977 tan-+PI/2_binary64_19976 tan-+PI_binary64_19975 tan-PI_binary64_19974 tan-PI/3_binary64_19973 tan-PI/4_binary64_19972 tan-PI/6_binary64_19971 cos-+PI/2_binary64_19970 cos-+PI_binary64_19969 cos-PI_binary64_19968 cos-PI/2_binary64_19967 cos-PI/3_binary64_19966 cos-PI/4_binary64_19965 cos-PI/6_binary64_19964 sin-+PI/2_binary64_19963 sin-+PI_binary64_19962 sin-PI_binary64_19961 sin-PI/2_binary64_19960 sin-PI/3_binary64_19959 sin-PI/4_binary64_19958 sin-PI/6_binary64_19957 sub-1-sin_binary64_19956 sub-1-cos_binary64_19955 -1-add-sin_binary64_19954 -1-add-cos_binary64_19953 1-sub-sin_binary64_19952 1-sub-cos_binary64_19951 cos-sin-sum_binary64_19950 log-E_binary64_19946 log-pow_binary64_19945 pow-base-0_binary64_19940 unpow1/3_binary64_19923 unpow2_binary64_19921 pow-plus_binary64_19919 exp-to-pow_binary64_19918 pow-base-1_binary64_19916 unpow0_binary64_19915 unpow1_binary64_19914 unpow-1_binary64_19913 exp-lft-cube_binary64_19912 exp-lft-sqr_binary64_19911 exp-cbrt_binary64_19910 exp-sqrt_binary64_19909 div-exp_binary64_19907 rec-exp_binary64_19906 e-exp-1_binary64_19901 exp-0_binary64_19898 rem-log-exp_binary64_19897 rem-exp-log_binary64_19896 rem-3cbrt-rft_binary64_19882 rem-cbrt-cube_binary64_19880 rem-cube-cbrt_binary64_19879 sqr-abs_binary64_19871 remove-double-neg_binary64_19844 sub0-neg_binary64_19843 --rgt-identity_binary64_19842 +-rgt-identity_binary64_19841 +-lft-identity_binary64_19840 mul0-rgt_binary64_19839 mul0-lft_binary64_19838 div0_binary64_19837 *-inverses_binary64_19836 +-inverses_binary64_19835 lft-mult-inverse_binary64_19834 rgt-mult-inverse_binary64_19833 remove-double-div_binary64_19832 difference-of-sqr--1_binary64_19827 difference-of-sqr-1_binary64_19826 cancel-sign-sub_binary64_19821 distribute-frac-neg_binary64_19819 distribute-neg-out_binary64_19818 distribute-lft1-in_binary64_19811 count-2_binary64_19804
Counts
96 → 76
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01501243
14021186
211411186
339471186
449951186

prune70.0ms (1%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New73376
Fresh202
Picked011
Done011
Total75580
Error
0.0b
Counts
80 → 5
Compiler

Compiled 1078 to 508 computations (52.9% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 y (*.f64 x (/.f64 (-.f64 1 y) z)))
0.0b
(/.f64 (-.f64 1 y) z)
2.8b
(*.f64 x (/.f64 (-.f64 1 y) z))

rewrite127.0ms (1.8%)

Algorithm
rewrite-expression-head
Error
0b
Rules
51×add-sqr-sqrt_binary64_19878
46×*-un-lft-identity_binary64_19856
37×times-frac_binary64_19862
25×add-cube-cbrt_binary64_19891
22×associate-*r*_binary64_19796
14×difference-of-squares_binary64_19825
10×add-exp-log_binary64_19894 add-cbrt-cube_binary64_19892
distribute-lft-out--_binary64_19808
associate-/l*_binary64_19801
pow1_binary64_19917 add-log-exp_binary64_19895
associate-*l*_binary64_19797 associate-/r*_binary64_19800
div-exp_binary64_19907 prod-exp_binary64_19905 cbrt-unprod_binary64_19889 cbrt-undiv_binary64_19890 unswap-sqr_binary64_19824 div-inv_binary64_19853 associate-/l/_binary64_19803
pow-prod-down_binary64_19927 associate-*r/_binary64_19798 *-commutative_binary64_19787 frac-2neg_binary64_19867 div-sub_binary64_19861 clear-num_binary64_19855 flip3--_binary64_19860 flip--_binary64_19831 sum-log_binary64_19947 flip3-+_binary64_19859 flip-+_binary64_19830 +-commutative_binary64_19786
Counts
3 → 94
Calls

3 calls:

13.0ms
(*.f64 x (/.f64 (-.f64 1 y) z))
7.0ms
(/.f64 (-.f64 1 y) z)
4.0ms
(+.f64 y (*.f64 x (/.f64 (-.f64 1 y) z)))
Compiler

Compiled 1636 to 967 computations (40.9% saved)

series597.0ms (8.5%)

Error
0.0b
Counts
3 → 39
Calls

3 calls:

274.0ms
(+.f64 y (*.f64 x (/.f64 (-.f64 1 y) z)))
203.0ms
(*.f64 x (/.f64 (-.f64 1 y) z))
100.0ms
(/.f64 (-.f64 1 y) z)
Compiler

Compiled 944 to 599 computations (36.5% saved)

simplify120.0ms (1.7%)

Algorithm
egg-herbie
Rules
516×distribute-rgt-in_binary64_19806
493×distribute-lft-in_binary64_19805
362×times-frac_binary64_19862
312×associate-/l*_binary64_19801
151×associate-/r*_binary64_19800
123×exp-prod_binary64_19908
104×associate-/l/_binary64_19803
102×associate-*l*_binary64_19797
100×log-prod_binary64_19942
89×log-div_binary64_19943 distribute-rgt-neg-out_binary64_19816
87×distribute-lft-neg-out_binary64_19815
86×exp-sum_binary64_19902
83×associate-*r*_binary64_19796
82×associate-/r/_binary64_19802
71×*-commutative_binary64_19787
69×associate-*r/_binary64_19798
55×cancel-sign-sub-inv_binary64_19822 distribute-rgt-neg-in_binary64_19814
51×sub-neg_binary64_19849
49×distribute-neg-frac_binary64_19820
46×associate-*l/_binary64_19799
42×div-sub_binary64_19861
39×distribute-lft-neg-in_binary64_19813
35×neg-sub0_binary64_19851
31×*-lft-identity_binary64_19845
30×+-commutative_binary64_19786
29×*-rgt-identity_binary64_19846
27×cube-prod_binary64_19884
26×neg-mul-1_binary64_19852 distribute-neg-in_binary64_19817
24×exp-diff_binary64_19904
22×sqr-pow_binary64_19828
18×log-rec_binary64_19944
17×distribute-rgt-out_binary64_19809
16×unpow3_binary64_19922
14×cube-div_binary64_19885
13×distribute-rgt-out--_binary64_19810
11×cube-mult_binary64_19886 /-rgt-identity_binary64_19847 swap-sqr_binary64_19823
10×mul-1-neg_binary64_19848 distribute-frac-neg_binary64_19819
unswap-sqr_binary64_19824 distribute-lft-out_binary64_19807
cube-unmult_binary64_19893
exp-neg_binary64_19903 distribute-lft-out--_binary64_19808
associate-+l+_binary64_19789
cube-neg_binary64_19883 sqr-neg_binary64_19870 unsub-neg_binary64_19850 remove-double-neg_binary64_19844 distribute-rgt1-in_binary64_19812
unpow1/2_binary64_19920 associate--l+_binary64_19793 associate-+l-_binary64_19791 associate-+r-_binary64_19790 associate-+r+_binary64_19788
prod-exp_binary64_19905 1-exp_binary64_19900 exp-1-e_binary64_19899 pow-sqr_binary64_19829 difference-of-squares_binary64_19825 distribute-neg-out_binary64_19818 associate--r-_binary64_19795 associate--r+_binary64_19792
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_20119 erf-erfc_binary64_20118 erf-odd_binary64_20117 if-if-and-not_binary64_20116 if-if-and_binary64_20115 if-if-or-not_binary64_20114 if-if-or_binary64_20113 if-not_binary64_20112 if-same_binary64_20111 if-false_binary64_20110 if-true_binary64_20109 not-gte_binary64_20108 not-lte_binary64_20107 not-gt_binary64_20106 not-lt_binary64_20105 gte-same_binary64_20104 lte-same_binary64_20103 gt-same_binary64_20102 lt-same_binary64_20101 sinh---cosh_binary64_20048 sinh-+-cosh_binary64_20047 sinh-cosh_binary64_20046 tanh-def-c_binary64_20045 tanh-def-b_binary64_20044 tanh-def-a_binary64_20043 cosh-def_binary64_20042 sinh-def_binary64_20041 tan-neg_binary64_19988 cos-neg_binary64_19987 sin-neg_binary64_19986 tan-0_binary64_19985 cos-0_binary64_19984 sin-0_binary64_19983 hang-m-tan_binary64_19982 hang-p-tan_binary64_19981 hang-m0-tan_binary64_19980 hang-p0-tan_binary64_19979 hang-0m-tan_binary64_19978 hang-0p-tan_binary64_19977 tan-+PI/2_binary64_19976 tan-+PI_binary64_19975 tan-PI_binary64_19974 tan-PI/3_binary64_19973 tan-PI/4_binary64_19972 tan-PI/6_binary64_19971 cos-+PI/2_binary64_19970 cos-+PI_binary64_19969 cos-PI_binary64_19968 cos-PI/2_binary64_19967 cos-PI/3_binary64_19966 cos-PI/4_binary64_19965 cos-PI/6_binary64_19964 sin-+PI/2_binary64_19963 sin-+PI_binary64_19962 sin-PI_binary64_19961 sin-PI/2_binary64_19960 sin-PI/3_binary64_19959 sin-PI/4_binary64_19958 sin-PI/6_binary64_19957 sub-1-sin_binary64_19956 sub-1-cos_binary64_19955 -1-add-sin_binary64_19954 -1-add-cos_binary64_19953 1-sub-sin_binary64_19952 1-sub-cos_binary64_19951 cos-sin-sum_binary64_19950 log-E_binary64_19946 log-pow_binary64_19945 pow-base-0_binary64_19940 unpow1/3_binary64_19923 unpow2_binary64_19921 pow-plus_binary64_19919 exp-to-pow_binary64_19918 pow-base-1_binary64_19916 unpow0_binary64_19915 unpow1_binary64_19914 unpow-1_binary64_19913 exp-lft-cube_binary64_19912 exp-lft-sqr_binary64_19911 exp-cbrt_binary64_19910 exp-sqrt_binary64_19909 div-exp_binary64_19907 rec-exp_binary64_19906 e-exp-1_binary64_19901 exp-0_binary64_19898 rem-log-exp_binary64_19897 rem-exp-log_binary64_19896 rem-3cbrt-rft_binary64_19882 rem-3cbrt-lft_binary64_19881 rem-cbrt-cube_binary64_19880 rem-cube-cbrt_binary64_19879 sqr-abs_binary64_19871 rem-sqrt-square_binary64_19869 rem-square-sqrt_binary64_19868 sub0-neg_binary64_19843 --rgt-identity_binary64_19842 +-rgt-identity_binary64_19841 +-lft-identity_binary64_19840 mul0-rgt_binary64_19839 mul0-lft_binary64_19838 div0_binary64_19837 *-inverses_binary64_19836 +-inverses_binary64_19835 lft-mult-inverse_binary64_19834 rgt-mult-inverse_binary64_19833 remove-double-div_binary64_19832 difference-of-sqr--1_binary64_19827 difference-of-sqr-1_binary64_19826 cancel-sign-sub_binary64_19821 distribute-lft1-in_binary64_19811 count-2_binary64_19804 associate--l-_binary64_19794
Counts
133 → 76
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01551773
13911687
212441687
345611687
449921687
549501687

prune63.0ms (0.9%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New76076
Fresh022
Picked011
Done022
Total76581
Error
0.0b
Counts
81 → 5
Compiler

Compiled 1013 to 579 computations (42.8% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 y (*.f64 (/.f64 (sqrt.f64 x) 1) (*.f64 (-.f64 1 y) (/.f64 (sqrt.f64 x) z))))
0.1b
(/.f64 (sqrt.f64 x) z)
0.6b
(*.f64 (/.f64 (sqrt.f64 x) 1) (*.f64 (-.f64 1 y) (/.f64 (sqrt.f64 x) z)))
1.1b
(*.f64 (-.f64 1 y) (/.f64 (sqrt.f64 x) z))

rewrite242.0ms (3.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
57×add-sqr-sqrt_binary64_19878
56×times-frac_binary64_19862
49×*-un-lft-identity_binary64_19856
46×add-cube-cbrt_binary64_19891
41×add-exp-log_binary64_19894
32×add-cbrt-cube_binary64_19892
31×sqrt-prod_binary64_19872
28×associate-*l*_binary64_19797
23×associate-*r*_binary64_19796
17×prod-exp_binary64_19905
12×cbrt-unprod_binary64_19889
11×pow1_binary64_19917 div-exp_binary64_19907 frac-times_binary64_19866
associate-*r/_binary64_19798
cbrt-undiv_binary64_19890 associate-*l/_binary64_19799
add-log-exp_binary64_19895 flip3--_binary64_19860 flip--_binary64_19831 associate-/l*_binary64_19801
pow-prod-down_binary64_19927
unswap-sqr_binary64_19824 div-inv_binary64_19853 1-exp_binary64_19900 associate-/r*_binary64_19800
difference-of-squares_binary64_19825 *-commutative_binary64_19787
distribute-lft-out--_binary64_19808 frac-2neg_binary64_19867 clear-num_binary64_19855 sum-log_binary64_19947 flip3-+_binary64_19859 flip-+_binary64_19830 +-commutative_binary64_19786
Counts
4 → 158
Calls

4 calls:

18.0ms
(*.f64 (/.f64 (sqrt.f64 x) 1) (*.f64 (-.f64 1 y) (/.f64 (sqrt.f64 x) z)))
15.0ms
(*.f64 (-.f64 1 y) (/.f64 (sqrt.f64 x) z))
5.0ms
(/.f64 (sqrt.f64 x) z)
5.0ms
(+.f64 y (*.f64 (/.f64 (sqrt.f64 x) 1) (*.f64 (-.f64 1 y) (/.f64 (sqrt.f64 x) z))))
Compiler

Compiled 3854 to 1866 computations (51.6% saved)

series752.0ms (10.7%)

Error
0.0b
Counts
4 → 47
Calls

4 calls:

228.0ms
(+.f64 y (*.f64 (/.f64 (sqrt.f64 x) 1) (*.f64 (-.f64 1 y) (/.f64 (sqrt.f64 x) z))))
218.0ms
(*.f64 (-.f64 1 y) (/.f64 (sqrt.f64 x) z))
199.0ms
(*.f64 (/.f64 (sqrt.f64 x) 1) (*.f64 (-.f64 1 y) (/.f64 (sqrt.f64 x) z)))
77.0ms
(/.f64 (sqrt.f64 x) z)
Compiler

Compiled 1682 to 1095 computations (34.9% saved)

simplify137.0ms (2%)

Algorithm
egg-herbie
Rules
774×times-frac_binary64_19862
322×associate-/l/_binary64_19803
285×div-sub_binary64_19861
280×associate-*r*_binary64_19796
250×associate-*l*_binary64_19797
159×exp-prod_binary64_19908
156×cancel-sign-sub-inv_binary64_19822
145×*-commutative_binary64_19787
141×distribute-rgt-neg-in_binary64_19814 associate-/l*_binary64_19801
104×distribute-lft-neg-in_binary64_19813
102×sub-neg_binary64_19849
98×associate-*r/_binary64_19798
97×associate-*l/_binary64_19799
84×log-prod_binary64_19942
83×cube-prod_binary64_19884
79×distribute-rgt-in_binary64_19806
78×associate-/r*_binary64_19800
74×distribute-lft-in_binary64_19805
64×distribute-lft-neg-out_binary64_19815
58×log-div_binary64_19943
54×cube-div_binary64_19885 distribute-rgt-out_binary64_19809
53×distribute-neg-frac_binary64_19820
49×distribute-rgt-neg-out_binary64_19816
47×+-commutative_binary64_19786
40×*-lft-identity_binary64_19845
39×neg-sub0_binary64_19851
37×*-rgt-identity_binary64_19846
34×sqr-pow_binary64_19828 distribute-neg-in_binary64_19817
32×neg-mul-1_binary64_19852
30×swap-sqr_binary64_19823
28×exp-sum_binary64_19902
27×distribute-rgt-out--_binary64_19810
25×/-rgt-identity_binary64_19847
21×exp-diff_binary64_19904
18×associate-/r/_binary64_19802
16×unpow3_binary64_19922 associate-+l-_binary64_19791 associate-+l+_binary64_19789
14×associate-+r+_binary64_19788
13×cube-mult_binary64_19886
11×unswap-sqr_binary64_19824 associate--l+_binary64_19793
10×mul-1-neg_binary64_19848
unsub-neg_binary64_19850
associate--l-_binary64_19794 associate-+r-_binary64_19790
log-rec_binary64_19944
sub0-neg_binary64_19843
+-lft-identity_binary64_19840 distribute-lft-out_binary64_19807
unpow1/2_binary64_19920 cube-unmult_binary64_19893 distribute-lft-out--_binary64_19808 associate--r+_binary64_19792
rem-sqrt-square_binary64_19869 --rgt-identity_binary64_19842 distribute-rgt1-in_binary64_19812
pow-sqr_binary64_19829 distribute-neg-out_binary64_19818 count-2_binary64_19804 associate--r-_binary64_19795
unpow2_binary64_19921 unpow1_binary64_19914 prod-exp_binary64_19905 1-exp_binary64_19900 exp-1-e_binary64_19899 rem-square-sqrt_binary64_19868 remove-double-neg_binary64_19844 +-rgt-identity_binary64_19841 difference-of-squares_binary64_19825
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_20119 erf-erfc_binary64_20118 erf-odd_binary64_20117 if-if-and-not_binary64_20116 if-if-and_binary64_20115 if-if-or-not_binary64_20114 if-if-or_binary64_20113 if-not_binary64_20112 if-same_binary64_20111 if-false_binary64_20110 if-true_binary64_20109 not-gte_binary64_20108 not-lte_binary64_20107 not-gt_binary64_20106 not-lt_binary64_20105 gte-same_binary64_20104 lte-same_binary64_20103 gt-same_binary64_20102 lt-same_binary64_20101 sinh---cosh_binary64_20048 sinh-+-cosh_binary64_20047 sinh-cosh_binary64_20046 tanh-def-c_binary64_20045 tanh-def-b_binary64_20044 tanh-def-a_binary64_20043 cosh-def_binary64_20042 sinh-def_binary64_20041 tan-neg_binary64_19988 cos-neg_binary64_19987 sin-neg_binary64_19986 tan-0_binary64_19985 cos-0_binary64_19984 sin-0_binary64_19983 hang-m-tan_binary64_19982 hang-p-tan_binary64_19981 hang-m0-tan_binary64_19980 hang-p0-tan_binary64_19979 hang-0m-tan_binary64_19978 hang-0p-tan_binary64_19977 tan-+PI/2_binary64_19976 tan-+PI_binary64_19975 tan-PI_binary64_19974 tan-PI/3_binary64_19973 tan-PI/4_binary64_19972 tan-PI/6_binary64_19971 cos-+PI/2_binary64_19970 cos-+PI_binary64_19969 cos-PI_binary64_19968 cos-PI/2_binary64_19967 cos-PI/3_binary64_19966 cos-PI/4_binary64_19965 cos-PI/6_binary64_19964 sin-+PI/2_binary64_19963 sin-+PI_binary64_19962 sin-PI_binary64_19961 sin-PI/2_binary64_19960 sin-PI/3_binary64_19959 sin-PI/4_binary64_19958 sin-PI/6_binary64_19957 sub-1-sin_binary64_19956 sub-1-cos_binary64_19955 -1-add-sin_binary64_19954 -1-add-cos_binary64_19953 1-sub-sin_binary64_19952 1-sub-cos_binary64_19951 cos-sin-sum_binary64_19950 log-E_binary64_19946 log-pow_binary64_19945 pow-base-0_binary64_19940 unpow1/3_binary64_19923 pow-plus_binary64_19919 exp-to-pow_binary64_19918 pow-base-1_binary64_19916 unpow0_binary64_19915 unpow-1_binary64_19913 exp-lft-cube_binary64_19912 exp-lft-sqr_binary64_19911 exp-cbrt_binary64_19910 exp-sqrt_binary64_19909 div-exp_binary64_19907 rec-exp_binary64_19906 exp-neg_binary64_19903 e-exp-1_binary64_19901 exp-0_binary64_19898 rem-log-exp_binary64_19897 rem-exp-log_binary64_19896 cube-neg_binary64_19883 rem-3cbrt-rft_binary64_19882 rem-3cbrt-lft_binary64_19881 rem-cbrt-cube_binary64_19880 rem-cube-cbrt_binary64_19879 sqr-abs_binary64_19871 sqr-neg_binary64_19870 mul0-rgt_binary64_19839 mul0-lft_binary64_19838 div0_binary64_19837 *-inverses_binary64_19836 +-inverses_binary64_19835 lft-mult-inverse_binary64_19834 rgt-mult-inverse_binary64_19833 remove-double-div_binary64_19832 difference-of-sqr--1_binary64_19827 difference-of-sqr-1_binary64_19826 cancel-sign-sub_binary64_19821 distribute-frac-neg_binary64_19819 distribute-lft1-in_binary64_19811
Counts
205 → 152
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02593344
15912815
223822812
344022812
451452812

prune140.0ms (2%)

Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New1511152
Fresh011
Picked011
Done033
Total1516157
Error
0b
Counts
157 → 6
Compiler

Compiled 2518 to 1352 computations (46.3% saved)

regimes688.0ms (9.8%)

Accuracy

Total 0.0b remaining (98.9%)

Threshold costs 0.0b (98.9%)

Compiler

Compiled 4099 to 2903 computations (29.2% saved)

bsearch0.0ms (0%)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_19786
sub-neg_binary64_19849 *-commutative_binary64_19787
1-exp_binary64_19900 neg-mul-1_binary64_19852 neg-sub0_binary64_19851
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_20116 if-if-and_binary64_20115 if-if-or-not_binary64_20114 if-if-or_binary64_20113 if-not_binary64_20112 if-same_binary64_20111 if-false_binary64_20110 if-true_binary64_20109 tan-0_binary64_19985 cos-0_binary64_19984 sin-0_binary64_19983 unpow1_binary64_19914 e-exp-1_binary64_19901 exp-1-e_binary64_19899 exp-0_binary64_19898 sqr-abs_binary64_19871 sqr-neg_binary64_19870 unsub-neg_binary64_19850 mul-1-neg_binary64_19848 /-rgt-identity_binary64_19847 *-rgt-identity_binary64_19846 *-lft-identity_binary64_19845 remove-double-neg_binary64_19844 sub0-neg_binary64_19843 --rgt-identity_binary64_19842 +-rgt-identity_binary64_19841 +-lft-identity_binary64_19840 cancel-sign-sub-inv_binary64_19822 cancel-sign-sub_binary64_19821 distribute-neg-frac_binary64_19820 distribute-frac-neg_binary64_19819 distribute-neg-out_binary64_19818 distribute-neg-in_binary64_19817 distribute-rgt-neg-out_binary64_19816 distribute-lft-neg-out_binary64_19815 distribute-rgt-neg-in_binary64_19814 distribute-lft-neg-in_binary64_19813
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0913
11513
21913
32113
42213
52113

end0.0ms (0%)

sample1.5s (20.9%)

Algorithm
intervals
Results
239.0ms8000×body128valid
30.0ms1059×body128invalid
Compiler

Compiled 1034 to 737 computations (28.7% saved)

Profiling

Loading profile data...