Details

Time bar (total: 15.4s)

analyze862.0ms (5.6%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
6.2%93.6%0.2%9
9.4%90.4%0.2%10
14%83.4%2.5%11
18.7%78.2%3.1%12
28.1%65.5%6.4%13
30.7%59.4%9.9%14
Compiler

Compiled 16 to 12 computations (25% saved)

sample36.0ms (0.2%)

Algorithm
intervals
Results
11.0ms256×body128valid
7.0ms184×body128invalid
Compiler

Compiled 31 to 27 computations (12.9% saved)

simplify159.0ms (1%)

Algorithm
egg-herbie
Rules
associate-/l*_binary64_12299
associate-/r/_binary64_12300 associate-*r/_binary64_12296
associate-/r*_binary64_12298
times-frac_binary64_12360 associate-/l/_binary64_12301 associate-*l/_binary64_12297 *-commutative_binary64_12285
+-commutative_binary64_12284
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_12617 erf-erfc_binary64_12616 erf-odd_binary64_12615 if-if-and-not_binary64_12614 if-if-and_binary64_12613 if-if-or-not_binary64_12612 if-if-or_binary64_12611 if-not_binary64_12610 if-same_binary64_12609 if-false_binary64_12608 if-true_binary64_12607 not-gte_binary64_12606 not-lte_binary64_12605 not-gt_binary64_12604 not-lt_binary64_12603 gte-same_binary64_12602 lte-same_binary64_12601 gt-same_binary64_12600 lt-same_binary64_12599 sinh---cosh_binary64_12546 sinh-+-cosh_binary64_12545 sinh-cosh_binary64_12544 tanh-def-c_binary64_12543 tanh-def-b_binary64_12542 tanh-def-a_binary64_12541 cosh-def_binary64_12540 sinh-def_binary64_12539 tan-neg_binary64_12486 cos-neg_binary64_12485 sin-neg_binary64_12484 tan-0_binary64_12483 cos-0_binary64_12482 sin-0_binary64_12481 hang-m-tan_binary64_12480 hang-p-tan_binary64_12479 hang-m0-tan_binary64_12478 hang-p0-tan_binary64_12477 hang-0m-tan_binary64_12476 hang-0p-tan_binary64_12475 tan-+PI/2_binary64_12474 tan-+PI_binary64_12473 tan-PI_binary64_12472 tan-PI/3_binary64_12471 tan-PI/4_binary64_12470 tan-PI/6_binary64_12469 cos-+PI/2_binary64_12468 cos-+PI_binary64_12467 cos-PI_binary64_12466 cos-PI/2_binary64_12465 cos-PI/3_binary64_12464 cos-PI/4_binary64_12463 cos-PI/6_binary64_12462 sin-+PI/2_binary64_12461 sin-+PI_binary64_12460 sin-PI_binary64_12459 sin-PI/2_binary64_12458 sin-PI/3_binary64_12457 sin-PI/4_binary64_12456 sin-PI/6_binary64_12455 sub-1-sin_binary64_12454 sub-1-cos_binary64_12453 -1-add-sin_binary64_12452 -1-add-cos_binary64_12451 1-sub-sin_binary64_12450 1-sub-cos_binary64_12449 cos-sin-sum_binary64_12448 log-E_binary64_12444 log-pow_binary64_12443 log-rec_binary64_12442 log-div_binary64_12441 log-prod_binary64_12440 pow-base-0_binary64_12438 unpow1/3_binary64_12421 unpow3_binary64_12420 unpow2_binary64_12419 unpow1/2_binary64_12418 pow-plus_binary64_12417 exp-to-pow_binary64_12416 pow-base-1_binary64_12414 unpow0_binary64_12413 unpow1_binary64_12412 unpow-1_binary64_12411 exp-lft-cube_binary64_12410 exp-lft-sqr_binary64_12409 exp-cbrt_binary64_12408 exp-sqrt_binary64_12407 exp-prod_binary64_12406 div-exp_binary64_12405 rec-exp_binary64_12404 prod-exp_binary64_12403 exp-diff_binary64_12402 exp-neg_binary64_12401 exp-sum_binary64_12400 e-exp-1_binary64_12399 1-exp_binary64_12398 exp-1-e_binary64_12397 exp-0_binary64_12396 rem-log-exp_binary64_12395 rem-exp-log_binary64_12394 cube-unmult_binary64_12391 cube-mult_binary64_12384 cube-div_binary64_12383 cube-prod_binary64_12382 cube-neg_binary64_12381 rem-3cbrt-rft_binary64_12380 rem-3cbrt-lft_binary64_12379 rem-cbrt-cube_binary64_12378 rem-cube-cbrt_binary64_12377 sqr-abs_binary64_12369 sqr-neg_binary64_12368 rem-sqrt-square_binary64_12367 rem-square-sqrt_binary64_12366 div-sub_binary64_12359 neg-mul-1_binary64_12350 neg-sub0_binary64_12349 unsub-neg_binary64_12348 sub-neg_binary64_12347 mul-1-neg_binary64_12346 /-rgt-identity_binary64_12345 *-rgt-identity_binary64_12344 *-lft-identity_binary64_12343 remove-double-neg_binary64_12342 sub0-neg_binary64_12341 --rgt-identity_binary64_12340 +-rgt-identity_binary64_12339 +-lft-identity_binary64_12338 mul0-rgt_binary64_12337 mul0-lft_binary64_12336 div0_binary64_12335 *-inverses_binary64_12334 +-inverses_binary64_12333 lft-mult-inverse_binary64_12332 rgt-mult-inverse_binary64_12331 remove-double-div_binary64_12330 pow-sqr_binary64_12327 sqr-pow_binary64_12326 difference-of-sqr--1_binary64_12325 difference-of-sqr-1_binary64_12324 difference-of-squares_binary64_12323 unswap-sqr_binary64_12322 swap-sqr_binary64_12321 cancel-sign-sub-inv_binary64_12320 cancel-sign-sub_binary64_12319 distribute-neg-frac_binary64_12318 distribute-frac-neg_binary64_12317 distribute-neg-out_binary64_12316 distribute-neg-in_binary64_12315 distribute-rgt-neg-out_binary64_12314 distribute-lft-neg-out_binary64_12313 distribute-rgt-neg-in_binary64_12312 distribute-lft-neg-in_binary64_12311 distribute-rgt1-in_binary64_12310 distribute-lft1-in_binary64_12309 distribute-rgt-out--_binary64_12308 distribute-rgt-out_binary64_12307 distribute-lft-out--_binary64_12306 distribute-lft-out_binary64_12305 distribute-rgt-in_binary64_12304 distribute-lft-in_binary64_12303 count-2_binary64_12302 associate-*l*_binary64_12295 associate-*r*_binary64_12294 associate--r-_binary64_12293 associate--l-_binary64_12292 associate--l+_binary64_12291 associate--r+_binary64_12290 associate-+l-_binary64_12289 associate-+r-_binary64_12288 associate-+l+_binary64_12287 associate-+r+_binary64_12286
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01222
12522
24322
35122
44922

prune7.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.3b
Counts
3 → 3
Compiler

Compiled 75 to 47 computations (37.3% saved)

localize8.0ms (0%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 (*.f64 (/.f64 x y) (/.f64 x y)) (*.f64 (/.f64 z t) (/.f64 z t)))
0.3b
(*.f64 (/.f64 z t) (/.f64 z t))
0.4b
(*.f64 (/.f64 x y) (/.f64 x y))

rewrite220.0ms (1.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
83×add-sqr-sqrt_binary64_12376
80×times-frac_binary64_12360
59×add-cube-cbrt_binary64_12389 *-un-lft-identity_binary64_12354
27×add-exp-log_binary64_12392 add-cbrt-cube_binary64_12390
26×swap-sqr_binary64_12321 associate-*l*_binary64_12295 associate-*r*_binary64_12294
17×pow1_binary64_12415
frac-add_binary64_12362
div-exp_binary64_12405 prod-exp_binary64_12403 cbrt-unprod_binary64_12387 cbrt-undiv_binary64_12388 frac-times_binary64_12364 unswap-sqr_binary64_12322 div-inv_binary64_12351 associate-*l/_binary64_12297 associate-*r/_binary64_12296
add-log-exp_binary64_12393
pow2_binary64_12435 pow-prod-down_binary64_12425 pow-prod-up_binary64_12424 pow-plus_binary64_12417 pow-sqr_binary64_12327 *-commutative_binary64_12285
sum-log_binary64_12445 flip3-+_binary64_12357 flip-+_binary64_12328 +-commutative_binary64_12284
Counts
3 → 154
Calls

3 calls:

11.0ms
(*.f64 (/.f64 z t) (/.f64 z t))
10.0ms
(*.f64 (/.f64 x y) (/.f64 x y))
9.0ms
(+.f64 (*.f64 (/.f64 x y) (/.f64 x y)) (*.f64 (/.f64 z t) (/.f64 z t)))
Compiler

Compiled 3719 to 652 computations (82.5% saved)

series895.0ms (5.8%)

Error
0.3b
Counts
3 → 36
Calls

3 calls:

610.0ms
(+.f64 (*.f64 (/.f64 x y) (/.f64 x y)) (*.f64 (/.f64 z t) (/.f64 z t)))
134.0ms
(*.f64 (/.f64 x y) (/.f64 x y))
121.0ms
(*.f64 (/.f64 z t) (/.f64 z t))
Compiler

Compiled 1248 to 1028 computations (17.6% saved)

simplify579.0ms (3.8%)

Algorithm
egg-herbie
Rules
575×associate-/r*_binary64_12298
504×associate-/r/_binary64_12300
302×associate-*l/_binary64_12297
261×associate-*r/_binary64_12296
252×associate-*l*_binary64_12295
244×associate-*r*_binary64_12294
233×unswap-sqr_binary64_12322
229×associate-/l*_binary64_12299
126×*-commutative_binary64_12285
107×cancel-sign-sub-inv_binary64_12320
98×distribute-rgt-in_binary64_12304
96×distribute-rgt-neg-in_binary64_12312
88×distribute-lft-neg-in_binary64_12311
85×distribute-lft-in_binary64_12303
78×associate-/l/_binary64_12301
69×times-frac_binary64_12360
63×log-prod_binary64_12440 distribute-neg-frac_binary64_12318
62×swap-sqr_binary64_12321
55×*-rgt-identity_binary64_12344
52×sqr-pow_binary64_12326
50×cube-prod_binary64_12382
49×*-lft-identity_binary64_12343
44×log-div_binary64_12441
41×exp-prod_binary64_12406
35×cube-div_binary64_12383
33×sub-neg_binary64_12347
24×distribute-rgt-out_binary64_12307
22×neg-mul-1_binary64_12350
21×neg-sub0_binary64_12349
20×cube-unmult_binary64_12391
19×pow-sqr_binary64_12327 distribute-rgt-out--_binary64_12308
18×/-rgt-identity_binary64_12345
17×prod-exp_binary64_12403 +-commutative_binary64_12284
16×div-exp_binary64_12405
15×pow-plus_binary64_12417
14×distribute-neg-in_binary64_12315
12×rem-sqrt-square_binary64_12367 distribute-lft-neg-out_binary64_12313
10×difference-of-squares_binary64_12323
unpow3_binary64_12420 count-2_binary64_12302
distribute-lft-out_binary64_12305 associate-+l-_binary64_12289 associate-+l+_binary64_12287
unpow2_binary64_12419 unpow1_binary64_12412 rec-exp_binary64_12404 cube-mult_binary64_12384 rem-3cbrt-rft_binary64_12380 rem-3cbrt-lft_binary64_12379 rem-square-sqrt_binary64_12366
log-pow_binary64_12443 log-rec_binary64_12442 distribute-rgt-neg-out_binary64_12314 associate-+r-_binary64_12288
div-sub_binary64_12359 distribute-lft-out--_binary64_12306 associate--r-_binary64_12293 associate--r+_binary64_12290
exp-lft-sqr_binary64_12409 exp-sqrt_binary64_12407 1-exp_binary64_12398 exp-1-e_binary64_12397 rem-log-exp_binary64_12395 *-inverses_binary64_12334 distribute-rgt1-in_binary64_12310 distribute-lft1-in_binary64_12309
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_12617 erf-erfc_binary64_12616 erf-odd_binary64_12615 if-if-and-not_binary64_12614 if-if-and_binary64_12613 if-if-or-not_binary64_12612 if-if-or_binary64_12611 if-not_binary64_12610 if-same_binary64_12609 if-false_binary64_12608 if-true_binary64_12607 not-gte_binary64_12606 not-lte_binary64_12605 not-gt_binary64_12604 not-lt_binary64_12603 gte-same_binary64_12602 lte-same_binary64_12601 gt-same_binary64_12600 lt-same_binary64_12599 sinh---cosh_binary64_12546 sinh-+-cosh_binary64_12545 sinh-cosh_binary64_12544 tanh-def-c_binary64_12543 tanh-def-b_binary64_12542 tanh-def-a_binary64_12541 cosh-def_binary64_12540 sinh-def_binary64_12539 tan-neg_binary64_12486 cos-neg_binary64_12485 sin-neg_binary64_12484 tan-0_binary64_12483 cos-0_binary64_12482 sin-0_binary64_12481 hang-m-tan_binary64_12480 hang-p-tan_binary64_12479 hang-m0-tan_binary64_12478 hang-p0-tan_binary64_12477 hang-0m-tan_binary64_12476 hang-0p-tan_binary64_12475 tan-+PI/2_binary64_12474 tan-+PI_binary64_12473 tan-PI_binary64_12472 tan-PI/3_binary64_12471 tan-PI/4_binary64_12470 tan-PI/6_binary64_12469 cos-+PI/2_binary64_12468 cos-+PI_binary64_12467 cos-PI_binary64_12466 cos-PI/2_binary64_12465 cos-PI/3_binary64_12464 cos-PI/4_binary64_12463 cos-PI/6_binary64_12462 sin-+PI/2_binary64_12461 sin-+PI_binary64_12460 sin-PI_binary64_12459 sin-PI/2_binary64_12458 sin-PI/3_binary64_12457 sin-PI/4_binary64_12456 sin-PI/6_binary64_12455 sub-1-sin_binary64_12454 sub-1-cos_binary64_12453 -1-add-sin_binary64_12452 -1-add-cos_binary64_12451 1-sub-sin_binary64_12450 1-sub-cos_binary64_12449 cos-sin-sum_binary64_12448 log-E_binary64_12444 pow-base-0_binary64_12438 unpow1/3_binary64_12421 unpow1/2_binary64_12418 exp-to-pow_binary64_12416 pow-base-1_binary64_12414 unpow0_binary64_12413 unpow-1_binary64_12411 exp-lft-cube_binary64_12410 exp-cbrt_binary64_12408 exp-diff_binary64_12402 exp-neg_binary64_12401 exp-sum_binary64_12400 e-exp-1_binary64_12399 exp-0_binary64_12396 rem-exp-log_binary64_12394 cube-neg_binary64_12381 rem-cbrt-cube_binary64_12378 rem-cube-cbrt_binary64_12377 sqr-abs_binary64_12369 sqr-neg_binary64_12368 unsub-neg_binary64_12348 mul-1-neg_binary64_12346 remove-double-neg_binary64_12342 sub0-neg_binary64_12341 --rgt-identity_binary64_12340 +-rgt-identity_binary64_12339 +-lft-identity_binary64_12338 mul0-rgt_binary64_12337 mul0-lft_binary64_12336 div0_binary64_12335 +-inverses_binary64_12333 lft-mult-inverse_binary64_12332 rgt-mult-inverse_binary64_12331 remove-double-div_binary64_12330 difference-of-sqr--1_binary64_12325 difference-of-sqr-1_binary64_12324 cancel-sign-sub_binary64_12319 distribute-frac-neg_binary64_12317 distribute-neg-out_binary64_12316 associate--l-_binary64_12292 associate--l+_binary64_12291 associate-+r+_binary64_12286
Counts
190 → 371
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02563286
17472947
226432842

prune377.0ms (2.4%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New35615371
Fresh202
Picked101
Done000
Total35915374
Error
0.0b
Counts
374 → 15
Compiler

Compiled 7951 to 1290 computations (83.8% saved)

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.6b
(cbrt.f64 t)
0.6b
(cbrt.f64 z)
0.6b
(cbrt.f64 z)
0.6b
(cbrt.f64 z)

rewrite65.0ms (0.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
12×cbrt-prod_binary64_12385
add-cube-cbrt_binary64_12389 add-sqr-sqrt_binary64_12376 *-un-lft-identity_binary64_12354
pow1/3_binary64_12436 pow1_binary64_12415 add-log-exp_binary64_12393 add-exp-log_binary64_12392 add-cbrt-cube_binary64_12390
Counts
4 → 44
Calls

4 calls:

3.0ms
(cbrt.f64 z)
1.0ms
(cbrt.f64 z)
1.0ms
(cbrt.f64 t)
1.0ms
(cbrt.f64 z)
Compiler

Compiled 1460 to 258 computations (82.3% saved)

series474.0ms (3.1%)

Error
0.0b
Counts
4 → 12
Calls

4 calls:

118.0ms
(cbrt.f64 z)
116.0ms
(cbrt.f64 z)
113.0ms
(cbrt.f64 z)
110.0ms
(cbrt.f64 t)
Compiler

Compiled 1140 to 578 computations (49.3% saved)

simplify82.0ms (0.5%)

Algorithm
egg-herbie
Rules
804×distribute-rgt-in_binary64_12304
792×distribute-lft-in_binary64_12303
484×unswap-sqr_binary64_12322
342×associate-*l*_binary64_12295
222×log-prod_binary64_12440
190×associate-*r*_binary64_12294
168×distribute-rgt-neg-in_binary64_12312 distribute-lft-neg-in_binary64_12311
140×distribute-rgt-out_binary64_12307
90×sqr-pow_binary64_12326
70×cancel-sign-sub-inv_binary64_12320
56×pow-sqr_binary64_12327
50×distribute-lft-out_binary64_12305
36×exp-prod_binary64_12406
34×log-pow_binary64_12443 distribute-rgt-neg-out_binary64_12314 distribute-lft-neg-out_binary64_12313
32×*-commutative_binary64_12285
26×neg-sub0_binary64_12349
24×cube-prod_binary64_12382 neg-mul-1_binary64_12350
14×distribute-rgt1-in_binary64_12310
13×cube-unmult_binary64_12391
12×sub-neg_binary64_12347
10×pow-plus_binary64_12417 rem-sqrt-square_binary64_12367
count-2_binary64_12302 associate-/l*_binary64_12299 associate-+r+_binary64_12286
unpow1/3_binary64_12421 associate-/l/_binary64_12301 associate-*l/_binary64_12297 associate-+l+_binary64_12287
associate-*r/_binary64_12296
unpow3_binary64_12420 rem-3cbrt-lft_binary64_12379 times-frac_binary64_12360 mul-1-neg_binary64_12346 associate-+r-_binary64_12288 +-commutative_binary64_12284
1-exp_binary64_12398 +-rgt-identity_binary64_12339 *-inverses_binary64_12334
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_12617 erf-erfc_binary64_12616 erf-odd_binary64_12615 if-if-and-not_binary64_12614 if-if-and_binary64_12613 if-if-or-not_binary64_12612 if-if-or_binary64_12611 if-not_binary64_12610 if-same_binary64_12609 if-false_binary64_12608 if-true_binary64_12607 not-gte_binary64_12606 not-lte_binary64_12605 not-gt_binary64_12604 not-lt_binary64_12603 gte-same_binary64_12602 lte-same_binary64_12601 gt-same_binary64_12600 lt-same_binary64_12599 sinh---cosh_binary64_12546 sinh-+-cosh_binary64_12545 sinh-cosh_binary64_12544 tanh-def-c_binary64_12543 tanh-def-b_binary64_12542 tanh-def-a_binary64_12541 cosh-def_binary64_12540 sinh-def_binary64_12539 tan-neg_binary64_12486 cos-neg_binary64_12485 sin-neg_binary64_12484 tan-0_binary64_12483 cos-0_binary64_12482 sin-0_binary64_12481 hang-m-tan_binary64_12480 hang-p-tan_binary64_12479 hang-m0-tan_binary64_12478 hang-p0-tan_binary64_12477 hang-0m-tan_binary64_12476 hang-0p-tan_binary64_12475 tan-+PI/2_binary64_12474 tan-+PI_binary64_12473 tan-PI_binary64_12472 tan-PI/3_binary64_12471 tan-PI/4_binary64_12470 tan-PI/6_binary64_12469 cos-+PI/2_binary64_12468 cos-+PI_binary64_12467 cos-PI_binary64_12466 cos-PI/2_binary64_12465 cos-PI/3_binary64_12464 cos-PI/4_binary64_12463 cos-PI/6_binary64_12462 sin-+PI/2_binary64_12461 sin-+PI_binary64_12460 sin-PI_binary64_12459 sin-PI/2_binary64_12458 sin-PI/3_binary64_12457 sin-PI/4_binary64_12456 sin-PI/6_binary64_12455 sub-1-sin_binary64_12454 sub-1-cos_binary64_12453 -1-add-sin_binary64_12452 -1-add-cos_binary64_12451 1-sub-sin_binary64_12450 1-sub-cos_binary64_12449 cos-sin-sum_binary64_12448 log-E_binary64_12444 log-rec_binary64_12442 log-div_binary64_12441 pow-base-0_binary64_12438 unpow2_binary64_12419 unpow1/2_binary64_12418 exp-to-pow_binary64_12416 pow-base-1_binary64_12414 unpow0_binary64_12413 unpow1_binary64_12412 unpow-1_binary64_12411 exp-lft-cube_binary64_12410 exp-lft-sqr_binary64_12409 exp-cbrt_binary64_12408 exp-sqrt_binary64_12407 div-exp_binary64_12405 rec-exp_binary64_12404 prod-exp_binary64_12403 exp-diff_binary64_12402 exp-neg_binary64_12401 exp-sum_binary64_12400 e-exp-1_binary64_12399 exp-1-e_binary64_12397 exp-0_binary64_12396 rem-log-exp_binary64_12395 rem-exp-log_binary64_12394 cube-mult_binary64_12384 cube-div_binary64_12383 cube-neg_binary64_12381 rem-3cbrt-rft_binary64_12380 rem-cbrt-cube_binary64_12378 rem-cube-cbrt_binary64_12377 sqr-abs_binary64_12369 sqr-neg_binary64_12368 rem-square-sqrt_binary64_12366 div-sub_binary64_12359 unsub-neg_binary64_12348 /-rgt-identity_binary64_12345 *-rgt-identity_binary64_12344 *-lft-identity_binary64_12343 remove-double-neg_binary64_12342 sub0-neg_binary64_12341 --rgt-identity_binary64_12340 +-lft-identity_binary64_12338 mul0-rgt_binary64_12337 mul0-lft_binary64_12336 div0_binary64_12335 +-inverses_binary64_12333 lft-mult-inverse_binary64_12332 rgt-mult-inverse_binary64_12331 remove-double-div_binary64_12330 difference-of-sqr--1_binary64_12325 difference-of-sqr-1_binary64_12324 difference-of-squares_binary64_12323 swap-sqr_binary64_12321 cancel-sign-sub_binary64_12319 distribute-neg-frac_binary64_12318 distribute-frac-neg_binary64_12317 distribute-neg-out_binary64_12316 distribute-neg-in_binary64_12315 distribute-lft1-in_binary64_12309 distribute-rgt-out--_binary64_12308 distribute-lft-out--_binary64_12306 associate-/r/_binary64_12300 associate-/r*_binary64_12298 associate--r-_binary64_12293 associate--l-_binary64_12292 associate--l+_binary64_12291 associate--r+_binary64_12290 associate-+l-_binary64_12289
Counts
56 → 24
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
038340
160336
2152336
3398336
41293336

prune48.0ms (0.3%)

Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New24024
Fresh01414
Picked011
Done000
Total241539
Error
0.0b
Counts
39 → 15
Compiler

Compiled 1069 to 307 computations (71.3% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.7b
(cbrt.f64 x)
0.7b
(cbrt.f64 x)
0.7b
(cbrt.f64 x)
1.9b
(*.f64 (/.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) 1) (*.f64 (/.f64 x y) (/.f64 (cbrt.f64 x) y)))

rewrite160.0ms (1%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
114×add-exp-log_binary64_12392
57×add-cbrt-cube_binary64_12390
55×prod-exp_binary64_12403
40×div-exp_binary64_12405
32×cbrt-unprod_binary64_12387
22×cbrt-undiv_binary64_12388
10×1-exp_binary64_12398
pow1_binary64_12415 add-cube-cbrt_binary64_12389 add-sqr-sqrt_binary64_12376 *-un-lft-identity_binary64_12354 cbrt-prod_binary64_12385
associate-*l*_binary64_12295
frac-times_binary64_12364 associate-*r/_binary64_12296
add-log-exp_binary64_12393
pow-prod-down_binary64_12425 associate-*l/_binary64_12297 times-frac_binary64_12360 pow1/3_binary64_12436
div-inv_binary64_12351 associate-*r*_binary64_12294 *-commutative_binary64_12285
Counts
4 → 98
Calls

4 calls:

17.0ms
(*.f64 (/.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) 1) (*.f64 (/.f64 x y) (/.f64 (cbrt.f64 x) y)))
1.0ms
(cbrt.f64 x)
1.0ms
(cbrt.f64 x)
1.0ms
(cbrt.f64 x)
Compiler

Compiled 3187 to 728 computations (77.2% saved)

series526.0ms (3.4%)

Error
0.0b
Counts
4 → 15
Calls

4 calls:

172.0ms
(*.f64 (/.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) 1) (*.f64 (/.f64 x y) (/.f64 (cbrt.f64 x) y)))
118.0ms
(cbrt.f64 x)
110.0ms
(cbrt.f64 x)
109.0ms
(cbrt.f64 x)
Compiler

Compiled 1011 to 629 computations (37.8% saved)

simplify2.2s (14.5%)

Algorithm
egg-herbie
Rules
566×associate-/r*_binary64_12298
383×associate-/r/_binary64_12300
317×log-prod_binary64_12440
292×*-commutative_binary64_12285
285×cube-prod_binary64_12382
236×log-div_binary64_12441
219×cube-div_binary64_12383
207×exp-prod_binary64_12406
169×times-frac_binary64_12360
164×associate-*l*_binary64_12295
160×unswap-sqr_binary64_12322
134×associate-*r*_binary64_12294
114×associate-/l*_binary64_12299
113×associate-*l/_binary64_12297
99×div-sub_binary64_12359
71×associate-*r/_binary64_12296
56×associate-+l+_binary64_12287
48×swap-sqr_binary64_12321 associate-+r+_binary64_12286
42×associate--r+_binary64_12290
40×associate-+l-_binary64_12289
39×distribute-lft-neg-in_binary64_12311
38×sqr-pow_binary64_12326 distribute-rgt-neg-in_binary64_12312
37×unpow3_binary64_12420
34×sub-neg_binary64_12347 associate--l+_binary64_12291
32×pow-plus_binary64_12417 cube-mult_binary64_12384
28×log-pow_binary64_12443 distribute-neg-frac_binary64_12318
26×associate-+r-_binary64_12288
22×associate--r-_binary64_12293
21×cancel-sign-sub-inv_binary64_12320 associate-/l/_binary64_12301
20×pow-sqr_binary64_12327
18×exp-lft-sqr_binary64_12409
15×cube-unmult_binary64_12391
14×rem-sqrt-square_binary64_12367 associate--l-_binary64_12292 +-commutative_binary64_12284
11×distribute-neg-in_binary64_12315
10×neg-sub0_binary64_12349
log-rec_binary64_12442 *-lft-identity_binary64_12343
neg-mul-1_binary64_12350 *-rgt-identity_binary64_12344
mul-1-neg_binary64_12346 distribute-rgt-in_binary64_12304
/-rgt-identity_binary64_12345
exp-diff_binary64_12402 sub0-neg_binary64_12341 distribute-lft-in_binary64_12303
exp-to-pow_binary64_12416 cube-neg_binary64_12381 sqr-neg_binary64_12368 distribute-frac-neg_binary64_12317 distribute-rgt-neg-out_binary64_12314 count-2_binary64_12302
unpow1/3_binary64_12421 unpow2_binary64_12419 unpow1_binary64_12412 remove-double-neg_binary64_12342 distribute-rgt1-in_binary64_12310 distribute-rgt-out_binary64_12307
pow-base-1_binary64_12414 exp-sqrt_binary64_12407 div-exp_binary64_12405 rec-exp_binary64_12404 prod-exp_binary64_12403 exp-sum_binary64_12400 1-exp_binary64_12398 exp-1-e_binary64_12397 rem-log-exp_binary64_12395 rem-3cbrt-lft_binary64_12379 rem-cbrt-cube_binary64_12378 rem-cube-cbrt_binary64_12377 --rgt-identity_binary64_12340 *-inverses_binary64_12334 distribute-rgt-out--_binary64_12308 distribute-lft-out_binary64_12305
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_12617 erf-erfc_binary64_12616 erf-odd_binary64_12615 if-if-and-not_binary64_12614 if-if-and_binary64_12613 if-if-or-not_binary64_12612 if-if-or_binary64_12611 if-not_binary64_12610 if-same_binary64_12609 if-false_binary64_12608 if-true_binary64_12607 not-gte_binary64_12606 not-lte_binary64_12605 not-gt_binary64_12604 not-lt_binary64_12603 gte-same_binary64_12602 lte-same_binary64_12601 gt-same_binary64_12600 lt-same_binary64_12599 sinh---cosh_binary64_12546 sinh-+-cosh_binary64_12545 sinh-cosh_binary64_12544 tanh-def-c_binary64_12543 tanh-def-b_binary64_12542 tanh-def-a_binary64_12541 cosh-def_binary64_12540 sinh-def_binary64_12539 tan-neg_binary64_12486 cos-neg_binary64_12485 sin-neg_binary64_12484 tan-0_binary64_12483 cos-0_binary64_12482 sin-0_binary64_12481 hang-m-tan_binary64_12480 hang-p-tan_binary64_12479 hang-m0-tan_binary64_12478 hang-p0-tan_binary64_12477 hang-0m-tan_binary64_12476 hang-0p-tan_binary64_12475 tan-+PI/2_binary64_12474 tan-+PI_binary64_12473 tan-PI_binary64_12472 tan-PI/3_binary64_12471 tan-PI/4_binary64_12470 tan-PI/6_binary64_12469 cos-+PI/2_binary64_12468 cos-+PI_binary64_12467 cos-PI_binary64_12466 cos-PI/2_binary64_12465 cos-PI/3_binary64_12464 cos-PI/4_binary64_12463 cos-PI/6_binary64_12462 sin-+PI/2_binary64_12461 sin-+PI_binary64_12460 sin-PI_binary64_12459 sin-PI/2_binary64_12458 sin-PI/3_binary64_12457 sin-PI/4_binary64_12456 sin-PI/6_binary64_12455 sub-1-sin_binary64_12454 sub-1-cos_binary64_12453 -1-add-sin_binary64_12452 -1-add-cos_binary64_12451 1-sub-sin_binary64_12450 1-sub-cos_binary64_12449 cos-sin-sum_binary64_12448 log-E_binary64_12444 pow-base-0_binary64_12438 unpow1/2_binary64_12418 unpow0_binary64_12413 unpow-1_binary64_12411 exp-lft-cube_binary64_12410 exp-cbrt_binary64_12408 exp-neg_binary64_12401 e-exp-1_binary64_12399 exp-0_binary64_12396 rem-exp-log_binary64_12394 rem-3cbrt-rft_binary64_12380 sqr-abs_binary64_12369 rem-square-sqrt_binary64_12366 unsub-neg_binary64_12348 +-rgt-identity_binary64_12339 +-lft-identity_binary64_12338 mul0-rgt_binary64_12337 mul0-lft_binary64_12336 div0_binary64_12335 +-inverses_binary64_12333 lft-mult-inverse_binary64_12332 rgt-mult-inverse_binary64_12331 remove-double-div_binary64_12330 difference-of-sqr--1_binary64_12325 difference-of-sqr-1_binary64_12324 difference-of-squares_binary64_12323 cancel-sign-sub_binary64_12319 distribute-neg-out_binary64_12316 distribute-lft-neg-out_binary64_12313 distribute-lft1-in_binary64_12309 distribute-lft-out--_binary64_12306
Counts
113 → 185
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01542286
13051118
213581090
335621090

prune197.0ms (1.3%)

Pruning

14 alts after pruning (12 fresh and 2 done)

PrunedKeptTotal
New1841185
Fresh21113
Picked011
Done011
Total18614200
Error
0.0b
Counts
200 → 14
Compiler

Compiled 4889 to 842 computations (82.8% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.4b
(*.f64 (cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y))) (cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y))))
21.6b
(cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y)))
21.6b
(cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y)))
21.6b
(cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y)))

rewrite137.0ms (0.9%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
33×cbrt-div_binary64_12386
20×frac-times_binary64_12364
14×associate-*l/_binary64_12297 associate-*r/_binary64_12296
12×add-sqr-sqrt_binary64_12376
11×pow1_binary64_12415 cbrt-prod_binary64_12385
pow1/3_binary64_12436
add-cube-cbrt_binary64_12389 *-un-lft-identity_binary64_12354
add-exp-log_binary64_12392
add-log-exp_binary64_12393 add-cbrt-cube_binary64_12390 unswap-sqr_binary64_12322 swap-sqr_binary64_12321 associate-*l*_binary64_12295 associate-*r*_binary64_12294
pow-prod-down_binary64_12425 pow-prod-up_binary64_12424 pow-sqr_binary64_12327
pow2_binary64_12435 pow-plus_binary64_12417 prod-exp_binary64_12403 cbrt-unprod_binary64_12387 *-commutative_binary64_12285
Counts
4 → 85
Calls

4 calls:

6.0ms
(*.f64 (cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y))) (cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y))))
5.0ms
(cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y)))
5.0ms
(cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y)))
5.0ms
(cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y)))
Compiler

Compiled 3368 to 351 computations (89.6% saved)

series1.6s (10.5%)

Error
0.0b
Counts
4 → 24
Calls

4 calls:

464.0ms
(*.f64 (cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y))) (cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y))))
374.0ms
(cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y)))
374.0ms
(cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y)))
365.0ms
(cbrt.f64 (*.f64 (/.f64 x y) (/.f64 x y)))
Compiler

Compiled 2742 to 1516 computations (44.7% saved)

simplify685.0ms (4.5%)

Algorithm
egg-herbie
Rules
472×distribute-rgt-in_binary64_12304
427×exp-prod_binary64_12406
343×associate-*l*_binary64_12295
280×associate-*r*_binary64_12294
263×cancel-sign-sub-inv_binary64_12320
183×distribute-rgt-out_binary64_12307
178×exp-sum_binary64_12400
165×unswap-sqr_binary64_12322
133×sqr-pow_binary64_12326
132×associate-*l/_binary64_12297
129×log-prod_binary64_12440
117×unsub-neg_binary64_12348
107×distribute-lft-out_binary64_12305
105×div-sub_binary64_12359
93×swap-sqr_binary64_12321
89×distribute-rgt-neg-in_binary64_12312
88×*-commutative_binary64_12285
84×log-div_binary64_12441
81×times-frac_binary64_12360
79×associate-*r/_binary64_12296
75×distribute-lft-neg-in_binary64_12311
74×distribute-rgt-out--_binary64_12308
73×distribute-rgt-neg-out_binary64_12314
69×distribute-lft-neg-out_binary64_12313
68×cube-prod_binary64_12382
63×distribute-lft-in_binary64_12303
62×sub-neg_binary64_12347
58×exp-to-pow_binary64_12416
55×exp-diff_binary64_12402
54×neg-mul-1_binary64_12350
52×distribute-neg-out_binary64_12316
51×associate-/l*_binary64_12299
48×neg-sub0_binary64_12349
43×distribute-neg-in_binary64_12315
42×pow-sqr_binary64_12327
39×associate-/r*_binary64_12298
38×distribute-lft-out--_binary64_12306
37×exp-sqrt_binary64_12407
36×exp-lft-sqr_binary64_12409
34×*-rgt-identity_binary64_12344
33×cube-div_binary64_12383
30×*-lft-identity_binary64_12343 distribute-neg-frac_binary64_12318
23×log-pow_binary64_12443
22×exp-neg_binary64_12401 +-commutative_binary64_12284
19×distribute-frac-neg_binary64_12317
18×associate-/r/_binary64_12300
17×associate-+l+_binary64_12287 associate-+r+_binary64_12286
16×unpow1/3_binary64_12421 pow-plus_binary64_12417
15×associate-/l/_binary64_12301
14×log-rec_binary64_12442 cube-unmult_binary64_12391
12×/-rgt-identity_binary64_12345 associate-+l-_binary64_12289 associate-+r-_binary64_12288
associate--r+_binary64_12290
remove-double-neg_binary64_12342 associate--l+_binary64_12291
mul0-lft_binary64_12336 count-2_binary64_12302
unpow3_binary64_12420 sub0-neg_binary64_12341 +-rgt-identity_binary64_12339 mul0-rgt_binary64_12337
rem-sqrt-square_binary64_12367 distribute-rgt1-in_binary64_12310
cancel-sign-sub_binary64_12319 associate--r-_binary64_12293 associate--l-_binary64_12292
unpow2_binary64_12419 cube-mult_binary64_12384
unpow1_binary64_12412 rem-exp-log_binary64_12394 rem-3cbrt-lft_binary64_12379
pow-base-1_binary64_12414 prod-exp_binary64_12403 1-exp_binary64_12398 exp-1-e_binary64_12397 rem-log-exp_binary64_12395 rem-3cbrt-rft_binary64_12380 rem-square-sqrt_binary64_12366 div0_binary64_12335 *-inverses_binary64_12334
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_12617 erf-erfc_binary64_12616 erf-odd_binary64_12615 if-if-and-not_binary64_12614 if-if-and_binary64_12613 if-if-or-not_binary64_12612 if-if-or_binary64_12611 if-not_binary64_12610 if-same_binary64_12609 if-false_binary64_12608 if-true_binary64_12607 not-gte_binary64_12606 not-lte_binary64_12605 not-gt_binary64_12604 not-lt_binary64_12603 gte-same_binary64_12602 lte-same_binary64_12601 gt-same_binary64_12600 lt-same_binary64_12599 sinh---cosh_binary64_12546 sinh-+-cosh_binary64_12545 sinh-cosh_binary64_12544 tanh-def-c_binary64_12543 tanh-def-b_binary64_12542 tanh-def-a_binary64_12541 cosh-def_binary64_12540 sinh-def_binary64_12539 tan-neg_binary64_12486 cos-neg_binary64_12485 sin-neg_binary64_12484 tan-0_binary64_12483 cos-0_binary64_12482 sin-0_binary64_12481 hang-m-tan_binary64_12480 hang-p-tan_binary64_12479 hang-m0-tan_binary64_12478 hang-p0-tan_binary64_12477 hang-0m-tan_binary64_12476 hang-0p-tan_binary64_12475 tan-+PI/2_binary64_12474 tan-+PI_binary64_12473 tan-PI_binary64_12472 tan-PI/3_binary64_12471 tan-PI/4_binary64_12470 tan-PI/6_binary64_12469 cos-+PI/2_binary64_12468 cos-+PI_binary64_12467 cos-PI_binary64_12466 cos-PI/2_binary64_12465 cos-PI/3_binary64_12464 cos-PI/4_binary64_12463 cos-PI/6_binary64_12462 sin-+PI/2_binary64_12461 sin-+PI_binary64_12460 sin-PI_binary64_12459 sin-PI/2_binary64_12458 sin-PI/3_binary64_12457 sin-PI/4_binary64_12456 sin-PI/6_binary64_12455 sub-1-sin_binary64_12454 sub-1-cos_binary64_12453 -1-add-sin_binary64_12452 -1-add-cos_binary64_12451 1-sub-sin_binary64_12450 1-sub-cos_binary64_12449 cos-sin-sum_binary64_12448 log-E_binary64_12444 pow-base-0_binary64_12438 unpow1/2_binary64_12418 unpow0_binary64_12413 unpow-1_binary64_12411 exp-lft-cube_binary64_12410 exp-cbrt_binary64_12408 div-exp_binary64_12405 rec-exp_binary64_12404 e-exp-1_binary64_12399 exp-0_binary64_12396 cube-neg_binary64_12381 rem-cbrt-cube_binary64_12378 rem-cube-cbrt_binary64_12377 sqr-abs_binary64_12369 sqr-neg_binary64_12368 mul-1-neg_binary64_12346 --rgt-identity_binary64_12340 +-lft-identity_binary64_12338 +-inverses_binary64_12333 lft-mult-inverse_binary64_12332 rgt-mult-inverse_binary64_12331 remove-double-div_binary64_12330 difference-of-sqr--1_binary64_12325 difference-of-sqr-1_binary64_12324 difference-of-squares_binary64_12323 distribute-lft1-in_binary64_12309
Counts
109 → 297
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01412253
12812019
27021903
324121803

prune439.0ms (2.8%)

Pruning

14 alts after pruning (11 fresh and 3 done)

PrunedKeptTotal
New2970297
Fresh01111
Picked011
Done022
Total29714311
Error
0.0b
Counts
311 → 14
Compiler

Compiled 11591 to 1716 computations (85.2% saved)

regimes2.7s (17.6%)

Accuracy

Total 0.4b remaining (98.1%)

Threshold costs 0.4b (98.1%)

Compiler

Compiled 31774 to 18029 computations (43.3% saved)

bsearch0.0ms (0%)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_12284
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_12614 if-if-and_binary64_12613 if-if-or-not_binary64_12612 if-if-or_binary64_12611 if-not_binary64_12610 if-same_binary64_12609 if-false_binary64_12608 if-true_binary64_12607 tan-0_binary64_12483 cos-0_binary64_12482 sin-0_binary64_12481 unpow1_binary64_12412 e-exp-1_binary64_12399 1-exp_binary64_12398 exp-1-e_binary64_12397 exp-0_binary64_12396 sqr-abs_binary64_12369 sqr-neg_binary64_12368 neg-mul-1_binary64_12350 neg-sub0_binary64_12349 unsub-neg_binary64_12348 sub-neg_binary64_12347 mul-1-neg_binary64_12346 /-rgt-identity_binary64_12345 *-rgt-identity_binary64_12344 *-lft-identity_binary64_12343 remove-double-neg_binary64_12342 sub0-neg_binary64_12341 --rgt-identity_binary64_12340 +-rgt-identity_binary64_12339 +-lft-identity_binary64_12338 cancel-sign-sub-inv_binary64_12320 cancel-sign-sub_binary64_12319 distribute-neg-frac_binary64_12318 distribute-frac-neg_binary64_12317 distribute-neg-out_binary64_12316 distribute-neg-in_binary64_12315 distribute-rgt-neg-out_binary64_12314 distribute-lft-neg-out_binary64_12313 distribute-rgt-neg-in_binary64_12312 distribute-lft-neg-in_binary64_12311 *-commutative_binary64_12285
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01119
11219
Proof
(+ f64 (pow f64 (/ f64 h0 h1) 2) (* f64 (/ f64 h2 h3) (/ f64 h2 h3)))

end0.0ms (0%)

sample2.8s (18.5%)

Algorithm
intervals
Results
344.0ms8000×body128valid
258.0ms5974×body128invalid
Compiler

Compiled 2859 to 1613 computations (43.6% saved)

Profiling

Loading profile data...