Details

Time bar (total: 2.9s)

analyze930.0ms (32%)

Algorithm
search
egg-herbie
Rules
773×unsub-neg_binary64_12007
756×sub-neg_binary64_12006
508×neg-sub0_binary64_12008
463×neg-mul-1_binary64_12009
419×distribute-lft-out--_binary64_11965
390×*-commutative_binary64_11944
354×distribute-neg-out_binary64_11975
347×+-commutative_binary64_11943
298×distribute-neg-in_binary64_11974
291×distribute-lft-neg-out_binary64_11972
260×distribute-rgt-neg-in_binary64_11971
236×associate-*l*_binary64_11954
204×remove-double-neg_binary64_12001
196×distribute-lft-neg-in_binary64_11970
183×associate-+r+_binary64_11945
182×distribute-rgt-out--_binary64_11967
169×associate--l+_binary64_11950
158×distribute-rgt-in_binary64_11963
153×distribute-rgt-neg-out_binary64_11973
152×associate-+l+_binary64_11946
150×associate--r+_binary64_11949
146×distribute-rgt-out_binary64_11966
136×associate-+r-_binary64_11947
130×cancel-sign-sub-inv_binary64_11979
129×associate-+l-_binary64_11948
127×associate-*r*_binary64_11953
108×distribute-lft-out_binary64_11964
80×distribute-lft-in_binary64_11962
69×associate--l-_binary64_11951
55×associate--r-_binary64_11952
42×sub0-neg_binary64_12000
25×*-lft-identity_binary64_12002
21×*-rgt-identity_binary64_12003 mul0-rgt_binary64_11996 mul0-lft_binary64_11995
19×difference-of-squares_binary64_11982
15×--rgt-identity_binary64_11999
11×+-rgt-identity_binary64_11998
sqr-neg_binary64_12027
mul-1-neg_binary64_12005 +-inverses_binary64_11992 distribute-lft1-in_binary64_11968 count-2_binary64_11961
+-lft-identity_binary64_11997 cancel-sign-sub_binary64_11978
swap-sqr_binary64_11980 distribute-rgt1-in_binary64_11969
1-exp_binary64_12057
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_12276 erf-erfc_binary64_12275 erf-odd_binary64_12274 if-if-and-not_binary64_12273 if-if-and_binary64_12272 if-if-or-not_binary64_12271 if-if-or_binary64_12270 if-not_binary64_12269 if-same_binary64_12268 if-false_binary64_12267 if-true_binary64_12266 not-gte_binary64_12265 not-lte_binary64_12264 not-gt_binary64_12263 not-lt_binary64_12262 gte-same_binary64_12261 lte-same_binary64_12260 gt-same_binary64_12259 lt-same_binary64_12258 sinh---cosh_binary64_12205 sinh-+-cosh_binary64_12204 sinh-cosh_binary64_12203 tanh-def-c_binary64_12202 tanh-def-b_binary64_12201 tanh-def-a_binary64_12200 cosh-def_binary64_12199 sinh-def_binary64_12198 tan-neg_binary64_12145 cos-neg_binary64_12144 sin-neg_binary64_12143 tan-0_binary64_12142 cos-0_binary64_12141 sin-0_binary64_12140 hang-m-tan_binary64_12139 hang-p-tan_binary64_12138 hang-m0-tan_binary64_12137 hang-p0-tan_binary64_12136 hang-0m-tan_binary64_12135 hang-0p-tan_binary64_12134 tan-+PI/2_binary64_12133 tan-+PI_binary64_12132 tan-PI_binary64_12131 tan-PI/3_binary64_12130 tan-PI/4_binary64_12129 tan-PI/6_binary64_12128 cos-+PI/2_binary64_12127 cos-+PI_binary64_12126 cos-PI_binary64_12125 cos-PI/2_binary64_12124 cos-PI/3_binary64_12123 cos-PI/4_binary64_12122 cos-PI/6_binary64_12121 sin-+PI/2_binary64_12120 sin-+PI_binary64_12119 sin-PI_binary64_12118 sin-PI/2_binary64_12117 sin-PI/3_binary64_12116 sin-PI/4_binary64_12115 sin-PI/6_binary64_12114 sub-1-sin_binary64_12113 sub-1-cos_binary64_12112 -1-add-sin_binary64_12111 -1-add-cos_binary64_12110 1-sub-sin_binary64_12109 1-sub-cos_binary64_12108 cos-sin-sum_binary64_12107 log-E_binary64_12103 log-pow_binary64_12102 log-rec_binary64_12101 log-div_binary64_12100 log-prod_binary64_12099 pow-base-0_binary64_12097 unpow1/3_binary64_12080 unpow3_binary64_12079 unpow2_binary64_12078 unpow1/2_binary64_12077 pow-plus_binary64_12076 exp-to-pow_binary64_12075 pow-base-1_binary64_12073 unpow0_binary64_12072 unpow1_binary64_12071 unpow-1_binary64_12070 exp-lft-cube_binary64_12069 exp-lft-sqr_binary64_12068 exp-cbrt_binary64_12067 exp-sqrt_binary64_12066 exp-prod_binary64_12065 div-exp_binary64_12064 rec-exp_binary64_12063 prod-exp_binary64_12062 exp-diff_binary64_12061 exp-neg_binary64_12060 exp-sum_binary64_12059 e-exp-1_binary64_12058 exp-1-e_binary64_12056 exp-0_binary64_12055 rem-log-exp_binary64_12054 rem-exp-log_binary64_12053 cube-unmult_binary64_12050 cube-mult_binary64_12043 cube-div_binary64_12042 cube-prod_binary64_12041 cube-neg_binary64_12040 rem-3cbrt-rft_binary64_12039 rem-3cbrt-lft_binary64_12038 rem-cbrt-cube_binary64_12037 rem-cube-cbrt_binary64_12036 sqr-abs_binary64_12028 rem-sqrt-square_binary64_12026 rem-square-sqrt_binary64_12025 times-frac_binary64_12019 div-sub_binary64_12018 /-rgt-identity_binary64_12004 div0_binary64_11994 *-inverses_binary64_11993 lft-mult-inverse_binary64_11991 rgt-mult-inverse_binary64_11990 remove-double-div_binary64_11989 pow-sqr_binary64_11986 sqr-pow_binary64_11985 difference-of-sqr--1_binary64_11984 difference-of-sqr-1_binary64_11983 unswap-sqr_binary64_11981 distribute-neg-frac_binary64_11977 distribute-frac-neg_binary64_11976 associate-/l/_binary64_11960 associate-/r/_binary64_11959 associate-/l*_binary64_11958 associate-/r*_binary64_11957 associate-*l/_binary64_11956 associate-*r/_binary64_11955
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02488
17640
222828
352828
4178228
5312528
6394228
7422228
8437828
9437828
10501928
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
12.5%87.4%0.1%7
18.7%81.1%0.1%8
34.3%65.5%0.1%9
39%60.8%0.1%10
41.3%58.5%0.1%11
52.7%47.2%0.1%12
54%45.7%0.2%13
55.3%43.8%0.9%14
Compiler

Compiled 16 to 10 computations (37.5% saved)

sample32.0ms (1.1%)

Algorithm
intervals
Results
6.0ms18×body2048valid
6.0ms183×body128valid
3.0ms25×body1024valid
2.0ms24×body512valid
1.0ms39×body128invalid
1.0msbody512invalid
0.0msbody1024invalid
0.0msbody256valid
0.0msbody256invalid
Compiler

Compiled 31 to 22 computations (29% saved)

simplify244.0ms (8.4%)

Algorithm
egg-herbie
Rules
2037×distribute-rgt-out--_binary64_11967
762×unsub-neg_binary64_12007
515×distribute-lft-out_binary64_11964
498×distribute-lft-out--_binary64_11965
472×*-commutative_binary64_11944
420×sub-neg_binary64_12006
394×+-commutative_binary64_11943
392×distribute-neg-out_binary64_11975
270×distribute-rgt-neg-in_binary64_11971
248×distribute-neg-in_binary64_11974
225×neg-sub0_binary64_12008 distribute-lft-neg-in_binary64_11970
214×neg-mul-1_binary64_12009
187×associate-*l*_binary64_11954
178×cancel-sign-sub-inv_binary64_11979
162×associate--l+_binary64_11950
146×associate--r+_binary64_11949
141×distribute-lft-neg-out_binary64_11972
114×associate-+l-_binary64_11948 associate-+l+_binary64_11946
110×associate--r-_binary64_11952
103×associate-*r*_binary64_11953 associate-+r+_binary64_11945
102×associate--l-_binary64_11951
98×distribute-rgt-out_binary64_11966
87×associate-+r-_binary64_11947
78×distribute-rgt-neg-out_binary64_11973
54×remove-double-neg_binary64_12001
38×sub0-neg_binary64_12000
29×*-lft-identity_binary64_12002 distribute-rgt-in_binary64_11963
19×distribute-lft-in_binary64_11962
15×*-rgt-identity_binary64_12003
14×--rgt-identity_binary64_11999
13×mul0-rgt_binary64_11996 mul0-lft_binary64_11995
distribute-rgt1-in_binary64_11969
mul-1-neg_binary64_12005 distribute-lft1-in_binary64_11968
+-rgt-identity_binary64_11998
+-inverses_binary64_11992
+-lft-identity_binary64_11997 cancel-sign-sub_binary64_11978 count-2_binary64_11961
1-exp_binary64_12057 sqr-neg_binary64_12027 difference-of-squares_binary64_11982 swap-sqr_binary64_11980
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_12276 erf-erfc_binary64_12275 erf-odd_binary64_12274 if-if-and-not_binary64_12273 if-if-and_binary64_12272 if-if-or-not_binary64_12271 if-if-or_binary64_12270 if-not_binary64_12269 if-same_binary64_12268 if-false_binary64_12267 if-true_binary64_12266 not-gte_binary64_12265 not-lte_binary64_12264 not-gt_binary64_12263 not-lt_binary64_12262 gte-same_binary64_12261 lte-same_binary64_12260 gt-same_binary64_12259 lt-same_binary64_12258 sinh---cosh_binary64_12205 sinh-+-cosh_binary64_12204 sinh-cosh_binary64_12203 tanh-def-c_binary64_12202 tanh-def-b_binary64_12201 tanh-def-a_binary64_12200 cosh-def_binary64_12199 sinh-def_binary64_12198 tan-neg_binary64_12145 cos-neg_binary64_12144 sin-neg_binary64_12143 tan-0_binary64_12142 cos-0_binary64_12141 sin-0_binary64_12140 hang-m-tan_binary64_12139 hang-p-tan_binary64_12138 hang-m0-tan_binary64_12137 hang-p0-tan_binary64_12136 hang-0m-tan_binary64_12135 hang-0p-tan_binary64_12134 tan-+PI/2_binary64_12133 tan-+PI_binary64_12132 tan-PI_binary64_12131 tan-PI/3_binary64_12130 tan-PI/4_binary64_12129 tan-PI/6_binary64_12128 cos-+PI/2_binary64_12127 cos-+PI_binary64_12126 cos-PI_binary64_12125 cos-PI/2_binary64_12124 cos-PI/3_binary64_12123 cos-PI/4_binary64_12122 cos-PI/6_binary64_12121 sin-+PI/2_binary64_12120 sin-+PI_binary64_12119 sin-PI_binary64_12118 sin-PI/2_binary64_12117 sin-PI/3_binary64_12116 sin-PI/4_binary64_12115 sin-PI/6_binary64_12114 sub-1-sin_binary64_12113 sub-1-cos_binary64_12112 -1-add-sin_binary64_12111 -1-add-cos_binary64_12110 1-sub-sin_binary64_12109 1-sub-cos_binary64_12108 cos-sin-sum_binary64_12107 log-E_binary64_12103 log-pow_binary64_12102 log-rec_binary64_12101 log-div_binary64_12100 log-prod_binary64_12099 pow-base-0_binary64_12097 unpow1/3_binary64_12080 unpow3_binary64_12079 unpow2_binary64_12078 unpow1/2_binary64_12077 pow-plus_binary64_12076 exp-to-pow_binary64_12075 pow-base-1_binary64_12073 unpow0_binary64_12072 unpow1_binary64_12071 unpow-1_binary64_12070 exp-lft-cube_binary64_12069 exp-lft-sqr_binary64_12068 exp-cbrt_binary64_12067 exp-sqrt_binary64_12066 exp-prod_binary64_12065 div-exp_binary64_12064 rec-exp_binary64_12063 prod-exp_binary64_12062 exp-diff_binary64_12061 exp-neg_binary64_12060 exp-sum_binary64_12059 e-exp-1_binary64_12058 exp-1-e_binary64_12056 exp-0_binary64_12055 rem-log-exp_binary64_12054 rem-exp-log_binary64_12053 cube-unmult_binary64_12050 cube-mult_binary64_12043 cube-div_binary64_12042 cube-prod_binary64_12041 cube-neg_binary64_12040 rem-3cbrt-rft_binary64_12039 rem-3cbrt-lft_binary64_12038 rem-cbrt-cube_binary64_12037 rem-cube-cbrt_binary64_12036 sqr-abs_binary64_12028 rem-sqrt-square_binary64_12026 rem-square-sqrt_binary64_12025 times-frac_binary64_12019 div-sub_binary64_12018 /-rgt-identity_binary64_12004 div0_binary64_11994 *-inverses_binary64_11993 lft-mult-inverse_binary64_11991 rgt-mult-inverse_binary64_11990 remove-double-div_binary64_11989 pow-sqr_binary64_11986 sqr-pow_binary64_11985 difference-of-sqr--1_binary64_11984 difference-of-sqr-1_binary64_11983 unswap-sqr_binary64_11981 distribute-neg-frac_binary64_11977 distribute-frac-neg_binary64_11976 associate-/l/_binary64_11960 associate-/r/_binary64_11959 associate-/l*_binary64_11958 associate-/r*_binary64_11957 associate-*l/_binary64_11956 associate-*r/_binary64_11955
Counts
1 → 1
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01022
12610
2727
31677
44667
514387
617827
719107
821127
922257
1022707
1135257
1230017
1332057
1432057
1536177
1638237
1738237
1838237
1939257
2039257
2166667

prune4.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112
Error
0.0b
Counts
2 → 1
Compiler

Compiled 10 to 10 computations (0% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

0.0b
(*.f64 y (-.f64 x z))

rewrite30.0ms (1%)

Algorithm
rewrite-expression-head
Error
0b
Rules
add-sqr-sqrt_binary64_12035
*-un-lft-identity_binary64_12013
cancel-sign-sub-inv_binary64_11979
add-cube-cbrt_binary64_12048 associate-*r*_binary64_11953
distribute-rgt-in_binary64_11963 distribute-lft-in_binary64_11962
pow1_binary64_12074 add-exp-log_binary64_12051 add-cbrt-cube_binary64_12049 associate-*l*_binary64_11954
sub-neg_binary64_12006 associate-*r/_binary64_11955
pow-prod-down_binary64_12084 prod-exp_binary64_12062 add-log-exp_binary64_12052 cbrt-unprod_binary64_12046 unswap-sqr_binary64_11981 flip3--_binary64_12017 flip--_binary64_11988 difference-of-squares_binary64_11982 distribute-lft-out--_binary64_11965 *-commutative_binary64_11944
Counts
1 → 30
Calls

1 calls:

8.0ms
(*.f64 y (-.f64 x z))
Compiler

Compiled 338 to 111 computations (67.2% saved)

series148.0ms (5.1%)

Error
0.0b
Counts
1 → 15
Calls

1 calls:

141.0ms
(*.f64 y (-.f64 x z))
Compiler

Compiled 219 to 146 computations (33.3% saved)

simplify58.0ms (2%)

Algorithm
egg-herbie
Rules
620×distribute-neg-out_binary64_11975
402×neg-sub0_binary64_12008
392×associate-*l*_binary64_11954
385×neg-mul-1_binary64_12009
336×associate-*r*_binary64_11953
229×unswap-sqr_binary64_11981
222×distribute-rgt-neg-out_binary64_11973
208×distribute-lft-neg-out_binary64_11972
177×sqr-pow_binary64_11985
161×distribute-rgt-in_binary64_11963
158×exp-prod_binary64_12065
157×distribute-lft-in_binary64_11962
86×associate-+r+_binary64_11945
82×unsub-neg_binary64_12007
76×cancel-sign-sub-inv_binary64_11979 *-commutative_binary64_11944
69×associate-+l+_binary64_11946
62×+-commutative_binary64_11943
54×sub-neg_binary64_12006
53×swap-sqr_binary64_11980
46×exp-sum_binary64_12059 *-rgt-identity_binary64_12003 *-lft-identity_binary64_12002
34×pow-sqr_binary64_11986
26×distribute-lft-neg-in_binary64_11970 distribute-rgt-out_binary64_11966
24×times-frac_binary64_12019
23×div-sub_binary64_12018
22×exp-diff_binary64_12061 distribute-lft-out_binary64_11964
20×distribute-rgt-neg-in_binary64_11971
17×difference-of-squares_binary64_11982
16×cube-prod_binary64_12041
14×+-rgt-identity_binary64_11998 mul0-rgt_binary64_11996 mul0-lft_binary64_11995
12×sub0-neg_binary64_12000
11×sqr-neg_binary64_12027 +-lft-identity_binary64_11997
10×cube-unmult_binary64_12050 mul-1-neg_binary64_12005
log-prod_binary64_12099 distribute-frac-neg_binary64_11976 associate-+l-_binary64_11948
associate-/l*_binary64_11958 associate-+r-_binary64_11947
unpow3_binary64_12079 remove-double-neg_binary64_12001
unpow1/2_binary64_12077
pow-plus_binary64_12076 rem-sqrt-square_binary64_12026 distribute-neg-frac_binary64_11977 distribute-rgt-out--_binary64_11967
exp-neg_binary64_12060 --rgt-identity_binary64_11999
cube-mult_binary64_12043 cube-neg_binary64_12040 associate-*r/_binary64_11955 associate--r+_binary64_11949
1-exp_binary64_12057 exp-1-e_binary64_12056 rem-3cbrt-lft_binary64_12038 rem-square-sqrt_binary64_12025 cancel-sign-sub_binary64_11978 count-2_binary64_11961 associate-/l/_binary64_11960 associate-*l/_binary64_11956
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_12276 erf-erfc_binary64_12275 erf-odd_binary64_12274 if-if-and-not_binary64_12273 if-if-and_binary64_12272 if-if-or-not_binary64_12271 if-if-or_binary64_12270 if-not_binary64_12269 if-same_binary64_12268 if-false_binary64_12267 if-true_binary64_12266 not-gte_binary64_12265 not-lte_binary64_12264 not-gt_binary64_12263 not-lt_binary64_12262 gte-same_binary64_12261 lte-same_binary64_12260 gt-same_binary64_12259 lt-same_binary64_12258 sinh---cosh_binary64_12205 sinh-+-cosh_binary64_12204 sinh-cosh_binary64_12203 tanh-def-c_binary64_12202 tanh-def-b_binary64_12201 tanh-def-a_binary64_12200 cosh-def_binary64_12199 sinh-def_binary64_12198 tan-neg_binary64_12145 cos-neg_binary64_12144 sin-neg_binary64_12143 tan-0_binary64_12142 cos-0_binary64_12141 sin-0_binary64_12140 hang-m-tan_binary64_12139 hang-p-tan_binary64_12138 hang-m0-tan_binary64_12137 hang-p0-tan_binary64_12136 hang-0m-tan_binary64_12135 hang-0p-tan_binary64_12134 tan-+PI/2_binary64_12133 tan-+PI_binary64_12132 tan-PI_binary64_12131 tan-PI/3_binary64_12130 tan-PI/4_binary64_12129 tan-PI/6_binary64_12128 cos-+PI/2_binary64_12127 cos-+PI_binary64_12126 cos-PI_binary64_12125 cos-PI/2_binary64_12124 cos-PI/3_binary64_12123 cos-PI/4_binary64_12122 cos-PI/6_binary64_12121 sin-+PI/2_binary64_12120 sin-+PI_binary64_12119 sin-PI_binary64_12118 sin-PI/2_binary64_12117 sin-PI/3_binary64_12116 sin-PI/4_binary64_12115 sin-PI/6_binary64_12114 sub-1-sin_binary64_12113 sub-1-cos_binary64_12112 -1-add-sin_binary64_12111 -1-add-cos_binary64_12110 1-sub-sin_binary64_12109 1-sub-cos_binary64_12108 cos-sin-sum_binary64_12107 log-E_binary64_12103 log-pow_binary64_12102 log-rec_binary64_12101 log-div_binary64_12100 pow-base-0_binary64_12097 unpow1/3_binary64_12080 unpow2_binary64_12078 exp-to-pow_binary64_12075 pow-base-1_binary64_12073 unpow0_binary64_12072 unpow1_binary64_12071 unpow-1_binary64_12070 exp-lft-cube_binary64_12069 exp-lft-sqr_binary64_12068 exp-cbrt_binary64_12067 exp-sqrt_binary64_12066 div-exp_binary64_12064 rec-exp_binary64_12063 prod-exp_binary64_12062 e-exp-1_binary64_12058 exp-0_binary64_12055 rem-log-exp_binary64_12054 rem-exp-log_binary64_12053 cube-div_binary64_12042 rem-3cbrt-rft_binary64_12039 rem-cbrt-cube_binary64_12037 rem-cube-cbrt_binary64_12036 sqr-abs_binary64_12028 /-rgt-identity_binary64_12004 div0_binary64_11994 *-inverses_binary64_11993 +-inverses_binary64_11992 lft-mult-inverse_binary64_11991 rgt-mult-inverse_binary64_11990 remove-double-div_binary64_11989 difference-of-sqr--1_binary64_11984 difference-of-sqr-1_binary64_11983 distribute-neg-in_binary64_11974 distribute-rgt1-in_binary64_11969 distribute-lft1-in_binary64_11968 distribute-lft-out--_binary64_11965 associate-/r/_binary64_11959 associate-/r*_binary64_11957 associate--r-_binary64_11952 associate--l-_binary64_11951 associate--l+_binary64_11950
Counts
45 → 31
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
070416
1155386
2454386
31597386
42990386
55688386

prune19.0ms (0.7%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New30131
Fresh000
Picked011
Done000
Total30232
Error
0.0b
Counts
32 → 2
Compiler

Compiled 242 to 49 computations (79.8% saved)

localize5.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

rewrite18.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
add-log-exp_binary64_12052
sum-log_binary64_12104
neg-log_binary64_12106 pow1_binary64_12074 add-exp-log_binary64_12051 add-cbrt-cube_binary64_12049 add-cube-cbrt_binary64_12048 add-sqr-sqrt_binary64_12035 flip3-+_binary64_12016 *-un-lft-identity_binary64_12013 unsub-neg_binary64_12007 flip-+_binary64_11987 distribute-lft-neg-in_binary64_11970 distribute-rgt-out_binary64_11966 neg-sub0_binary64_12008 associate-+r-_binary64_11947 +-commutative_binary64_11943
Counts
1 → 15
Calls

1 calls:

5.0ms
(+.f64 (*.f64 x y) (neg.f64 (*.f64 z y)))
Compiler

Compiled 233 to 54 computations (76.8% saved)

series163.0ms (5.6%)

Error
0.0b
Counts
1 → 15
Calls

1 calls:

155.0ms
(+.f64 (*.f64 x y) (neg.f64 (*.f64 z y)))
Compiler

Compiled 225 to 154 computations (31.6% saved)

simplify68.0ms (2.3%)

Algorithm
egg-herbie
Rules
571×associate-*l*_binary64_11954
455×associate-*r*_binary64_11953
430×neg-mul-1_binary64_12009
364×distribute-rgt-neg-out_binary64_11973
341×distribute-rgt-out_binary64_11966
324×distribute-lft-neg-out_binary64_11972
273×times-frac_binary64_12019
223×distribute-lft-out_binary64_11964
199×distribute-rgt-in_binary64_11963
174×distribute-rgt-neg-in_binary64_11971
161×distribute-lft-in_binary64_11962
148×unsub-neg_binary64_12007
128×distribute-lft-neg-in_binary64_11970
110×cancel-sign-sub-inv_binary64_11979
101×cancel-sign-sub_binary64_11978
85×exp-prod_binary64_12065
81×distribute-rgt-out--_binary64_11967
75×*-commutative_binary64_11944
71×cube-prod_binary64_12041 neg-sub0_binary64_12008
69×sub-neg_binary64_12006
68×unswap-sqr_binary64_11981
59×sqr-pow_binary64_11985
52×distribute-neg-out_binary64_11975
47×distribute-neg-in_binary64_11974
41×distribute-lft-out--_binary64_11965
37×exp-sum_binary64_12059 div-sub_binary64_12018
33×associate-/l*_binary64_11958
32×exp-diff_binary64_12061
29×log-prod_binary64_12099
25×associate-+r+_binary64_11945
20×associate-+l-_binary64_11948
18×mul0-rgt_binary64_11996 mul0-lft_binary64_11995
17×swap-sqr_binary64_11980 associate--r+_binary64_11949
16×associate-+l+_binary64_11946 +-commutative_binary64_11943
15×remove-double-neg_binary64_12001
14×difference-of-squares_binary64_11982
13×unpow3_binary64_12079
12×cube-neg_binary64_12040 mul-1-neg_binary64_12005 *-rgt-identity_binary64_12003 *-lft-identity_binary64_12002
11×sub0-neg_binary64_12000 pow-sqr_binary64_11986
10×associate--l+_binary64_11950
cube-unmult_binary64_12050 cube-mult_binary64_12043 associate-+r-_binary64_11947
associate--r-_binary64_11952 associate--l-_binary64_11951
sqr-neg_binary64_12027 +-rgt-identity_binary64_11998
distribute-frac-neg_binary64_11976 associate-/l/_binary64_11960
associate-/r/_binary64_11959
--rgt-identity_binary64_11999 associate-/r*_binary64_11957
unpow1/2_binary64_12077 div-exp_binary64_12064 rec-exp_binary64_12063 prod-exp_binary64_12062 1-exp_binary64_12057 exp-1-e_binary64_12056 /-rgt-identity_binary64_12004 +-lft-identity_binary64_11997 associate-*r/_binary64_11955
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_12276 erf-erfc_binary64_12275 erf-odd_binary64_12274 if-if-and-not_binary64_12273 if-if-and_binary64_12272 if-if-or-not_binary64_12271 if-if-or_binary64_12270 if-not_binary64_12269 if-same_binary64_12268 if-false_binary64_12267 if-true_binary64_12266 not-gte_binary64_12265 not-lte_binary64_12264 not-gt_binary64_12263 not-lt_binary64_12262 gte-same_binary64_12261 lte-same_binary64_12260 gt-same_binary64_12259 lt-same_binary64_12258 sinh---cosh_binary64_12205 sinh-+-cosh_binary64_12204 sinh-cosh_binary64_12203 tanh-def-c_binary64_12202 tanh-def-b_binary64_12201 tanh-def-a_binary64_12200 cosh-def_binary64_12199 sinh-def_binary64_12198 tan-neg_binary64_12145 cos-neg_binary64_12144 sin-neg_binary64_12143 tan-0_binary64_12142 cos-0_binary64_12141 sin-0_binary64_12140 hang-m-tan_binary64_12139 hang-p-tan_binary64_12138 hang-m0-tan_binary64_12137 hang-p0-tan_binary64_12136 hang-0m-tan_binary64_12135 hang-0p-tan_binary64_12134 tan-+PI/2_binary64_12133 tan-+PI_binary64_12132 tan-PI_binary64_12131 tan-PI/3_binary64_12130 tan-PI/4_binary64_12129 tan-PI/6_binary64_12128 cos-+PI/2_binary64_12127 cos-+PI_binary64_12126 cos-PI_binary64_12125 cos-PI/2_binary64_12124 cos-PI/3_binary64_12123 cos-PI/4_binary64_12122 cos-PI/6_binary64_12121 sin-+PI/2_binary64_12120 sin-+PI_binary64_12119 sin-PI_binary64_12118 sin-PI/2_binary64_12117 sin-PI/3_binary64_12116 sin-PI/4_binary64_12115 sin-PI/6_binary64_12114 sub-1-sin_binary64_12113 sub-1-cos_binary64_12112 -1-add-sin_binary64_12111 -1-add-cos_binary64_12110 1-sub-sin_binary64_12109 1-sub-cos_binary64_12108 cos-sin-sum_binary64_12107 log-E_binary64_12103 log-pow_binary64_12102 log-rec_binary64_12101 log-div_binary64_12100 pow-base-0_binary64_12097 unpow1/3_binary64_12080 unpow2_binary64_12078 pow-plus_binary64_12076 exp-to-pow_binary64_12075 pow-base-1_binary64_12073 unpow0_binary64_12072 unpow1_binary64_12071 unpow-1_binary64_12070 exp-lft-cube_binary64_12069 exp-lft-sqr_binary64_12068 exp-cbrt_binary64_12067 exp-sqrt_binary64_12066 exp-neg_binary64_12060 e-exp-1_binary64_12058 exp-0_binary64_12055 rem-log-exp_binary64_12054 rem-exp-log_binary64_12053 cube-div_binary64_12042 rem-3cbrt-rft_binary64_12039 rem-3cbrt-lft_binary64_12038 rem-cbrt-cube_binary64_12037 rem-cube-cbrt_binary64_12036 sqr-abs_binary64_12028 rem-sqrt-square_binary64_12026 rem-square-sqrt_binary64_12025 div0_binary64_11994 *-inverses_binary64_11993 +-inverses_binary64_11992 lft-mult-inverse_binary64_11991 rgt-mult-inverse_binary64_11990 remove-double-div_binary64_11989 difference-of-sqr--1_binary64_11984 difference-of-sqr-1_binary64_11983 distribute-neg-frac_binary64_11977 distribute-rgt1-in_binary64_11969 distribute-lft1-in_binary64_11968 count-2_binary64_11961 associate-*l/_binary64_11956
Counts
30 → 26
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
045292
1137266
2546258
32010255
44163255
55032255

prune14.0ms (0.5%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New26026
Fresh000
Picked011
Done011
Total26228
Error
0.0b
Counts
28 → 2
Compiler

Compiled 191 to 40 computations (79.1% saved)

regimes104.0ms (3.6%)

Accuracy

Total 0.0b remaining (80%)

Threshold costs 0.0b (80%)

Compiler

Compiled 672 to 464 computations (31% saved)

bsearch0.0ms (0%)

simplify5.0ms (0.2%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_11944
sub-neg_binary64_12006 +-commutative_binary64_11943
neg-mul-1_binary64_12009 neg-sub0_binary64_12008
cancel-sign-sub-inv_binary64_11979 distribute-rgt-neg-in_binary64_11971
distribute-lft-neg-out_binary64_11972 distribute-lft-neg-in_binary64_11970
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_12273 if-if-and_binary64_12272 if-if-or-not_binary64_12271 if-if-or_binary64_12270 if-not_binary64_12269 if-same_binary64_12268 if-false_binary64_12267 if-true_binary64_12266 tan-0_binary64_12142 cos-0_binary64_12141 sin-0_binary64_12140 unpow1_binary64_12071 e-exp-1_binary64_12058 1-exp_binary64_12057 exp-1-e_binary64_12056 exp-0_binary64_12055 sqr-abs_binary64_12028 sqr-neg_binary64_12027 unsub-neg_binary64_12007 mul-1-neg_binary64_12005 /-rgt-identity_binary64_12004 *-rgt-identity_binary64_12003 *-lft-identity_binary64_12002 remove-double-neg_binary64_12001 sub0-neg_binary64_12000 --rgt-identity_binary64_11999 +-rgt-identity_binary64_11998 +-lft-identity_binary64_11997 cancel-sign-sub_binary64_11978 distribute-neg-frac_binary64_11977 distribute-frac-neg_binary64_11976 distribute-neg-out_binary64_11975 distribute-neg-in_binary64_11974 distribute-rgt-neg-out_binary64_11973
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11410
22410
33010
43410
53510
63510

end0.0ms (0%)

sample1.1s (36.5%)

Algorithm
intervals
Results
197.0ms5782×body128valid
100.0ms815×body1024valid
77.0ms524×body2048valid
50.0ms574×body512valid
42.0ms1238×body128invalid
24.0ms278×body512invalid
23.0ms203×body1024invalid
18.0ms305×body256valid
11.0ms189×body256invalid
Compiler

Compiled 187 to 131 computations (29.9% saved)

Profiling

Loading profile data...