Details

Time bar (total: 11.8s)

analyze326.0ms (2.8%)

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
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
12.5%87.4%0.1%7
25%74.9%0.1%8
28.1%67.9%4%9
40.6%53%6.4%10
49.1%42.9%7.9%11
51.5%37.7%10.8%12
59.1%26.9%14%13
63.7%21.8%14.5%14
Compiler

Compiled 10 to 9 computations (10% saved)

sample18.0ms (0.2%)

Algorithm
intervals
Results
7.0ms250×body128valid
1.0ms22×body128invalid
0.0msbody1024valid
0.0msbody512valid
0.0msbody256valid
Compiler

Compiled 19 to 20 computations (-5.3% saved)

simplify154.0ms (1.3%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_9897
*-commutative_binary64_9898
associate-+l+_binary64_9900 associate-+r+_binary64_9899
distribute-rgt-out_binary64_9920 distribute-rgt-in_binary64_9917 distribute-lft-in_binary64_9916
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_10230 erf-erfc_binary64_10229 erf-odd_binary64_10228 if-if-and-not_binary64_10227 if-if-and_binary64_10226 if-if-or-not_binary64_10225 if-if-or_binary64_10224 if-not_binary64_10223 if-same_binary64_10222 if-false_binary64_10221 if-true_binary64_10220 not-gte_binary64_10219 not-lte_binary64_10218 not-gt_binary64_10217 not-lt_binary64_10216 gte-same_binary64_10215 lte-same_binary64_10214 gt-same_binary64_10213 lt-same_binary64_10212 sinh---cosh_binary64_10159 sinh-+-cosh_binary64_10158 sinh-cosh_binary64_10157 tanh-def-c_binary64_10156 tanh-def-b_binary64_10155 tanh-def-a_binary64_10154 cosh-def_binary64_10153 sinh-def_binary64_10152 tan-neg_binary64_10099 cos-neg_binary64_10098 sin-neg_binary64_10097 tan-0_binary64_10096 cos-0_binary64_10095 sin-0_binary64_10094 hang-m-tan_binary64_10093 hang-p-tan_binary64_10092 hang-m0-tan_binary64_10091 hang-p0-tan_binary64_10090 hang-0m-tan_binary64_10089 hang-0p-tan_binary64_10088 tan-+PI/2_binary64_10087 tan-+PI_binary64_10086 tan-PI_binary64_10085 tan-PI/3_binary64_10084 tan-PI/4_binary64_10083 tan-PI/6_binary64_10082 cos-+PI/2_binary64_10081 cos-+PI_binary64_10080 cos-PI_binary64_10079 cos-PI/2_binary64_10078 cos-PI/3_binary64_10077 cos-PI/4_binary64_10076 cos-PI/6_binary64_10075 sin-+PI/2_binary64_10074 sin-+PI_binary64_10073 sin-PI_binary64_10072 sin-PI/2_binary64_10071 sin-PI/3_binary64_10070 sin-PI/4_binary64_10069 sin-PI/6_binary64_10068 sub-1-sin_binary64_10067 sub-1-cos_binary64_10066 -1-add-sin_binary64_10065 -1-add-cos_binary64_10064 1-sub-sin_binary64_10063 1-sub-cos_binary64_10062 cos-sin-sum_binary64_10061 log-E_binary64_10057 log-pow_binary64_10056 log-rec_binary64_10055 log-div_binary64_10054 log-prod_binary64_10053 pow-base-0_binary64_10051 unpow1/3_binary64_10034 unpow3_binary64_10033 unpow2_binary64_10032 unpow1/2_binary64_10031 pow-plus_binary64_10030 exp-to-pow_binary64_10029 pow-base-1_binary64_10027 unpow0_binary64_10026 unpow1_binary64_10025 unpow-1_binary64_10024 exp-lft-cube_binary64_10023 exp-lft-sqr_binary64_10022 exp-cbrt_binary64_10021 exp-sqrt_binary64_10020 exp-prod_binary64_10019 div-exp_binary64_10018 rec-exp_binary64_10017 prod-exp_binary64_10016 exp-diff_binary64_10015 exp-neg_binary64_10014 exp-sum_binary64_10013 e-exp-1_binary64_10012 1-exp_binary64_10011 exp-1-e_binary64_10010 exp-0_binary64_10009 rem-log-exp_binary64_10008 rem-exp-log_binary64_10007 cube-unmult_binary64_10004 cube-mult_binary64_9997 cube-div_binary64_9996 cube-prod_binary64_9995 cube-neg_binary64_9994 rem-3cbrt-rft_binary64_9993 rem-3cbrt-lft_binary64_9992 rem-cbrt-cube_binary64_9991 rem-cube-cbrt_binary64_9990 sqr-abs_binary64_9982 sqr-neg_binary64_9981 rem-sqrt-square_binary64_9980 rem-square-sqrt_binary64_9979 times-frac_binary64_9973 div-sub_binary64_9972 neg-mul-1_binary64_9963 neg-sub0_binary64_9962 unsub-neg_binary64_9961 sub-neg_binary64_9960 mul-1-neg_binary64_9959 /-rgt-identity_binary64_9958 *-rgt-identity_binary64_9957 *-lft-identity_binary64_9956 remove-double-neg_binary64_9955 sub0-neg_binary64_9954 --rgt-identity_binary64_9953 +-rgt-identity_binary64_9952 +-lft-identity_binary64_9951 mul0-rgt_binary64_9950 mul0-lft_binary64_9949 div0_binary64_9948 *-inverses_binary64_9947 +-inverses_binary64_9946 lft-mult-inverse_binary64_9945 rgt-mult-inverse_binary64_9944 remove-double-div_binary64_9943 pow-sqr_binary64_9940 sqr-pow_binary64_9939 difference-of-sqr--1_binary64_9938 difference-of-sqr-1_binary64_9937 difference-of-squares_binary64_9936 unswap-sqr_binary64_9935 swap-sqr_binary64_9934 cancel-sign-sub-inv_binary64_9933 cancel-sign-sub_binary64_9932 distribute-neg-frac_binary64_9931 distribute-frac-neg_binary64_9930 distribute-neg-out_binary64_9929 distribute-neg-in_binary64_9928 distribute-rgt-neg-out_binary64_9927 distribute-lft-neg-out_binary64_9926 distribute-rgt-neg-in_binary64_9925 distribute-lft-neg-in_binary64_9924 distribute-rgt1-in_binary64_9923 distribute-lft1-in_binary64_9922 distribute-rgt-out--_binary64_9921 distribute-lft-out--_binary64_9919 distribute-lft-out_binary64_9918 count-2_binary64_9915 associate-/l/_binary64_9914 associate-/r/_binary64_9913 associate-/l*_binary64_9912 associate-/r*_binary64_9911 associate-*l/_binary64_9910 associate-*r/_binary64_9909 associate-*l*_binary64_9908 associate-*r*_binary64_9907 associate--r-_binary64_9906 associate--l-_binary64_9905 associate--l+_binary64_9904 associate--r+_binary64_9903 associate-+l-_binary64_9902 associate-+r-_binary64_9901
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0913
11913
22713
33213
43413

prune4.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.1b
Counts
2 → 2
Compiler

Compiled 27 to 24 computations (11.1% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(*.f64 x (+.f64 y z))
0.0b
(+.f64 (*.f64 x (+.f64 y z)) (*.f64 z 5))

rewrite52.0ms (0.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
add-sqr-sqrt_binary64_9989 *-un-lft-identity_binary64_9967
add-log-exp_binary64_10006 pow1_binary64_10028 add-exp-log_binary64_10005 add-cbrt-cube_binary64_10003 add-cube-cbrt_binary64_10002 associate-*r*_binary64_9907
associate-*l*_binary64_9908
flip3-+_binary64_9970 flip-+_binary64_9941 distribute-rgt-in_binary64_9917 associate-+l+_binary64_9900 distribute-lft-in_binary64_9916 associate-*r/_binary64_9909
sum-log_binary64_10058 +-commutative_binary64_9897 pow-prod-down_binary64_10038 prod-exp_binary64_10016 cbrt-unprod_binary64_10000 unswap-sqr_binary64_9935 distribute-lft-out_binary64_9918 *-commutative_binary64_9898
Counts
2 → 36
Calls

2 calls:

10.0ms
(*.f64 x (+.f64 y z))
7.0ms
(+.f64 (*.f64 x (+.f64 y z)) (*.f64 z 5))
Compiler

Compiled 583 to 248 computations (57.5% saved)

series355.0ms (3%)

Error
0.1b
Counts
2 → 33
Calls

2 calls:

209.0ms
(+.f64 (*.f64 x (+.f64 y z)) (*.f64 z 5))
126.0ms
(*.f64 x (+.f64 y z))
Compiler

Compiled 738 to 501 computations (32.1% saved)

simplify133.0ms (1.1%)

Algorithm
egg-herbie
Rules
497×sub-neg_binary64_9960
467×distribute-rgt-in_binary64_9917
453×distribute-lft-in_binary64_9916
230×+-commutative_binary64_9897
219×unswap-sqr_binary64_9935
214×distribute-rgt-neg-in_binary64_9925
207×distribute-neg-in_binary64_9928
196×cancel-sign-sub-inv_binary64_9933
178×*-commutative_binary64_9898
161×associate--r+_binary64_9903
127×sqr-pow_binary64_9939
122×associate--l+_binary64_9904
108×unsub-neg_binary64_9961
104×associate-+l+_binary64_9900
103×associate-+r+_binary64_9899
97×neg-mul-1_binary64_9963
94×associate-*l*_binary64_9908
93×neg-sub0_binary64_9962
92×distribute-lft-neg-in_binary64_9924
82×distribute-rgt-out_binary64_9920
79×associate-*r*_binary64_9907
77×pow-sqr_binary64_9940
73×associate-+l-_binary64_9902
52×associate-+r-_binary64_9901
48×distribute-lft-neg-out_binary64_9926
41×*-rgt-identity_binary64_9957 *-lft-identity_binary64_9956
35×exp-prod_binary64_10019
34×sub0-neg_binary64_9954
26×distribute-rgt-out--_binary64_9921
24×exp-sum_binary64_10013 +-rgt-identity_binary64_9952
17×distribute-rgt-neg-out_binary64_9927
15×distribute-lft-out_binary64_9918
14×log-prod_binary64_10053 swap-sqr_binary64_9934
12×associate--r-_binary64_9906
11×cube-prod_binary64_9995
10×associate-/l*_binary64_9912
unpow3_binary64_10033 cancel-sign-sub_binary64_9932 distribute-neg-out_binary64_9929
cube-mult_binary64_9997 difference-of-squares_binary64_9936 associate-/l/_binary64_9914
log-pow_binary64_10056 pow-plus_binary64_10030 distribute-lft-out--_binary64_9919
associate-*r/_binary64_9909
pow-base-1_binary64_10027 times-frac_binary64_9973
prod-exp_binary64_10016 cube-unmult_binary64_10004
1-exp_binary64_10011 exp-1-e_binary64_10010 rem-log-exp_binary64_10008 /-rgt-identity_binary64_9958 remove-double-neg_binary64_9955 *-inverses_binary64_9947 rgt-mult-inverse_binary64_9944 count-2_binary64_9915 associate-*l/_binary64_9910
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_10230 erf-erfc_binary64_10229 erf-odd_binary64_10228 if-if-and-not_binary64_10227 if-if-and_binary64_10226 if-if-or-not_binary64_10225 if-if-or_binary64_10224 if-not_binary64_10223 if-same_binary64_10222 if-false_binary64_10221 if-true_binary64_10220 not-gte_binary64_10219 not-lte_binary64_10218 not-gt_binary64_10217 not-lt_binary64_10216 gte-same_binary64_10215 lte-same_binary64_10214 gt-same_binary64_10213 lt-same_binary64_10212 sinh---cosh_binary64_10159 sinh-+-cosh_binary64_10158 sinh-cosh_binary64_10157 tanh-def-c_binary64_10156 tanh-def-b_binary64_10155 tanh-def-a_binary64_10154 cosh-def_binary64_10153 sinh-def_binary64_10152 tan-neg_binary64_10099 cos-neg_binary64_10098 sin-neg_binary64_10097 tan-0_binary64_10096 cos-0_binary64_10095 sin-0_binary64_10094 hang-m-tan_binary64_10093 hang-p-tan_binary64_10092 hang-m0-tan_binary64_10091 hang-p0-tan_binary64_10090 hang-0m-tan_binary64_10089 hang-0p-tan_binary64_10088 tan-+PI/2_binary64_10087 tan-+PI_binary64_10086 tan-PI_binary64_10085 tan-PI/3_binary64_10084 tan-PI/4_binary64_10083 tan-PI/6_binary64_10082 cos-+PI/2_binary64_10081 cos-+PI_binary64_10080 cos-PI_binary64_10079 cos-PI/2_binary64_10078 cos-PI/3_binary64_10077 cos-PI/4_binary64_10076 cos-PI/6_binary64_10075 sin-+PI/2_binary64_10074 sin-+PI_binary64_10073 sin-PI_binary64_10072 sin-PI/2_binary64_10071 sin-PI/3_binary64_10070 sin-PI/4_binary64_10069 sin-PI/6_binary64_10068 sub-1-sin_binary64_10067 sub-1-cos_binary64_10066 -1-add-sin_binary64_10065 -1-add-cos_binary64_10064 1-sub-sin_binary64_10063 1-sub-cos_binary64_10062 cos-sin-sum_binary64_10061 log-E_binary64_10057 log-rec_binary64_10055 log-div_binary64_10054 pow-base-0_binary64_10051 unpow1/3_binary64_10034 unpow2_binary64_10032 unpow1/2_binary64_10031 exp-to-pow_binary64_10029 unpow0_binary64_10026 unpow1_binary64_10025 unpow-1_binary64_10024 exp-lft-cube_binary64_10023 exp-lft-sqr_binary64_10022 exp-cbrt_binary64_10021 exp-sqrt_binary64_10020 div-exp_binary64_10018 rec-exp_binary64_10017 exp-diff_binary64_10015 exp-neg_binary64_10014 e-exp-1_binary64_10012 exp-0_binary64_10009 rem-exp-log_binary64_10007 cube-div_binary64_9996 cube-neg_binary64_9994 rem-3cbrt-rft_binary64_9993 rem-3cbrt-lft_binary64_9992 rem-cbrt-cube_binary64_9991 rem-cube-cbrt_binary64_9990 sqr-abs_binary64_9982 sqr-neg_binary64_9981 rem-sqrt-square_binary64_9980 rem-square-sqrt_binary64_9979 div-sub_binary64_9972 mul-1-neg_binary64_9959 --rgt-identity_binary64_9953 +-lft-identity_binary64_9951 mul0-rgt_binary64_9950 mul0-lft_binary64_9949 div0_binary64_9948 +-inverses_binary64_9946 lft-mult-inverse_binary64_9945 remove-double-div_binary64_9943 difference-of-sqr--1_binary64_9938 difference-of-sqr-1_binary64_9937 distribute-neg-frac_binary64_9931 distribute-frac-neg_binary64_9930 distribute-rgt1-in_binary64_9923 distribute-lft1-in_binary64_9922 associate-/r/_binary64_9913 associate-/r*_binary64_9911 associate--l-_binary64_9905
Counts
69 → 85
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
078749
1230722
2779719
32565719
43765719

prune89.0ms (0.8%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New79685
Fresh011
Picked101
Done000
Total80787
Error
0.0b
Counts
87 → 7
Compiler

Compiled 1600 to 674 computations (57.9% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(*.f64 z (+.f64 x 5))
0.0b
(+.f64 (*.f64 x y) (*.f64 z (+.f64 x 5)))

rewrite52.0ms (0.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
add-sqr-sqrt_binary64_9989 *-un-lft-identity_binary64_9967
add-log-exp_binary64_10006 pow1_binary64_10028 add-exp-log_binary64_10005 add-cbrt-cube_binary64_10003 add-cube-cbrt_binary64_10002 associate-*r*_binary64_9907
associate-*l*_binary64_9908
flip3-+_binary64_9970 flip-+_binary64_9941 distribute-rgt-in_binary64_9917 associate-+r+_binary64_9899 distribute-lft-in_binary64_9916 associate-*r/_binary64_9909
sum-log_binary64_10058 +-commutative_binary64_9897 pow-prod-down_binary64_10038 prod-exp_binary64_10016 cbrt-unprod_binary64_10000 unswap-sqr_binary64_9935 distribute-lft-out_binary64_9918 *-commutative_binary64_9898
Counts
2 → 36
Calls

2 calls:

6.0ms
(*.f64 z (+.f64 x 5))
4.0ms
(+.f64 (*.f64 x y) (*.f64 z (+.f64 x 5)))
Compiler

Compiled 583 to 317 computations (45.6% saved)

series342.0ms (2.9%)

Error
0.0b
Counts
2 → 27
Calls

2 calls:

238.0ms
(+.f64 (*.f64 x y) (*.f64 z (+.f64 x 5)))
87.0ms
(*.f64 z (+.f64 x 5))
Compiler

Compiled 597 to 406 computations (32% saved)

simplify116.0ms (1%)

Algorithm
egg-herbie
Rules
605×sub-neg_binary64_9960
517×distribute-rgt-in_binary64_9917
504×distribute-lft-in_binary64_9916
247×associate--r+_binary64_9903
235×cancel-sign-sub-inv_binary64_9933
213×associate--l+_binary64_9904
172×*-commutative_binary64_9898
149×distribute-neg-in_binary64_9928
136×unsub-neg_binary64_9961
134×neg-mul-1_binary64_9963
130×neg-sub0_binary64_9962
120×associate-+l+_binary64_9900
116×distribute-rgt-neg-in_binary64_9925
101×associate-+r+_binary64_9899
96×distribute-lft-neg-in_binary64_9924
93×associate-*l*_binary64_9908
83×distribute-rgt-out_binary64_9920
82×associate-*r*_binary64_9907
76×associate-+l-_binary64_9902
70×sqr-pow_binary64_9939
65×associate-+r-_binary64_9901
63×unswap-sqr_binary64_9935
52×distribute-lft-neg-out_binary64_9926
40×exp-prod_binary64_10019
37×pow-sqr_binary64_9940 distribute-rgt-neg-out_binary64_9927
33×distribute-rgt-out--_binary64_9921
30×*-rgt-identity_binary64_9957
28×*-lft-identity_binary64_9956
19×+-commutative_binary64_9897
17×exp-sum_binary64_10013
16×swap-sqr_binary64_9934
15×log-prod_binary64_10053
14×cube-prod_binary64_9995
12×distribute-lft-out_binary64_9918
10×associate-/l*_binary64_9912
unpow3_binary64_10033
+-rgt-identity_binary64_9952
cube-mult_binary64_9997 associate-/l/_binary64_9914
log-pow_binary64_10056 pow-plus_binary64_10030 distribute-lft-out--_binary64_9919 associate--r-_binary64_9906
sub0-neg_binary64_9954 difference-of-squares_binary64_9936 associate-*r/_binary64_9909
pow-base-1_binary64_10027 times-frac_binary64_9973
prod-exp_binary64_10016 cube-unmult_binary64_10004
1-exp_binary64_10011 exp-1-e_binary64_10010 rem-log-exp_binary64_10008 count-2_binary64_9915 associate-*l/_binary64_9910
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_10230 erf-erfc_binary64_10229 erf-odd_binary64_10228 if-if-and-not_binary64_10227 if-if-and_binary64_10226 if-if-or-not_binary64_10225 if-if-or_binary64_10224 if-not_binary64_10223 if-same_binary64_10222 if-false_binary64_10221 if-true_binary64_10220 not-gte_binary64_10219 not-lte_binary64_10218 not-gt_binary64_10217 not-lt_binary64_10216 gte-same_binary64_10215 lte-same_binary64_10214 gt-same_binary64_10213 lt-same_binary64_10212 sinh---cosh_binary64_10159 sinh-+-cosh_binary64_10158 sinh-cosh_binary64_10157 tanh-def-c_binary64_10156 tanh-def-b_binary64_10155 tanh-def-a_binary64_10154 cosh-def_binary64_10153 sinh-def_binary64_10152 tan-neg_binary64_10099 cos-neg_binary64_10098 sin-neg_binary64_10097 tan-0_binary64_10096 cos-0_binary64_10095 sin-0_binary64_10094 hang-m-tan_binary64_10093 hang-p-tan_binary64_10092 hang-m0-tan_binary64_10091 hang-p0-tan_binary64_10090 hang-0m-tan_binary64_10089 hang-0p-tan_binary64_10088 tan-+PI/2_binary64_10087 tan-+PI_binary64_10086 tan-PI_binary64_10085 tan-PI/3_binary64_10084 tan-PI/4_binary64_10083 tan-PI/6_binary64_10082 cos-+PI/2_binary64_10081 cos-+PI_binary64_10080 cos-PI_binary64_10079 cos-PI/2_binary64_10078 cos-PI/3_binary64_10077 cos-PI/4_binary64_10076 cos-PI/6_binary64_10075 sin-+PI/2_binary64_10074 sin-+PI_binary64_10073 sin-PI_binary64_10072 sin-PI/2_binary64_10071 sin-PI/3_binary64_10070 sin-PI/4_binary64_10069 sin-PI/6_binary64_10068 sub-1-sin_binary64_10067 sub-1-cos_binary64_10066 -1-add-sin_binary64_10065 -1-add-cos_binary64_10064 1-sub-sin_binary64_10063 1-sub-cos_binary64_10062 cos-sin-sum_binary64_10061 log-E_binary64_10057 log-rec_binary64_10055 log-div_binary64_10054 pow-base-0_binary64_10051 unpow1/3_binary64_10034 unpow2_binary64_10032 unpow1/2_binary64_10031 exp-to-pow_binary64_10029 unpow0_binary64_10026 unpow1_binary64_10025 unpow-1_binary64_10024 exp-lft-cube_binary64_10023 exp-lft-sqr_binary64_10022 exp-cbrt_binary64_10021 exp-sqrt_binary64_10020 div-exp_binary64_10018 rec-exp_binary64_10017 exp-diff_binary64_10015 exp-neg_binary64_10014 e-exp-1_binary64_10012 exp-0_binary64_10009 rem-exp-log_binary64_10007 cube-div_binary64_9996 cube-neg_binary64_9994 rem-3cbrt-rft_binary64_9993 rem-3cbrt-lft_binary64_9992 rem-cbrt-cube_binary64_9991 rem-cube-cbrt_binary64_9990 sqr-abs_binary64_9982 sqr-neg_binary64_9981 rem-sqrt-square_binary64_9980 rem-square-sqrt_binary64_9979 div-sub_binary64_9972 mul-1-neg_binary64_9959 /-rgt-identity_binary64_9958 remove-double-neg_binary64_9955 --rgt-identity_binary64_9953 +-lft-identity_binary64_9951 mul0-rgt_binary64_9950 mul0-lft_binary64_9949 div0_binary64_9948 *-inverses_binary64_9947 +-inverses_binary64_9946 lft-mult-inverse_binary64_9945 rgt-mult-inverse_binary64_9944 remove-double-div_binary64_9943 difference-of-sqr--1_binary64_9938 difference-of-sqr-1_binary64_9937 cancel-sign-sub_binary64_9932 distribute-neg-frac_binary64_9931 distribute-frac-neg_binary64_9930 distribute-neg-out_binary64_9929 distribute-rgt1-in_binary64_9923 distribute-lft1-in_binary64_9922 associate-/r/_binary64_9913 associate-/r*_binary64_9911 associate--l-_binary64_9905
Counts
63 → 93
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
075713
1226686
2815686
32849686
44212686

prune98.0ms (0.8%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New89493
Fresh336
Picked011
Done000
Total928100
Error
0.0b
Counts
100 → 8
Compiler

Compiled 1742 to 888 computations (49% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.5b
(*.f64 (cbrt.f64 (*.f64 x (+.f64 y z))) (cbrt.f64 (*.f64 x (+.f64 y z))))
2.8b
(cbrt.f64 (*.f64 x (+.f64 y z)))
2.8b
(cbrt.f64 (*.f64 x (+.f64 y z)))
2.8b
(cbrt.f64 (*.f64 x (+.f64 z y)))

rewrite114.0ms (1%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
20×associate-*r/_binary64_9909
18×cbrt-div_binary64_9999
11×pow1_binary64_10028
10×add-sqr-sqrt_binary64_9989
pow1/3_binary64_10049 flip3-+_binary64_9970 flip-+_binary64_9941
add-cube-cbrt_binary64_10002 *-un-lft-identity_binary64_9967
cbrt-prod_binary64_9998
add-exp-log_binary64_10005
add-log-exp_binary64_10006 add-cbrt-cube_binary64_10003 frac-times_binary64_9977 swap-sqr_binary64_9934 associate-*l*_binary64_9908 associate-*r*_binary64_9907
pow-prod-down_binary64_10038 pow-prod-up_binary64_10037 pow-sqr_binary64_9940 associate-*l/_binary64_9910
pow2_binary64_10048 pow-plus_binary64_10030 prod-exp_binary64_10016 cbrt-unprod_binary64_10000 unswap-sqr_binary64_9935 *-commutative_binary64_9898
Counts
4 → 72
Calls

4 calls:

7.0ms
(*.f64 (cbrt.f64 (*.f64 x (+.f64 y z))) (cbrt.f64 (*.f64 x (+.f64 y z))))
5.0ms
(cbrt.f64 (*.f64 x (+.f64 y z)))
4.0ms
(cbrt.f64 (*.f64 x (+.f64 z y)))
4.0ms
(cbrt.f64 (*.f64 x (+.f64 y z)))
Compiler

Compiled 2315 to 546 computations (76.4% saved)

series1.8s (15.5%)

Error
0.0b
Counts
4 → 73
Calls

4 calls:

486.0ms
(*.f64 (cbrt.f64 (*.f64 x (+.f64 y z))) (cbrt.f64 (*.f64 x (+.f64 y z))))
407.0ms
(cbrt.f64 (*.f64 x (+.f64 z y)))
402.0ms
(cbrt.f64 (*.f64 x (+.f64 y z)))
390.0ms
(cbrt.f64 (*.f64 x (+.f64 y z)))
Compiler

Compiled 7476 to 5098 computations (31.8% saved)

simplify1.3s (10.9%)

Algorithm
egg-herbie
Rules
344×times-frac_binary64_9973
330×associate-/l*_binary64_9912
322×exp-prod_binary64_10019
297×*-commutative_binary64_9898
200×associate-/r*_binary64_9911
185×distribute-rgt-in_binary64_9917
174×associate-*l/_binary64_9910
166×distribute-lft-in_binary64_9916
139×associate-*r*_binary64_9907
120×associate-*r/_binary64_9909
116×associate-/r/_binary64_9913
115×associate-*l*_binary64_9908
104×sqr-pow_binary64_9939
98×cancel-sign-sub-inv_binary64_9933
81×+-commutative_binary64_9897
73×distribute-rgt-neg-in_binary64_9925
70×unswap-sqr_binary64_9935
69×sub-neg_binary64_9960
66×log-prod_binary64_10053
65×distribute-lft-neg-in_binary64_9924
60×exp-sum_binary64_10013
58×log-div_binary64_10054
56×exp-sqrt_binary64_10020
52×exp-to-pow_binary64_10029
44×distribute-lft-neg-out_binary64_9926
43×associate-+r-_binary64_9901
40×associate-+l-_binary64_9902
39×associate-/l/_binary64_9914
38×neg-mul-1_binary64_9963 associate-+r+_binary64_9899
37×pow-sqr_binary64_9940 associate-+l+_binary64_9900
36×neg-sub0_binary64_9962
34×associate--l+_binary64_9904
32×distribute-neg-frac_binary64_9931
28×unpow1/3_binary64_10034
27×unsub-neg_binary64_9961 distribute-rgt-neg-out_binary64_9927
22×exp-lft-sqr_binary64_10022
18×*-rgt-identity_binary64_9957
16×distribute-lft-out_binary64_9918 associate--r+_binary64_9903
15×log-pow_binary64_10056 pow-plus_binary64_10030 *-lft-identity_binary64_9956
14×distribute-neg-out_binary64_9929 distribute-rgt-out_binary64_9920 associate--r-_binary64_9906
12×exp-diff_binary64_10015 div-sub_binary64_9972 distribute-rgt-out--_binary64_9921
10×difference-of-squares_binary64_9936
log-rec_binary64_10055 cube-prod_binary64_9995 distribute-neg-in_binary64_9928 associate--l-_binary64_9905
swap-sqr_binary64_9934
unpow3_binary64_10033 unpow2_binary64_10032 cube-unmult_binary64_10004 /-rgt-identity_binary64_9958 remove-double-neg_binary64_9955 distribute-lft-out--_binary64_9919
unpow1_binary64_10025 count-2_binary64_9915
rem-sqrt-square_binary64_9980
cube-div_binary64_9996 rem-3cbrt-lft_binary64_9992
cube-mult_binary64_9997 --rgt-identity_binary64_9953
pow-base-1_binary64_10027 prod-exp_binary64_10016 1-exp_binary64_10011 exp-1-e_binary64_10010 rem-log-exp_binary64_10008 rem-3cbrt-rft_binary64_9993 rem-square-sqrt_binary64_9979 mul-1-neg_binary64_9959 *-inverses_binary64_9947 distribute-lft1-in_binary64_9922
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_10230 erf-erfc_binary64_10229 erf-odd_binary64_10228 if-if-and-not_binary64_10227 if-if-and_binary64_10226 if-if-or-not_binary64_10225 if-if-or_binary64_10224 if-not_binary64_10223 if-same_binary64_10222 if-false_binary64_10221 if-true_binary64_10220 not-gte_binary64_10219 not-lte_binary64_10218 not-gt_binary64_10217 not-lt_binary64_10216 gte-same_binary64_10215 lte-same_binary64_10214 gt-same_binary64_10213 lt-same_binary64_10212 sinh---cosh_binary64_10159 sinh-+-cosh_binary64_10158 sinh-cosh_binary64_10157 tanh-def-c_binary64_10156 tanh-def-b_binary64_10155 tanh-def-a_binary64_10154 cosh-def_binary64_10153 sinh-def_binary64_10152 tan-neg_binary64_10099 cos-neg_binary64_10098 sin-neg_binary64_10097 tan-0_binary64_10096 cos-0_binary64_10095 sin-0_binary64_10094 hang-m-tan_binary64_10093 hang-p-tan_binary64_10092 hang-m0-tan_binary64_10091 hang-p0-tan_binary64_10090 hang-0m-tan_binary64_10089 hang-0p-tan_binary64_10088 tan-+PI/2_binary64_10087 tan-+PI_binary64_10086 tan-PI_binary64_10085 tan-PI/3_binary64_10084 tan-PI/4_binary64_10083 tan-PI/6_binary64_10082 cos-+PI/2_binary64_10081 cos-+PI_binary64_10080 cos-PI_binary64_10079 cos-PI/2_binary64_10078 cos-PI/3_binary64_10077 cos-PI/4_binary64_10076 cos-PI/6_binary64_10075 sin-+PI/2_binary64_10074 sin-+PI_binary64_10073 sin-PI_binary64_10072 sin-PI/2_binary64_10071 sin-PI/3_binary64_10070 sin-PI/4_binary64_10069 sin-PI/6_binary64_10068 sub-1-sin_binary64_10067 sub-1-cos_binary64_10066 -1-add-sin_binary64_10065 -1-add-cos_binary64_10064 1-sub-sin_binary64_10063 1-sub-cos_binary64_10062 cos-sin-sum_binary64_10061 log-E_binary64_10057 pow-base-0_binary64_10051 unpow1/2_binary64_10031 unpow0_binary64_10026 unpow-1_binary64_10024 exp-lft-cube_binary64_10023 exp-cbrt_binary64_10021 div-exp_binary64_10018 rec-exp_binary64_10017 exp-neg_binary64_10014 e-exp-1_binary64_10012 exp-0_binary64_10009 rem-exp-log_binary64_10007 cube-neg_binary64_9994 rem-cbrt-cube_binary64_9991 rem-cube-cbrt_binary64_9990 sqr-abs_binary64_9982 sqr-neg_binary64_9981 sub0-neg_binary64_9954 +-rgt-identity_binary64_9952 +-lft-identity_binary64_9951 mul0-rgt_binary64_9950 mul0-lft_binary64_9949 div0_binary64_9948 +-inverses_binary64_9946 lft-mult-inverse_binary64_9945 rgt-mult-inverse_binary64_9944 remove-double-div_binary64_9943 difference-of-sqr--1_binary64_9938 difference-of-sqr-1_binary64_9937 cancel-sign-sub_binary64_9932 distribute-frac-neg_binary64_9930 distribute-rgt1-in_binary64_9923
Counts
145 → 416
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02594043
16373770
218113608
345953251

prune978.0ms (8.3%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New4160416
Fresh066
Picked011
Done011
Total4168424
Error
0.0b
Counts
424 → 8
Compiler

Compiled 15643 to 5309 computations (66.1% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.5b
(*.f64 (cbrt.f64 (*.f64 z (+.f64 x 5))) (cbrt.f64 (*.f64 z (+.f64 x 5))))
0.6b
(cbrt.f64 (*.f64 z (+.f64 5 x)))
0.6b
(cbrt.f64 (*.f64 z (+.f64 x 5)))
0.6b
(cbrt.f64 (*.f64 z (+.f64 x 5)))

rewrite142.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
20×associate-*r/_binary64_9909
18×cbrt-div_binary64_9999
11×pow1_binary64_10028
10×add-sqr-sqrt_binary64_9989
pow1/3_binary64_10049 flip3-+_binary64_9970 flip-+_binary64_9941
add-cube-cbrt_binary64_10002 *-un-lft-identity_binary64_9967
cbrt-prod_binary64_9998
add-exp-log_binary64_10005
add-log-exp_binary64_10006 add-cbrt-cube_binary64_10003 frac-times_binary64_9977 swap-sqr_binary64_9934 associate-*l*_binary64_9908 associate-*r*_binary64_9907
pow-prod-down_binary64_10038 pow-prod-up_binary64_10037 pow-sqr_binary64_9940 associate-*l/_binary64_9910
pow2_binary64_10048 pow-plus_binary64_10030 prod-exp_binary64_10016 cbrt-unprod_binary64_10000 unswap-sqr_binary64_9935 *-commutative_binary64_9898
Counts
4 → 72
Calls

4 calls:

7.0ms
(*.f64 (cbrt.f64 (*.f64 z (+.f64 x 5))) (cbrt.f64 (*.f64 z (+.f64 x 5))))
5.0ms
(cbrt.f64 (*.f64 z (+.f64 5 x)))
4.0ms
(cbrt.f64 (*.f64 z (+.f64 x 5)))
4.0ms
(cbrt.f64 (*.f64 z (+.f64 x 5)))
Compiler

Compiled 2315 to 1537 computations (33.6% saved)

series1.2s (10.1%)

Error
0.0b
Counts
4 → 38
Calls

4 calls:

355.0ms
(*.f64 (cbrt.f64 (*.f64 z (+.f64 x 5))) (cbrt.f64 (*.f64 z (+.f64 x 5))))
258.0ms
(cbrt.f64 (*.f64 z (+.f64 x 5)))
257.0ms
(cbrt.f64 (*.f64 z (+.f64 5 x)))
255.0ms
(cbrt.f64 (*.f64 z (+.f64 x 5)))
Compiler

Compiled 3735 to 2987 computations (20% saved)

simplify2.0s (17.2%)

Algorithm
egg-herbie
Rules
447×associate-*r*_binary64_9907
317×exp-prod_binary64_10019
280×cancel-sign-sub-inv_binary64_9933
212×unswap-sqr_binary64_9935
165×distribute-rgt-in_binary64_9917
157×*-commutative_binary64_9898
154×exp-sum_binary64_10013
151×unsub-neg_binary64_9961
148×distribute-lft-in_binary64_9916
136×sub-neg_binary64_9960
133×div-sub_binary64_9972
124×sqr-pow_binary64_9939
88×associate-*l/_binary64_9910
86×associate-*l*_binary64_9908
85×times-frac_binary64_9973
81×log-prod_binary64_10053
78×distribute-neg-frac_binary64_9931
77×distribute-neg-out_binary64_9929
74×exp-diff_binary64_10015 associate-/r*_binary64_9911
68×swap-sqr_binary64_9934
67×neg-sub0_binary64_9962
66×neg-mul-1_binary64_9963
54×associate-/l*_binary64_9912
53×+-commutative_binary64_9897
50×cube-prod_binary64_9995
49×log-div_binary64_10054 associate-*r/_binary64_9909
46×exp-sqrt_binary64_10020
44×pow-sqr_binary64_9940
41×distribute-rgt-neg-in_binary64_9925
40×exp-to-pow_binary64_10029
39×exp-lft-sqr_binary64_10022
34×*-lft-identity_binary64_9956 distribute-lft-neg-in_binary64_9924
31×associate-+r-_binary64_9901
30×distribute-lft-neg-out_binary64_9926
29×cube-div_binary64_9996
28×associate-+l-_binary64_9902 associate-+l+_binary64_9900
27×*-rgt-identity_binary64_9957
25×associate-+r+_binary64_9899
22×exp-neg_binary64_10014
21×+-rgt-identity_binary64_9952 associate--l+_binary64_9904
19×unpow1/3_binary64_10034 distribute-rgt-neg-out_binary64_9927 associate-/r/_binary64_9913
17×distribute-frac-neg_binary64_9930
16×distribute-rgt-out_binary64_9920
15×sub0-neg_binary64_9954
14×log-pow_binary64_10056 pow-plus_binary64_10030
12×distribute-rgt-out--_binary64_9921
10×associate--r+_binary64_9903
distribute-lft-out_binary64_9918 associate--r-_binary64_9906
log-rec_binary64_10055 associate-/l/_binary64_9914
unpow3_binary64_10033 cube-unmult_binary64_10004 /-rgt-identity_binary64_9958 distribute-neg-in_binary64_9928
unpow2_binary64_10032 rem-exp-log_binary64_10007 cube-mult_binary64_9997 rem-sqrt-square_binary64_9980 remove-double-neg_binary64_9955 distribute-lft-out--_binary64_9919 count-2_binary64_9915 associate--l-_binary64_9905
unpow1_binary64_10025 prod-exp_binary64_10016 difference-of-squares_binary64_9936
rem-3cbrt-lft_binary64_9992 --rgt-identity_binary64_9953 mul0-lft_binary64_9949
distribute-rgt1-in_binary64_9923
pow-base-1_binary64_10027 1-exp_binary64_10011 exp-1-e_binary64_10010 rem-log-exp_binary64_10008 rem-3cbrt-rft_binary64_9993 rem-square-sqrt_binary64_9979 mul-1-neg_binary64_9959 mul0-rgt_binary64_9950 *-inverses_binary64_9947 +-inverses_binary64_9946 distribute-lft1-in_binary64_9922
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_10230 erf-erfc_binary64_10229 erf-odd_binary64_10228 if-if-and-not_binary64_10227 if-if-and_binary64_10226 if-if-or-not_binary64_10225 if-if-or_binary64_10224 if-not_binary64_10223 if-same_binary64_10222 if-false_binary64_10221 if-true_binary64_10220 not-gte_binary64_10219 not-lte_binary64_10218 not-gt_binary64_10217 not-lt_binary64_10216 gte-same_binary64_10215 lte-same_binary64_10214 gt-same_binary64_10213 lt-same_binary64_10212 sinh---cosh_binary64_10159 sinh-+-cosh_binary64_10158 sinh-cosh_binary64_10157 tanh-def-c_binary64_10156 tanh-def-b_binary64_10155 tanh-def-a_binary64_10154 cosh-def_binary64_10153 sinh-def_binary64_10152 tan-neg_binary64_10099 cos-neg_binary64_10098 sin-neg_binary64_10097 tan-0_binary64_10096 cos-0_binary64_10095 sin-0_binary64_10094 hang-m-tan_binary64_10093 hang-p-tan_binary64_10092 hang-m0-tan_binary64_10091 hang-p0-tan_binary64_10090 hang-0m-tan_binary64_10089 hang-0p-tan_binary64_10088 tan-+PI/2_binary64_10087 tan-+PI_binary64_10086 tan-PI_binary64_10085 tan-PI/3_binary64_10084 tan-PI/4_binary64_10083 tan-PI/6_binary64_10082 cos-+PI/2_binary64_10081 cos-+PI_binary64_10080 cos-PI_binary64_10079 cos-PI/2_binary64_10078 cos-PI/3_binary64_10077 cos-PI/4_binary64_10076 cos-PI/6_binary64_10075 sin-+PI/2_binary64_10074 sin-+PI_binary64_10073 sin-PI_binary64_10072 sin-PI/2_binary64_10071 sin-PI/3_binary64_10070 sin-PI/4_binary64_10069 sin-PI/6_binary64_10068 sub-1-sin_binary64_10067 sub-1-cos_binary64_10066 -1-add-sin_binary64_10065 -1-add-cos_binary64_10064 1-sub-sin_binary64_10063 1-sub-cos_binary64_10062 cos-sin-sum_binary64_10061 log-E_binary64_10057 pow-base-0_binary64_10051 unpow1/2_binary64_10031 unpow0_binary64_10026 unpow-1_binary64_10024 exp-lft-cube_binary64_10023 exp-cbrt_binary64_10021 div-exp_binary64_10018 rec-exp_binary64_10017 e-exp-1_binary64_10012 exp-0_binary64_10009 cube-neg_binary64_9994 rem-cbrt-cube_binary64_9991 rem-cube-cbrt_binary64_9990 sqr-abs_binary64_9982 sqr-neg_binary64_9981 +-lft-identity_binary64_9951 div0_binary64_9948 lft-mult-inverse_binary64_9945 rgt-mult-inverse_binary64_9944 remove-double-div_binary64_9943 difference-of-sqr--1_binary64_9938 difference-of-sqr-1_binary64_9937 cancel-sign-sub_binary64_9932
Counts
110 → 266
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01922502
14172332
210802117
329201739

prune594.0ms (5%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New2651266
Fresh055
Picked011
Done022
Total2659274
Error
0.0b
Counts
274 → 9
Compiler

Compiled 8630 to 5677 computations (34.2% saved)

regimes403.0ms (3.4%)

Accuracy

Total 0.1b remaining (94.9%)

Threshold costs 0.1b (94.9%)

Compiler

Compiled 3808 to 2878 computations (24.4% saved)

bsearch0.0ms (0%)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_9898 +-commutative_binary64_9897
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_10227 if-if-and_binary64_10226 if-if-or-not_binary64_10225 if-if-or_binary64_10224 if-not_binary64_10223 if-same_binary64_10222 if-false_binary64_10221 if-true_binary64_10220 tan-0_binary64_10096 cos-0_binary64_10095 sin-0_binary64_10094 unpow1_binary64_10025 e-exp-1_binary64_10012 1-exp_binary64_10011 exp-1-e_binary64_10010 exp-0_binary64_10009 sqr-abs_binary64_9982 sqr-neg_binary64_9981 neg-mul-1_binary64_9963 neg-sub0_binary64_9962 unsub-neg_binary64_9961 sub-neg_binary64_9960 mul-1-neg_binary64_9959 /-rgt-identity_binary64_9958 *-rgt-identity_binary64_9957 *-lft-identity_binary64_9956 remove-double-neg_binary64_9955 sub0-neg_binary64_9954 --rgt-identity_binary64_9953 +-rgt-identity_binary64_9952 +-lft-identity_binary64_9951 cancel-sign-sub-inv_binary64_9933 cancel-sign-sub_binary64_9932 distribute-neg-frac_binary64_9931 distribute-frac-neg_binary64_9930 distribute-neg-out_binary64_9929 distribute-neg-in_binary64_9928 distribute-rgt-neg-out_binary64_9927 distribute-lft-neg-out_binary64_9926 distribute-rgt-neg-in_binary64_9925 distribute-lft-neg-in_binary64_9924
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0913
11313
Proof
(+ f64 (* f64 h0 (+ f64 h1 h2)) (* f64 h2 5))

end0.0ms (0%)

sample1.5s (12.3%)

Algorithm
intervals
Results
217.0ms7687×body128valid
18.0ms685×body128invalid
14.0ms157×body1024valid
7.0ms97×body512valid
3.0ms57×body256valid
0.0msbody2048valid
Compiler

Compiled 974 to 739 computations (24.1% saved)

Profiling

Loading profile data...