Details

Time bar (total: 7.4s)

analyze260.0ms (3.5%)

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
37.4%62.4%0.1%6
49.9%49.9%0.1%7
62.4%37.4%0.1%8
62.4%37.4%0.1%9
71.8%28.1%0.1%10
79.6%20.3%0.1%11
79.6%20.3%0.1%12
85%14.8%0.1%13
89.3%10.5%0.1%14
Compiler

Compiled 10 to 9 computations (10% saved)

sample47.0ms (0.6%)

Algorithm
intervals
Results
16.0ms60×body1024valid
9.0ms141×body128valid
9.0ms45×body512valid
1.0ms10×body256valid
Compiler

Compiled 19 to 20 computations (-5.3% saved)

simplify156.0ms (2.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_5124
+-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-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 pow-plus_binary64_5256 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 exp-prod_binary64_5245 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 1-exp_binary64_5237 exp-1-e_binary64_5236 exp-0_binary64_5235 rem-log-exp_binary64_5234 rem-exp-log_binary64_5233 cube-unmult_binary64_5230 cube-mult_binary64_5223 cube-div_binary64_5222 cube-prod_binary64_5221 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 sqr-neg_binary64_5207 rem-sqrt-square_binary64_5206 rem-square-sqrt_binary64_5205 times-frac_binary64_5199 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_5173 +-inverses_binary64_5172 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 difference-of-squares_binary64_5162 unswap-sqr_binary64_5161 swap-sqr_binary64_5160 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-rgt1-in_binary64_5149 distribute-lft1-in_binary64_5148 distribute-rgt-out--_binary64_5147 distribute-rgt-out_binary64_5146 distribute-lft-out--_binary64_5145 distribute-lft-out_binary64_5144 distribute-rgt-in_binary64_5143 distribute-lft-in_binary64_5142 count-2_binary64_5141 associate-/l/_binary64_5140 associate-/r/_binary64_5139 associate-/l*_binary64_5138 associate-/r*_binary64_5137 associate-*l/_binary64_5136 associate-*r/_binary64_5135 associate-*l*_binary64_5134 associate-*r*_binary64_5133 associate--r-_binary64_5132 associate--l-_binary64_5131 associate--l+_binary64_5130 associate--r+_binary64_5129 associate-+l-_binary64_5128 associate-+r-_binary64_5127 associate-+l+_binary64_5126 associate-+r+_binary64_5125
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11214

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 9 to 8 computations (11.1% saved)

localize13.0ms (0.2%)

Local error

Found 4 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))
0.1b
(*.f64 x (cos.f64 y))

rewrite71.0ms (1%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
12×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
add-log-exp_binary64_5232 associate-*l*_binary64_5134 associate-*r*_binary64_5133
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_5196 flip-+_binary64_5167 +-commutative_binary64_5123
Counts
4 → 54
Calls

4 calls:

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

Compiled 822 to 199 computations (75.8% saved)

series624.0ms (8.4%)

Error
0.1b
Counts
4 → 38
Calls

4 calls:

353.0ms
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
114.0ms
(*.f64 z (sin.f64 y))
114.0ms
(*.f64 x (cos.f64 y))
15.0ms
(sin.f64 y)
Compiler

Compiled 948 to 606 computations (36.1% saved)

simplify166.0ms (2.2%)

Algorithm
egg-herbie
Rules
411×cancel-sign-sub-inv_binary64_5159
242×distribute-rgt-neg-in_binary64_5151
218×times-frac_binary64_5199
210×*-commutative_binary64_5124
199×distribute-rgt-in_binary64_5143
194×distribute-lft-neg-in_binary64_5150
178×distribute-lft-in_binary64_5142
147×associate-+l+_binary64_5126
141×associate-+r+_binary64_5125
132×sub-neg_binary64_5186 associate-/r*_binary64_5137
130×associate-*r*_binary64_5133
129×associate-*l*_binary64_5134
109×associate-/r/_binary64_5139 associate-/l*_binary64_5138
107×associate-+l-_binary64_5128
87×sqr-pow_binary64_5165
80×distribute-rgt-out_binary64_5146
76×unswap-sqr_binary64_5161
75×+-commutative_binary64_5123
66×log-prod_binary64_5279
65×associate-+r-_binary64_5127
64×neg-mul-1_binary64_5189 neg-sub0_binary64_5188
63×exp-prod_binary64_5245
56×associate--l-_binary64_5131
52×distribute-neg-frac_binary64_5157
50×distribute-rgt-out--_binary64_5147
49×associate-*r/_binary64_5135
48×pow-sqr_binary64_5166
46×log-div_binary64_5280
45×cube-div_binary64_5222 distribute-lft-out_binary64_5144
44×associate--l+_binary64_5130
43×associate-*l/_binary64_5136
35×distribute-lft-out--_binary64_5145
28×distribute-lft-neg-out_binary64_5152 associate-/l/_binary64_5140
27×exp-sqrt_binary64_5246
26×unpow3_binary64_5259 associate--r+_binary64_5129
22×cube-prod_binary64_5221 *-rgt-identity_binary64_5183
21×cube-mult_binary64_5223
20×unsub-neg_binary64_5187
19×exp-lft-sqr_binary64_5248
18×*-lft-identity_binary64_5182
15×+-rgt-identity_binary64_5178 swap-sqr_binary64_5160
13×sub0-neg_binary64_5180
12×pow-plus_binary64_5256 distribute-neg-in_binary64_5154
exp-sum_binary64_5239
log-pow_binary64_5282 exp-diff_binary64_5241 distribute-rgt1-in_binary64_5149
pow-base-1_binary64_5253 cancel-sign-sub_binary64_5158 associate--r-_binary64_5132
prod-exp_binary64_5242 cube-unmult_binary64_5230 difference-of-squares_binary64_5162 distribute-rgt-neg-out_binary64_5153 count-2_binary64_5141
log-rec_binary64_5281 unpow2_binary64_5258 unpow1_binary64_5251 1-exp_binary64_5237 exp-1-e_binary64_5236 rem-log-exp_binary64_5234 rem-exp-log_binary64_5233 *-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 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 div-exp_binary64_5244 rec-exp_binary64_5243 exp-neg_binary64_5240 e-exp-1_binary64_5238 exp-0_binary64_5235 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 sqr-neg_binary64_5207 rem-sqrt-square_binary64_5206 rem-square-sqrt_binary64_5205 div-sub_binary64_5198 mul-1-neg_binary64_5185 /-rgt-identity_binary64_5184 remove-double-neg_binary64_5181 --rgt-identity_binary64_5179 +-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 distribute-frac-neg_binary64_5156 distribute-neg-out_binary64_5155 distribute-lft1-in_binary64_5148
Counts
92 → 82
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01141019
1290983
2887968
31843965
44700965

prune102.0ms (1.4%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New74882
Fresh000
Picked011
Done000
Total74983
Error
0.0b
Counts
83 → 9
Compiler

Compiled 1832 to 541 computations (70.5% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.4b
(*.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))

rewrite76.0ms (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:

7.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)

series745.0ms (10%)

Error
0.0b
Counts
4 → 18
Calls

4 calls:

389.0ms
(*.f64 (cbrt.f64 (sin.f64 y)) (*.f64 z (cbrt.f64 (sin.f64 y))))
122.0ms
(cbrt.f64 (sin.f64 y))
108.0ms
(cbrt.f64 (sin.f64 y))
103.0ms
(cbrt.f64 (sin.f64 y))
Compiler

Compiled 1021 to 644 computations (36.9% saved)

simplify287.0ms (3.9%)

Algorithm
egg-herbie
Rules
766×times-frac_binary64_5199
444×associate-*l*_binary64_5134
332×associate-+l+_binary64_5126
316×*-commutative_binary64_5124
303×unswap-sqr_binary64_5161
301×associate-/l*_binary64_5138
271×distribute-rgt-in_binary64_5143
254×distribute-lft-in_binary64_5142
238×associate-*r*_binary64_5133
211×associate-/l/_binary64_5140
180×associate-*l/_binary64_5136
172×sqr-pow_binary64_5165
157×associate-/r/_binary64_5139
147×associate-/r*_binary64_5137
134×associate-*r/_binary64_5135
103×log-prod_binary64_5279
86×pow-sqr_binary64_5166
74×distribute-rgt-out_binary64_5146
70×exp-prod_binary64_5245
53×cube-prod_binary64_5221
32×pow-plus_binary64_5256
31×distribute-lft-out_binary64_5144
30×distribute-rgt-neg-in_binary64_5151
27×cube-unmult_binary64_5230
23×swap-sqr_binary64_5160 distribute-lft-neg-in_binary64_5150
22×log-pow_binary64_5282
20×associate-+r+_binary64_5125
18×distribute-rgt1-in_binary64_5149
17×cancel-sign-sub-inv_binary64_5159 count-2_binary64_5141
13×neg-mul-1_binary64_5189 neg-sub0_binary64_5188
sub-neg_binary64_5186 /-rgt-identity_binary64_5184 +-commutative_binary64_5123
unpow3_binary64_5259 distribute-lft1-in_binary64_5148
distribute-lft-neg-out_binary64_5152
cube-mult_binary64_5223 rem-sqrt-square_binary64_5206 distribute-neg-in_binary64_5154
unpow1/3_binary64_5260
unsub-neg_binary64_5187
associate--r+_binary64_5129 associate-+l-_binary64_5128 associate-+r-_binary64_5127
unpow2_binary64_5258 unpow1_binary64_5251 +-rgt-identity_binary64_5178 mul0-rgt_binary64_5176 mul0-lft_binary64_5175
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 *-lft-identity_binary64_5182 sub0-neg_binary64_5180 *-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 mul-1-neg_binary64_5185 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 difference-of-squares_binary64_5162 cancel-sign-sub_binary64_5158 distribute-neg-frac_binary64_5157 distribute-frac-neg_binary64_5156 distribute-neg-out_binary64_5155 distribute-rgt-neg-out_binary64_5153 distribute-rgt-out--_binary64_5147 distribute-lft-out--_binary64_5145 associate--r-_binary64_5132 associate--l-_binary64_5131 associate--l+_binary64_5130
Counts
72 → 112
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
058858
1129711
2361711
31156699
42211699

prune156.0ms (2.1%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1093112
Fresh257
Picked101
Done101
Total1138121
Error
0.0b
Counts
121 → 8
Compiler

Compiled 3160 to 1078 computations (65.9% saved)

localize12.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

rewrite87.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:

7.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)

series491.0ms (6.6%)

Error
0.0b
Counts
4 → 12
Calls

4 calls:

132.0ms
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
121.0ms
(cbrt.f64 z)
119.0ms
(cbrt.f64 z)
108.0ms
(cbrt.f64 z)
Compiler

Compiled 663 to 450 computations (32.1% saved)

simplify327.0ms (4.4%)

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

prune93.0ms (1.2%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New83083
Fresh077
Picked011
Done000
Total83891
Error
0.0b
Counts
91 → 8
Compiler

Compiled 1907 to 485 computations (74.6% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.4b
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
0.7b
(cbrt.f64 x)
0.7b
(cbrt.f64 x)
0.7b
(cbrt.f64 x)

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:

7.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
1.0ms
(cbrt.f64 x)
1.0ms
(cbrt.f64 x)
1.0ms
(cbrt.f64 x)
Compiler

Compiled 1524 to 318 computations (79.1% saved)

series492.0ms (6.6%)

Error
0.0b
Counts
4 → 12
Calls

4 calls:

143.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
114.0ms
(cbrt.f64 x)
111.0ms
(cbrt.f64 x)
109.0ms
(cbrt.f64 x)
Compiler

Compiled 663 to 450 computations (32.1% saved)

simplify327.0ms (4.4%)

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

prune86.0ms (1.2%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New81283
Fresh156
Picked101
Done011
Total83891
Error
0.0b
Counts
91 → 8
Compiler

Compiled 1745 to 386 computations (77.9% saved)

regimes407.0ms (5.5%)

Accuracy

Total 0.1b remaining (82.8%)

Threshold costs 0.1b (82.8%)

Compiler

Compiled 3740 to 2498 computations (33.2% saved)

bsearch0.0ms (0%)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_5124
+-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 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 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 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
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11214
Proof
(+ f64 (* f64 h0 (cos f64 h1)) (* f64 h2 (sin f64 h1)))

end0.0ms (0%)

sample2.3s (30.9%)

Algorithm
intervals
Results
558.0ms2027×body1024valid
312.0ms4454×body128valid
194.0ms1022×body512valid
64.0ms491×body256valid
3.0msbody2048valid
Compiler

Compiled 948 to 636 computations (32.9% saved)

Profiling

Loading profile data...