Details

Time bar (total: 7.2s)

analyze280.0ms (3.9%)

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
31.2%68.6%0.1%6
43.7%56.2%0.1%7
59.3%40.6%0.1%8
59.3%40.6%0.1%9
68.6%31.2%0.1%10
78%21.8%0.1%11
78%21.8%0.1%12
83.5%16.4%0.1%13
88.5%11.3%0.1%14
Compiler

Compiled 10 to 9 computations (10% saved)

sample41.0ms (0.6%)

Algorithm
intervals
Results
12.0ms44×body1024valid
11.0ms177×body128valid
5.0ms28×body512valid
1.0msbody256valid
Compiler

Compiled 19 to 20 computations (-5.3% saved)

simplify826.0ms (11.5%)

Algorithm
egg-herbie
Rules
514×exp-prod_binary64_5245
474×swap-sqr_binary64_5160
346×distribute-rgt-neg-in_binary64_5151
305×exp-sum_binary64_5239
300×distribute-rgt-in_binary64_5143
294×*-commutative_binary64_5124
252×neg-mul-1_binary64_5189
246×neg-sub0_binary64_5188
225×unsub-neg_binary64_5187
175×sub-neg_binary64_5186
174×pow-plus_binary64_5256
172×cancel-sign-sub-inv_binary64_5159 associate-+l+_binary64_5126
166×distribute-rgt-out_binary64_5146
160×distribute-lft-in_binary64_5142 associate-*r*_binary64_5133
157×associate--r+_binary64_5129
154×distribute-rgt1-in_binary64_5149
136×distribute-lft-neg-in_binary64_5150
128×distribute-rgt-out--_binary64_5147
125×associate-+r+_binary64_5125
115×associate--l+_binary64_5130
104×associate-+l-_binary64_5128
95×associate-*l*_binary64_5134
94×exp-diff_binary64_5241
81×+-commutative_binary64_5123
64×associate-+r-_binary64_5127
60×distribute-lft-out_binary64_5144
56×distribute-lft-out--_binary64_5145
47×associate--r-_binary64_5132
33×associate--l-_binary64_5131
31×distribute-neg-in_binary64_5154
28×distribute-lft-neg-out_binary64_5152
25×sqr-neg_binary64_5207
18×distribute-rgt-neg-out_binary64_5153
17×exp-lft-sqr_binary64_5248
14×distribute-lft1-in_binary64_5148
12×exp-neg_binary64_5240
11×+-inverses_binary64_5172 count-2_binary64_5141
sub0-neg_binary64_5180
cube-prod_binary64_5221 remove-double-neg_binary64_5181
cube-unmult_binary64_5230 +-rgt-identity_binary64_5178 +-lft-identity_binary64_5177
distribute-neg-out_binary64_5155
div-sub_binary64_5198 --rgt-identity_binary64_5179 mul0-lft_binary64_5175
cube-neg_binary64_5220 mul0-rgt_binary64_5176 difference-of-squares_binary64_5162 unswap-sqr_binary64_5161
sub-1-sin_binary64_5293 -1-add-sin_binary64_5291 1-sub-sin_binary64_5289 1-exp_binary64_5237
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_5456 erf-erfc_binary64_5455 erf-odd_binary64_5454 if-if-and-not_binary64_5453 if-if-and_binary64_5452 if-if-or-not_binary64_5451 if-if-or_binary64_5450 if-not_binary64_5449 if-same_binary64_5448 if-false_binary64_5447 if-true_binary64_5446 not-gte_binary64_5445 not-lte_binary64_5444 not-gt_binary64_5443 not-lt_binary64_5442 gte-same_binary64_5441 lte-same_binary64_5440 gt-same_binary64_5439 lt-same_binary64_5438 sinh---cosh_binary64_5385 sinh-+-cosh_binary64_5384 sinh-cosh_binary64_5383 tanh-def-c_binary64_5382 tanh-def-b_binary64_5381 tanh-def-a_binary64_5380 cosh-def_binary64_5379 sinh-def_binary64_5378 tan-neg_binary64_5325 cos-neg_binary64_5324 sin-neg_binary64_5323 tan-0_binary64_5322 cos-0_binary64_5321 sin-0_binary64_5320 hang-m-tan_binary64_5319 hang-p-tan_binary64_5318 hang-m0-tan_binary64_5317 hang-p0-tan_binary64_5316 hang-0m-tan_binary64_5315 hang-0p-tan_binary64_5314 tan-+PI/2_binary64_5313 tan-+PI_binary64_5312 tan-PI_binary64_5311 tan-PI/3_binary64_5310 tan-PI/4_binary64_5309 tan-PI/6_binary64_5308 cos-+PI/2_binary64_5307 cos-+PI_binary64_5306 cos-PI_binary64_5305 cos-PI/2_binary64_5304 cos-PI/3_binary64_5303 cos-PI/4_binary64_5302 cos-PI/6_binary64_5301 sin-+PI/2_binary64_5300 sin-+PI_binary64_5299 sin-PI_binary64_5298 sin-PI/2_binary64_5297 sin-PI/3_binary64_5296 sin-PI/4_binary64_5295 sin-PI/6_binary64_5294 sub-1-cos_binary64_5292 -1-add-cos_binary64_5290 1-sub-cos_binary64_5288 cos-sin-sum_binary64_5287 log-E_binary64_5283 log-pow_binary64_5282 log-rec_binary64_5281 log-div_binary64_5280 log-prod_binary64_5279 pow-base-0_binary64_5277 unpow1/3_binary64_5260 unpow3_binary64_5259 unpow2_binary64_5258 unpow1/2_binary64_5257 exp-to-pow_binary64_5255 pow-base-1_binary64_5253 unpow0_binary64_5252 unpow1_binary64_5251 unpow-1_binary64_5250 exp-lft-cube_binary64_5249 exp-cbrt_binary64_5247 exp-sqrt_binary64_5246 div-exp_binary64_5244 rec-exp_binary64_5243 prod-exp_binary64_5242 e-exp-1_binary64_5238 exp-1-e_binary64_5236 exp-0_binary64_5235 rem-log-exp_binary64_5234 rem-exp-log_binary64_5233 cube-mult_binary64_5223 cube-div_binary64_5222 rem-3cbrt-rft_binary64_5219 rem-3cbrt-lft_binary64_5218 rem-cbrt-cube_binary64_5217 rem-cube-cbrt_binary64_5216 sqr-abs_binary64_5208 rem-sqrt-square_binary64_5206 rem-square-sqrt_binary64_5205 times-frac_binary64_5199 mul-1-neg_binary64_5185 /-rgt-identity_binary64_5184 *-rgt-identity_binary64_5183 *-lft-identity_binary64_5182 div0_binary64_5174 *-inverses_binary64_5173 lft-mult-inverse_binary64_5171 rgt-mult-inverse_binary64_5170 remove-double-div_binary64_5169 pow-sqr_binary64_5166 sqr-pow_binary64_5165 difference-of-sqr--1_binary64_5164 difference-of-sqr-1_binary64_5163 cancel-sign-sub_binary64_5158 distribute-neg-frac_binary64_5157 distribute-frac-neg_binary64_5156 associate-/l/_binary64_5140 associate-/r/_binary64_5139 associate-/l*_binary64_5138 associate-/r*_binary64_5137 associate-*l/_binary64_5136 associate-*r/_binary64_5135
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11814
23414
35414
48114
512314
626614
7119614
8375114

prune7.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 18 to 16 computations (11.1% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
0.0b
(sin.f64 y)
0.1b
(*.f64 z (sin.f64 y))

rewrite49.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
add-log-exp_binary64_5232
add-sqr-sqrt_binary64_5215
pow1_binary64_5254 add-exp-log_binary64_5231 add-cbrt-cube_binary64_5229 add-cube-cbrt_binary64_5228 *-un-lft-identity_binary64_5193
associate-*l*_binary64_5134 associate-*r*_binary64_5133
diff-log_binary64_5285
pow-prod-down_binary64_5264 prod-exp_binary64_5242 cbrt-unprod_binary64_5226 unswap-sqr_binary64_5161 *-commutative_binary64_5124 sum-log_binary64_5284 flip3--_binary64_5197 sub-neg_binary64_5186 flip--_binary64_5168 cancel-sign-sub-inv_binary64_5159 associate--l+_binary64_5130
Counts
3 → 39
Calls

3 calls:

6.0ms
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
4.0ms
(*.f64 z (sin.f64 y))
1.0ms
(sin.f64 y)
Compiler

Compiled 600 to 144 computations (76% saved)

series628.0ms (8.7%)

Error
0.1b
Counts
3 → 29
Calls

3 calls:

306.0ms
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
288.0ms
(*.f64 z (sin.f64 y))
14.0ms
(sin.f64 y)
Compiler

Compiled 679 to 447 computations (34.2% saved)

simplify123.0ms (1.7%)

Algorithm
egg-herbie
Rules
869×associate-*l/_binary64_5136
308×cancel-sign-sub-inv_binary64_5159
297×associate-*l*_binary64_5134
227×associate-*r*_binary64_5133
216×distribute-rgt-neg-in_binary64_5151
211×distribute-rgt-in_binary64_5143
209×distribute-lft-in_binary64_5142
186×distribute-lft-neg-in_binary64_5150
120×times-frac_binary64_5199
115×sub-neg_binary64_5186
95×associate-+l+_binary64_5126
87×distribute-lft-neg-out_binary64_5152
83×*-commutative_binary64_5124
79×associate-/r*_binary64_5137
74×distribute-rgt-neg-out_binary64_5153
70×associate-+r+_binary64_5125
65×associate-/l*_binary64_5138
60×sqr-pow_binary64_5165
57×associate-/r/_binary64_5139
55×unsub-neg_binary64_5187 unswap-sqr_binary64_5161 +-commutative_binary64_5123
49×neg-sub0_binary64_5188
47×associate--l+_binary64_5130
44×distribute-rgt-out_binary64_5146
43×neg-mul-1_binary64_5189
38×exp-prod_binary64_5245
30×pow-sqr_binary64_5166 distribute-neg-frac_binary64_5157
29×exp-sum_binary64_5239
28×*-rgt-identity_binary64_5183
27×*-lft-identity_binary64_5182
25×associate-*r/_binary64_5135
24×distribute-lft-out_binary64_5144
21×difference-of-squares_binary64_5162 associate-+l-_binary64_5128
20×associate-+r-_binary64_5127
18×distribute-rgt-out--_binary64_5147
17×associate-/l/_binary64_5140
16×distribute-lft-out--_binary64_5145
15×log-prod_binary64_5279 exp-sqrt_binary64_5246
14×cube-prod_binary64_5221 swap-sqr_binary64_5160 distribute-neg-in_binary64_5154
13×+-rgt-identity_binary64_5178
12×cube-div_binary64_5222 associate--r+_binary64_5129
11×exp-diff_binary64_5241
10×sub0-neg_binary64_5180
log-div_binary64_5280
unpow3_binary64_5259 pow-plus_binary64_5256 mul0-rgt_binary64_5176 mul0-lft_binary64_5175
distribute-rgt1-in_binary64_5149
div-exp_binary64_5244 cube-unmult_binary64_5230 cube-mult_binary64_5223
mul-1-neg_binary64_5185
pow-base-1_binary64_5253 prod-exp_binary64_5242 cancel-sign-sub_binary64_5158 count-2_binary64_5141
log-pow_binary64_5282 unpow2_binary64_5258 unpow1_binary64_5251 exp-lft-sqr_binary64_5248 1-exp_binary64_5237 exp-1-e_binary64_5236 rem-log-exp_binary64_5234 sqr-neg_binary64_5207 *-inverses_binary64_5173 rgt-mult-inverse_binary64_5170
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_5456 erf-erfc_binary64_5455 erf-odd_binary64_5454 if-if-and-not_binary64_5453 if-if-and_binary64_5452 if-if-or-not_binary64_5451 if-if-or_binary64_5450 if-not_binary64_5449 if-same_binary64_5448 if-false_binary64_5447 if-true_binary64_5446 not-gte_binary64_5445 not-lte_binary64_5444 not-gt_binary64_5443 not-lt_binary64_5442 gte-same_binary64_5441 lte-same_binary64_5440 gt-same_binary64_5439 lt-same_binary64_5438 sinh---cosh_binary64_5385 sinh-+-cosh_binary64_5384 sinh-cosh_binary64_5383 tanh-def-c_binary64_5382 tanh-def-b_binary64_5381 tanh-def-a_binary64_5380 cosh-def_binary64_5379 sinh-def_binary64_5378 tan-neg_binary64_5325 cos-neg_binary64_5324 sin-neg_binary64_5323 tan-0_binary64_5322 cos-0_binary64_5321 sin-0_binary64_5320 hang-m-tan_binary64_5319 hang-p-tan_binary64_5318 hang-m0-tan_binary64_5317 hang-p0-tan_binary64_5316 hang-0m-tan_binary64_5315 hang-0p-tan_binary64_5314 tan-+PI/2_binary64_5313 tan-+PI_binary64_5312 tan-PI_binary64_5311 tan-PI/3_binary64_5310 tan-PI/4_binary64_5309 tan-PI/6_binary64_5308 cos-+PI/2_binary64_5307 cos-+PI_binary64_5306 cos-PI_binary64_5305 cos-PI/2_binary64_5304 cos-PI/3_binary64_5303 cos-PI/4_binary64_5302 cos-PI/6_binary64_5301 sin-+PI/2_binary64_5300 sin-+PI_binary64_5299 sin-PI_binary64_5298 sin-PI/2_binary64_5297 sin-PI/3_binary64_5296 sin-PI/4_binary64_5295 sin-PI/6_binary64_5294 sub-1-sin_binary64_5293 sub-1-cos_binary64_5292 -1-add-sin_binary64_5291 -1-add-cos_binary64_5290 1-sub-sin_binary64_5289 1-sub-cos_binary64_5288 cos-sin-sum_binary64_5287 log-E_binary64_5283 log-rec_binary64_5281 pow-base-0_binary64_5277 unpow1/3_binary64_5260 unpow1/2_binary64_5257 exp-to-pow_binary64_5255 unpow0_binary64_5252 unpow-1_binary64_5250 exp-lft-cube_binary64_5249 exp-cbrt_binary64_5247 rec-exp_binary64_5243 exp-neg_binary64_5240 e-exp-1_binary64_5238 exp-0_binary64_5235 rem-exp-log_binary64_5233 cube-neg_binary64_5220 rem-3cbrt-rft_binary64_5219 rem-3cbrt-lft_binary64_5218 rem-cbrt-cube_binary64_5217 rem-cube-cbrt_binary64_5216 sqr-abs_binary64_5208 rem-sqrt-square_binary64_5206 rem-square-sqrt_binary64_5205 div-sub_binary64_5198 /-rgt-identity_binary64_5184 remove-double-neg_binary64_5181 --rgt-identity_binary64_5179 +-lft-identity_binary64_5177 div0_binary64_5174 +-inverses_binary64_5172 lft-mult-inverse_binary64_5171 remove-double-div_binary64_5169 difference-of-sqr--1_binary64_5164 difference-of-sqr-1_binary64_5163 distribute-frac-neg_binary64_5156 distribute-neg-out_binary64_5155 distribute-lft1-in_binary64_5148 associate--r-_binary64_5132 associate--l-_binary64_5131
Counts
68 → 69
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
087805
1210769
2702760
32334760

prune73.0ms (1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New65469
Fresh000
Picked011
Done000
Total65570
Error
0.0b
Counts
70 → 5
Compiler

Compiled 1414 to 311 computations (78% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.5b
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
0.6b
(cbrt.f64 z)
0.6b
(cbrt.f64 z)
0.6b
(cbrt.f64 z)

rewrite89.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
25×cbrt-prod_binary64_5224
23×add-sqr-sqrt_binary64_5215
15×add-cube-cbrt_binary64_5228 *-un-lft-identity_binary64_5193
11×pow1_binary64_5254
pow1/3_binary64_5275
add-exp-log_binary64_5231 swap-sqr_binary64_5160 associate-*l*_binary64_5134 associate-*r*_binary64_5133
add-log-exp_binary64_5232 add-cbrt-cube_binary64_5229 unswap-sqr_binary64_5161
pow-prod-down_binary64_5264 pow-prod-up_binary64_5263 pow-sqr_binary64_5166
pow2_binary64_5274 pow-plus_binary64_5256 prod-exp_binary64_5242 cbrt-unprod_binary64_5226 *-commutative_binary64_5124
Counts
4 → 73
Calls

4 calls:

6.0ms
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
1.0ms
(cbrt.f64 z)
1.0ms
(cbrt.f64 z)
1.0ms
(cbrt.f64 z)
Compiler

Compiled 1524 to 318 computations (79.1% saved)

series484.0ms (6.7%)

Error
0.0b
Counts
4 → 12
Calls

4 calls:

140.0ms
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
114.0ms
(cbrt.f64 z)
110.0ms
(cbrt.f64 z)
108.0ms
(cbrt.f64 z)
Compiler

Compiled 663 to 450 computations (32.1% saved)

simplify329.0ms (4.6%)

Algorithm
egg-herbie
Rules
545×log-prod_binary64_5279
427×log-div_binary64_5280
416×associate-/l*_binary64_5138
347×associate-*l*_binary64_5134
293×associate-/r*_binary64_5137
231×associate-*r*_binary64_5133
203×*-commutative_binary64_5124
184×associate-/r/_binary64_5139
150×distribute-rgt-neg-in_binary64_5151
144×distribute-lft-neg-in_binary64_5150
140×exp-prod_binary64_5245
128×distribute-rgt-in_binary64_5143
123×unswap-sqr_binary64_5161
112×cube-prod_binary64_5221
95×distribute-lft-in_binary64_5142
86×swap-sqr_binary64_5160
80×associate-/l/_binary64_5140
77×sqr-pow_binary64_5165
55×log-pow_binary64_5282 distribute-rgt-out_binary64_5146
52×times-frac_binary64_5199
47×cancel-sign-sub-inv_binary64_5159
42×associate-+l+_binary64_5126
39×associate-+r+_binary64_5125
38×associate-*l/_binary64_5136
37×pow-sqr_binary64_5166
30×distribute-lft-out_binary64_5144
29×cube-div_binary64_5222
28×distribute-neg-frac_binary64_5157
24×log-rec_binary64_5281 *-rgt-identity_binary64_5183
23×*-lft-identity_binary64_5182
22×pow-plus_binary64_5256
21×associate-*r/_binary64_5135
19×exp-sqrt_binary64_5246
18×rem-sqrt-square_binary64_5206
15×cube-unmult_binary64_5230
13×neg-mul-1_binary64_5189 neg-sub0_binary64_5188
12×associate-+l-_binary64_5128
exp-lft-sqr_binary64_5248 distribute-rgt-neg-out_binary64_5153 distribute-lft-neg-out_binary64_5152
distribute-rgt1-in_binary64_5149 count-2_binary64_5141
unpow3_binary64_5259 associate--l-_binary64_5131 associate--l+_binary64_5130
associate-+r-_binary64_5127 +-commutative_binary64_5123
div-exp_binary64_5244 prod-exp_binary64_5242 distribute-rgt-out--_binary64_5147
unpow1/3_binary64_5260 unpow2_binary64_5258 sub-neg_binary64_5186 distribute-lft-out--_binary64_5145
unpow1_binary64_5251 rec-exp_binary64_5243 exp-sum_binary64_5239 cube-mult_binary64_5223 rem-3cbrt-lft_binary64_5218 rem-cbrt-cube_binary64_5217 /-rgt-identity_binary64_5184 distribute-lft1-in_binary64_5148
pow-base-1_binary64_5253 exp-diff_binary64_5241 1-exp_binary64_5237 exp-1-e_binary64_5236 rem-log-exp_binary64_5234 rem-3cbrt-rft_binary64_5219 rem-square-sqrt_binary64_5205 mul-1-neg_binary64_5185 mul0-lft_binary64_5175 *-inverses_binary64_5173 distribute-neg-out_binary64_5155
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_5456 erf-erfc_binary64_5455 erf-odd_binary64_5454 if-if-and-not_binary64_5453 if-if-and_binary64_5452 if-if-or-not_binary64_5451 if-if-or_binary64_5450 if-not_binary64_5449 if-same_binary64_5448 if-false_binary64_5447 if-true_binary64_5446 not-gte_binary64_5445 not-lte_binary64_5444 not-gt_binary64_5443 not-lt_binary64_5442 gte-same_binary64_5441 lte-same_binary64_5440 gt-same_binary64_5439 lt-same_binary64_5438 sinh---cosh_binary64_5385 sinh-+-cosh_binary64_5384 sinh-cosh_binary64_5383 tanh-def-c_binary64_5382 tanh-def-b_binary64_5381 tanh-def-a_binary64_5380 cosh-def_binary64_5379 sinh-def_binary64_5378 tan-neg_binary64_5325 cos-neg_binary64_5324 sin-neg_binary64_5323 tan-0_binary64_5322 cos-0_binary64_5321 sin-0_binary64_5320 hang-m-tan_binary64_5319 hang-p-tan_binary64_5318 hang-m0-tan_binary64_5317 hang-p0-tan_binary64_5316 hang-0m-tan_binary64_5315 hang-0p-tan_binary64_5314 tan-+PI/2_binary64_5313 tan-+PI_binary64_5312 tan-PI_binary64_5311 tan-PI/3_binary64_5310 tan-PI/4_binary64_5309 tan-PI/6_binary64_5308 cos-+PI/2_binary64_5307 cos-+PI_binary64_5306 cos-PI_binary64_5305 cos-PI/2_binary64_5304 cos-PI/3_binary64_5303 cos-PI/4_binary64_5302 cos-PI/6_binary64_5301 sin-+PI/2_binary64_5300 sin-+PI_binary64_5299 sin-PI_binary64_5298 sin-PI/2_binary64_5297 sin-PI/3_binary64_5296 sin-PI/4_binary64_5295 sin-PI/6_binary64_5294 sub-1-sin_binary64_5293 sub-1-cos_binary64_5292 -1-add-sin_binary64_5291 -1-add-cos_binary64_5290 1-sub-sin_binary64_5289 1-sub-cos_binary64_5288 cos-sin-sum_binary64_5287 log-E_binary64_5283 pow-base-0_binary64_5277 unpow1/2_binary64_5257 exp-to-pow_binary64_5255 unpow0_binary64_5252 unpow-1_binary64_5250 exp-lft-cube_binary64_5249 exp-cbrt_binary64_5247 exp-neg_binary64_5240 e-exp-1_binary64_5238 exp-0_binary64_5235 rem-exp-log_binary64_5233 cube-neg_binary64_5220 rem-cube-cbrt_binary64_5216 sqr-abs_binary64_5208 sqr-neg_binary64_5207 div-sub_binary64_5198 unsub-neg_binary64_5187 remove-double-neg_binary64_5181 sub0-neg_binary64_5180 --rgt-identity_binary64_5179 +-rgt-identity_binary64_5178 +-lft-identity_binary64_5177 mul0-rgt_binary64_5176 div0_binary64_5174 +-inverses_binary64_5172 lft-mult-inverse_binary64_5171 rgt-mult-inverse_binary64_5170 remove-double-div_binary64_5169 difference-of-sqr--1_binary64_5164 difference-of-sqr-1_binary64_5163 difference-of-squares_binary64_5162 cancel-sign-sub_binary64_5158 distribute-frac-neg_binary64_5156 distribute-neg-in_binary64_5154 associate--r-_binary64_5132 associate--r+_binary64_5129
Counts
85 → 83
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
055718
197656
2345636
31343633
44059633

prune88.0ms (1.2%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New83083
Fresh033
Picked011
Done011
Total83588
Error
0.0b
Counts
88 → 5
Compiler

Compiled 1805 to 421 computations (76.7% saved)

localize12.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.3b
(*.f64 (cbrt.f64 (sin.f64 y)) (*.f64 z (cbrt.f64 (sin.f64 y))))
0.6b
(cbrt.f64 (sin.f64 y))
0.6b
(cbrt.f64 (sin.f64 y))
0.6b
(cbrt.f64 (sin.f64 y))

rewrite77.0ms (1.1%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
12×cbrt-prod_binary64_5224
pow1_binary64_5254 add-exp-log_binary64_5231 add-cube-cbrt_binary64_5228 add-sqr-sqrt_binary64_5215 *-un-lft-identity_binary64_5193
add-cbrt-cube_binary64_5229 associate-*l*_binary64_5134
add-log-exp_binary64_5232
pow1/3_binary64_5275 pow-prod-down_binary64_5264 prod-exp_binary64_5242 cbrt-unprod_binary64_5226
associate-*r*_binary64_5133 *-commutative_binary64_5124
Counts
4 → 54
Calls

4 calls:

8.0ms
(*.f64 (cbrt.f64 (sin.f64 y)) (*.f64 z (cbrt.f64 (sin.f64 y))))
1.0ms
(cbrt.f64 (sin.f64 y))
1.0ms
(cbrt.f64 (sin.f64 y))
1.0ms
(cbrt.f64 (sin.f64 y))
Compiler

Compiled 1262 to 245 computations (80.6% saved)

series644.0ms (9%)

Error
0.0b
Counts
4 → 15
Calls

4 calls:

365.0ms
(*.f64 (cbrt.f64 (sin.f64 y)) (*.f64 z (cbrt.f64 (sin.f64 y))))
91.0ms
(cbrt.f64 (sin.f64 y))
86.0ms
(cbrt.f64 (sin.f64 y))
86.0ms
(cbrt.f64 (sin.f64 y))
Compiler

Compiled 841 to 527 computations (37.3% saved)

simplify284.0ms (4%)

Algorithm
egg-herbie
Rules
691×times-frac_binary64_5199
440×associate-*l*_binary64_5134
332×associate-+l+_binary64_5126
299×unswap-sqr_binary64_5161
290×*-commutative_binary64_5124
270×associate-/l*_binary64_5138
264×distribute-rgt-in_binary64_5143
260×associate-+r+_binary64_5125
248×distribute-lft-in_binary64_5142
223×associate-*r*_binary64_5133
183×associate-/l/_binary64_5140
166×associate-*l/_binary64_5136
154×sqr-pow_binary64_5165
143×associate-/r/_binary64_5139
132×associate-/r*_binary64_5137
128×associate-*r/_binary64_5135
103×log-prod_binary64_5279
74×pow-sqr_binary64_5166 distribute-rgt-out_binary64_5146
70×exp-prod_binary64_5245
53×cube-prod_binary64_5221
31×distribute-lft-out_binary64_5144
30×pow-plus_binary64_5256
23×cube-unmult_binary64_5230 swap-sqr_binary64_5160
22×log-pow_binary64_5282
18×distribute-rgt1-in_binary64_5149
17×count-2_binary64_5141
unpow3_binary64_5259 distribute-lft1-in_binary64_5148
cube-mult_binary64_5223 rem-sqrt-square_binary64_5206 +-commutative_binary64_5123
/-rgt-identity_binary64_5184
unpow1/3_binary64_5260
unpow2_binary64_5258 unpow1_binary64_5251
div-exp_binary64_5244 rec-exp_binary64_5243 prod-exp_binary64_5242 1-exp_binary64_5237 rem-3cbrt-lft_binary64_5218 rem-cbrt-cube_binary64_5217 *-rgt-identity_binary64_5183 *-inverses_binary64_5173 rgt-mult-inverse_binary64_5170
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_5456 erf-erfc_binary64_5455 erf-odd_binary64_5454 if-if-and-not_binary64_5453 if-if-and_binary64_5452 if-if-or-not_binary64_5451 if-if-or_binary64_5450 if-not_binary64_5449 if-same_binary64_5448 if-false_binary64_5447 if-true_binary64_5446 not-gte_binary64_5445 not-lte_binary64_5444 not-gt_binary64_5443 not-lt_binary64_5442 gte-same_binary64_5441 lte-same_binary64_5440 gt-same_binary64_5439 lt-same_binary64_5438 sinh---cosh_binary64_5385 sinh-+-cosh_binary64_5384 sinh-cosh_binary64_5383 tanh-def-c_binary64_5382 tanh-def-b_binary64_5381 tanh-def-a_binary64_5380 cosh-def_binary64_5379 sinh-def_binary64_5378 tan-neg_binary64_5325 cos-neg_binary64_5324 sin-neg_binary64_5323 tan-0_binary64_5322 cos-0_binary64_5321 sin-0_binary64_5320 hang-m-tan_binary64_5319 hang-p-tan_binary64_5318 hang-m0-tan_binary64_5317 hang-p0-tan_binary64_5316 hang-0m-tan_binary64_5315 hang-0p-tan_binary64_5314 tan-+PI/2_binary64_5313 tan-+PI_binary64_5312 tan-PI_binary64_5311 tan-PI/3_binary64_5310 tan-PI/4_binary64_5309 tan-PI/6_binary64_5308 cos-+PI/2_binary64_5307 cos-+PI_binary64_5306 cos-PI_binary64_5305 cos-PI/2_binary64_5304 cos-PI/3_binary64_5303 cos-PI/4_binary64_5302 cos-PI/6_binary64_5301 sin-+PI/2_binary64_5300 sin-+PI_binary64_5299 sin-PI_binary64_5298 sin-PI/2_binary64_5297 sin-PI/3_binary64_5296 sin-PI/4_binary64_5295 sin-PI/6_binary64_5294 sub-1-sin_binary64_5293 sub-1-cos_binary64_5292 -1-add-sin_binary64_5291 -1-add-cos_binary64_5290 1-sub-sin_binary64_5289 1-sub-cos_binary64_5288 cos-sin-sum_binary64_5287 log-E_binary64_5283 log-rec_binary64_5281 log-div_binary64_5280 pow-base-0_binary64_5277 unpow1/2_binary64_5257 exp-to-pow_binary64_5255 pow-base-1_binary64_5253 unpow0_binary64_5252 unpow-1_binary64_5250 exp-lft-cube_binary64_5249 exp-lft-sqr_binary64_5248 exp-cbrt_binary64_5247 exp-sqrt_binary64_5246 exp-diff_binary64_5241 exp-neg_binary64_5240 exp-sum_binary64_5239 e-exp-1_binary64_5238 exp-1-e_binary64_5236 exp-0_binary64_5235 rem-log-exp_binary64_5234 rem-exp-log_binary64_5233 cube-div_binary64_5222 cube-neg_binary64_5220 rem-3cbrt-rft_binary64_5219 rem-cube-cbrt_binary64_5216 sqr-abs_binary64_5208 sqr-neg_binary64_5207 rem-square-sqrt_binary64_5205 div-sub_binary64_5198 neg-mul-1_binary64_5189 neg-sub0_binary64_5188 unsub-neg_binary64_5187 sub-neg_binary64_5186 mul-1-neg_binary64_5185 *-lft-identity_binary64_5182 remove-double-neg_binary64_5181 sub0-neg_binary64_5180 --rgt-identity_binary64_5179 +-rgt-identity_binary64_5178 +-lft-identity_binary64_5177 mul0-rgt_binary64_5176 mul0-lft_binary64_5175 div0_binary64_5174 +-inverses_binary64_5172 lft-mult-inverse_binary64_5171 remove-double-div_binary64_5169 difference-of-sqr--1_binary64_5164 difference-of-sqr-1_binary64_5163 difference-of-squares_binary64_5162 cancel-sign-sub-inv_binary64_5159 cancel-sign-sub_binary64_5158 distribute-neg-frac_binary64_5157 distribute-frac-neg_binary64_5156 distribute-neg-out_binary64_5155 distribute-neg-in_binary64_5154 distribute-rgt-neg-out_binary64_5153 distribute-lft-neg-out_binary64_5152 distribute-rgt-neg-in_binary64_5151 distribute-lft-neg-in_binary64_5150 distribute-rgt-out--_binary64_5147 distribute-lft-out--_binary64_5145 associate--r-_binary64_5132 associate--l-_binary64_5131 associate--l+_binary64_5130 associate--r+_binary64_5129 associate-+l-_binary64_5128 associate-+r-_binary64_5127
Counts
69 → 112
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
052816
1111669
2320669
31055657
42009657

prune149.0ms (2.1%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New1093112
Fresh112
Picked011
Done022
Total1107117
Error
0.0b
Counts
117 → 7
Compiler

Compiled 3100 to 1021 computations (67.1% saved)

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.6b
(cbrt.f64 (sin.f64 y))
0.6b
(cbrt.f64 (cbrt.f64 (sin.f64 y)))
0.6b
(cbrt.f64 (cbrt.f64 (sin.f64 y)))
0.6b
(cbrt.f64 (cbrt.f64 (sin.f64 y)))

rewrite83.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
30×cbrt-prod_binary64_5224
11×add-cube-cbrt_binary64_5228 add-sqr-sqrt_binary64_5215 *-un-lft-identity_binary64_5193
pow1/3_binary64_5275 pow1_binary64_5254 add-log-exp_binary64_5232 add-exp-log_binary64_5231 add-cbrt-cube_binary64_5229
Counts
4 → 53
Calls

4 calls:

2.0ms
(cbrt.f64 (cbrt.f64 (sin.f64 y)))
2.0ms
(cbrt.f64 (cbrt.f64 (sin.f64 y)))
2.0ms
(cbrt.f64 (cbrt.f64 (sin.f64 y)))
1.0ms
(cbrt.f64 (sin.f64 y))
Compiler

Compiled 1843 to 283 computations (84.6% saved)

series402.0ms (5.6%)

Error
0.0b
Counts
4 → 12
Calls

4 calls:

108.0ms
(cbrt.f64 (sin.f64 y))
103.0ms
(cbrt.f64 (cbrt.f64 (sin.f64 y)))
88.0ms
(cbrt.f64 (cbrt.f64 (sin.f64 y)))
86.0ms
(cbrt.f64 (cbrt.f64 (sin.f64 y)))
Compiler

Compiled 1073 to 490 computations (54.3% saved)

simplify136.0ms (1.9%)

Algorithm
egg-herbie
Rules
816×unswap-sqr_binary64_5161
779×distribute-rgt-in_binary64_5143
771×distribute-lft-in_binary64_5142
350×log-prod_binary64_5279
269×associate-*l*_binary64_5134
153×associate-*r*_binary64_5133
96×sqr-pow_binary64_5165
76×distribute-rgt-out_binary64_5146
58×pow-sqr_binary64_5166
35×distribute-lft-out_binary64_5144
27×log-pow_binary64_5282
23×exp-prod_binary64_5245
19×*-commutative_binary64_5124
17×cube-unmult_binary64_5230
16×pow-plus_binary64_5256
15×cube-prod_binary64_5221
associate-/l*_binary64_5138
distribute-rgt1-in_binary64_5149 associate-/l/_binary64_5140
rem-sqrt-square_binary64_5206
associate-*r/_binary64_5135
times-frac_binary64_5199 count-2_binary64_5141
associate-*l/_binary64_5136
unpow1/3_binary64_5260 unpow3_binary64_5259 rem-3cbrt-lft_binary64_5218 swap-sqr_binary64_5160 associate-+l+_binary64_5126 associate-+r+_binary64_5125
1-exp_binary64_5237 rem-cbrt-cube_binary64_5217 *-inverses_binary64_5173 +-commutative_binary64_5123
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_5456 erf-erfc_binary64_5455 erf-odd_binary64_5454 if-if-and-not_binary64_5453 if-if-and_binary64_5452 if-if-or-not_binary64_5451 if-if-or_binary64_5450 if-not_binary64_5449 if-same_binary64_5448 if-false_binary64_5447 if-true_binary64_5446 not-gte_binary64_5445 not-lte_binary64_5444 not-gt_binary64_5443 not-lt_binary64_5442 gte-same_binary64_5441 lte-same_binary64_5440 gt-same_binary64_5439 lt-same_binary64_5438 sinh---cosh_binary64_5385 sinh-+-cosh_binary64_5384 sinh-cosh_binary64_5383 tanh-def-c_binary64_5382 tanh-def-b_binary64_5381 tanh-def-a_binary64_5380 cosh-def_binary64_5379 sinh-def_binary64_5378 tan-neg_binary64_5325 cos-neg_binary64_5324 sin-neg_binary64_5323 tan-0_binary64_5322 cos-0_binary64_5321 sin-0_binary64_5320 hang-m-tan_binary64_5319 hang-p-tan_binary64_5318 hang-m0-tan_binary64_5317 hang-p0-tan_binary64_5316 hang-0m-tan_binary64_5315 hang-0p-tan_binary64_5314 tan-+PI/2_binary64_5313 tan-+PI_binary64_5312 tan-PI_binary64_5311 tan-PI/3_binary64_5310 tan-PI/4_binary64_5309 tan-PI/6_binary64_5308 cos-+PI/2_binary64_5307 cos-+PI_binary64_5306 cos-PI_binary64_5305 cos-PI/2_binary64_5304 cos-PI/3_binary64_5303 cos-PI/4_binary64_5302 cos-PI/6_binary64_5301 sin-+PI/2_binary64_5300 sin-+PI_binary64_5299 sin-PI_binary64_5298 sin-PI/2_binary64_5297 sin-PI/3_binary64_5296 sin-PI/4_binary64_5295 sin-PI/6_binary64_5294 sub-1-sin_binary64_5293 sub-1-cos_binary64_5292 -1-add-sin_binary64_5291 -1-add-cos_binary64_5290 1-sub-sin_binary64_5289 1-sub-cos_binary64_5288 cos-sin-sum_binary64_5287 log-E_binary64_5283 log-rec_binary64_5281 log-div_binary64_5280 pow-base-0_binary64_5277 unpow2_binary64_5258 unpow1/2_binary64_5257 exp-to-pow_binary64_5255 pow-base-1_binary64_5253 unpow0_binary64_5252 unpow1_binary64_5251 unpow-1_binary64_5250 exp-lft-cube_binary64_5249 exp-lft-sqr_binary64_5248 exp-cbrt_binary64_5247 exp-sqrt_binary64_5246 div-exp_binary64_5244 rec-exp_binary64_5243 prod-exp_binary64_5242 exp-diff_binary64_5241 exp-neg_binary64_5240 exp-sum_binary64_5239 e-exp-1_binary64_5238 exp-1-e_binary64_5236 exp-0_binary64_5235 rem-log-exp_binary64_5234 rem-exp-log_binary64_5233 cube-mult_binary64_5223 cube-div_binary64_5222 cube-neg_binary64_5220 rem-3cbrt-rft_binary64_5219 rem-cube-cbrt_binary64_5216 sqr-abs_binary64_5208 sqr-neg_binary64_5207 rem-square-sqrt_binary64_5205 div-sub_binary64_5198 neg-mul-1_binary64_5189 neg-sub0_binary64_5188 unsub-neg_binary64_5187 sub-neg_binary64_5186 mul-1-neg_binary64_5185 /-rgt-identity_binary64_5184 *-rgt-identity_binary64_5183 *-lft-identity_binary64_5182 remove-double-neg_binary64_5181 sub0-neg_binary64_5180 --rgt-identity_binary64_5179 +-rgt-identity_binary64_5178 +-lft-identity_binary64_5177 mul0-rgt_binary64_5176 mul0-lft_binary64_5175 div0_binary64_5174 +-inverses_binary64_5172 lft-mult-inverse_binary64_5171 rgt-mult-inverse_binary64_5170 remove-double-div_binary64_5169 difference-of-sqr--1_binary64_5164 difference-of-sqr-1_binary64_5163 difference-of-squares_binary64_5162 cancel-sign-sub-inv_binary64_5159 cancel-sign-sub_binary64_5158 distribute-neg-frac_binary64_5157 distribute-frac-neg_binary64_5156 distribute-neg-out_binary64_5155 distribute-neg-in_binary64_5154 distribute-rgt-neg-out_binary64_5153 distribute-lft-neg-out_binary64_5152 distribute-rgt-neg-in_binary64_5151 distribute-lft-neg-in_binary64_5150 distribute-lft1-in_binary64_5148 distribute-rgt-out--_binary64_5147 distribute-lft-out--_binary64_5145 associate-/r/_binary64_5139 associate-/r*_binary64_5137 associate--r-_binary64_5132 associate--l-_binary64_5131 associate--l+_binary64_5130 associate--r+_binary64_5129 associate-+l-_binary64_5128 associate-+r-_binary64_5127
Counts
65 → 19
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
033706
149706
2112706
3282666
4998666

prune31.0ms (0.4%)

Pruning

7 alts after pruning (3 fresh and 4 done)

PrunedKeptTotal
New19019
Fresh033
Picked011
Done033
Total19726
Error
0.0b
Counts
26 → 7
Compiler

Compiled 675 to 117 computations (82.7% saved)

regimes334.0ms (4.6%)

Accuracy

Total 0.0b remaining (83.5%)

Threshold costs 0.0b (83.5%)

Compiler

Compiled 3032 to 2086 computations (31.2% saved)

bsearch0.0ms (0%)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_5123
sub-neg_binary64_5186 *-commutative_binary64_5124
neg-mul-1_binary64_5189 neg-sub0_binary64_5188
cancel-sign-sub-inv_binary64_5159 distribute-rgt-neg-in_binary64_5151
distribute-lft-neg-out_binary64_5152 distribute-lft-neg-in_binary64_5150
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_5453 if-if-and_binary64_5452 if-if-or-not_binary64_5451 if-if-or_binary64_5450 if-not_binary64_5449 if-same_binary64_5448 if-false_binary64_5447 if-true_binary64_5446 tan-0_binary64_5322 cos-0_binary64_5321 sin-0_binary64_5320 unpow1_binary64_5251 e-exp-1_binary64_5238 1-exp_binary64_5237 exp-1-e_binary64_5236 exp-0_binary64_5235 sqr-abs_binary64_5208 sqr-neg_binary64_5207 unsub-neg_binary64_5187 mul-1-neg_binary64_5185 /-rgt-identity_binary64_5184 *-rgt-identity_binary64_5183 *-lft-identity_binary64_5182 remove-double-neg_binary64_5181 sub0-neg_binary64_5180 --rgt-identity_binary64_5179 +-rgt-identity_binary64_5178 +-lft-identity_binary64_5177 cancel-sign-sub_binary64_5158 distribute-neg-frac_binary64_5157 distribute-frac-neg_binary64_5156 distribute-neg-out_binary64_5155 distribute-neg-in_binary64_5154 distribute-rgt-neg-out_binary64_5153
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11614
22614
33214
43614
53714
Proof
(- f64 (+ f64 h0 (cos f64 h1)) (* f64 h2 (sin f64 h1)))

end0.0ms (0%)

sample2.0s (27.6%)

Algorithm
intervals
Results
373.0ms5702×body128valid
349.0ms1317×body1024valid
136.0ms661×body512valid
41.0ms315×body256valid
2.0msbody2048valid
Compiler

Compiled 771 to 533 computations (30.9% saved)

Profiling

Loading profile data...