Details

Time bar (total: 6.7s)

analyze78.0ms (1.2%)

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
25%74.9%0.1%5
37.5%62.4%0.1%6
56.2%43.7%0.1%7
65.6%34.3%0.1%8
76.5%23.4%0.1%9
82%18%0.1%10
87.8%12.1%0.1%11
90.7%9.2%0.1%12
93.8%6.1%0.1%13
95.3%4.6%0.1%14
Compiler

Compiled 6 to 6 computations (0% saved)

sample14.0ms (0.2%)

Algorithm
intervals
Results
4.0ms249×body128valid
0.0msbody2048valid
0.0msbody1024valid
0.0msbody128invalid
0.0msbody256valid
Compiler

Compiled 11 to 13 computations (-18.2% saved)

simplify603.0ms (9%)

Algorithm
egg-herbie
Rules
787×exp-prod_binary64_14452
614×swap-sqr_binary64_14367
383×distribute-rgt-neg-in_binary64_14358
295×distribute-neg-in_binary64_14361
251×distribute-lft-neg-in_binary64_14357
242×associate--r-_binary64_14339
224×distribute-rgt1-in_binary64_14356
213×exp-sum_binary64_14446
203×unsub-neg_binary64_14394
158×distribute-rgt-in_binary64_14350
154×sub-neg_binary64_14393
153×*-commutative_binary64_14331
152×sqr-pow_binary64_14372
140×neg-mul-1_binary64_14396
138×neg-sub0_binary64_14395
102×associate-*r*_binary64_14340
98×distribute-rgt-out_binary64_14353
92×distribute-lft-in_binary64_14349
85×pow-sqr_binary64_14373
82×pow-plus_binary64_14463
79×associate-+l+_binary64_14333
69×distribute-rgt-out--_binary64_14354
67×cancel-sign-sub-inv_binary64_14366
65×associate-*l*_binary64_14341
62×associate--r+_binary64_14336
58×associate--l+_binary64_14337
57×associate-+r+_binary64_14332
56×distribute-rgt-neg-out_binary64_14360
48×exp-diff_binary64_14448
44×distribute-lft-out_binary64_14351
40×distribute-lft-out--_binary64_14352
39×+-commutative_binary64_14330
34×associate-+l-_binary64_14335
29×distribute-neg-out_binary64_14362
27×distribute-lft-neg-out_binary64_14359
25×remove-double-neg_binary64_14388
20×sqr-neg_binary64_14414
18×count-2_binary64_14348
17×distribute-lft1-in_binary64_14355
13×exp-lft-sqr_binary64_14455
11×*-rgt-identity_binary64_14390 *-lft-identity_binary64_14389
10×exp-neg_binary64_14447 sub0-neg_binary64_14387 associate-*l/_binary64_14343
+-lft-identity_binary64_14384 associate-+r-_binary64_14334
+-inverses_binary64_14379
cube-prod_binary64_14428 +-rgt-identity_binary64_14385
cube-unmult_binary64_14437 mul0-lft_binary64_14382
--rgt-identity_binary64_14386 mul0-rgt_binary64_14383 difference-of-squares_binary64_14369
cube-neg_binary64_14427 difference-of-sqr--1_binary64_14371 unswap-sqr_binary64_14368
1-exp_binary64_14444 distribute-neg-frac_binary64_14364 associate--l-_binary64_14338
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_14663 erf-erfc_binary64_14662 erf-odd_binary64_14661 if-if-and-not_binary64_14660 if-if-and_binary64_14659 if-if-or-not_binary64_14658 if-if-or_binary64_14657 if-not_binary64_14656 if-same_binary64_14655 if-false_binary64_14654 if-true_binary64_14653 not-gte_binary64_14652 not-lte_binary64_14651 not-gt_binary64_14650 not-lt_binary64_14649 gte-same_binary64_14648 lte-same_binary64_14647 gt-same_binary64_14646 lt-same_binary64_14645 sinh---cosh_binary64_14592 sinh-+-cosh_binary64_14591 sinh-cosh_binary64_14590 tanh-def-c_binary64_14589 tanh-def-b_binary64_14588 tanh-def-a_binary64_14587 cosh-def_binary64_14586 sinh-def_binary64_14585 tan-neg_binary64_14532 cos-neg_binary64_14531 sin-neg_binary64_14530 tan-0_binary64_14529 cos-0_binary64_14528 sin-0_binary64_14527 hang-m-tan_binary64_14526 hang-p-tan_binary64_14525 hang-m0-tan_binary64_14524 hang-p0-tan_binary64_14523 hang-0m-tan_binary64_14522 hang-0p-tan_binary64_14521 tan-+PI/2_binary64_14520 tan-+PI_binary64_14519 tan-PI_binary64_14518 tan-PI/3_binary64_14517 tan-PI/4_binary64_14516 tan-PI/6_binary64_14515 cos-+PI/2_binary64_14514 cos-+PI_binary64_14513 cos-PI_binary64_14512 cos-PI/2_binary64_14511 cos-PI/3_binary64_14510 cos-PI/4_binary64_14509 cos-PI/6_binary64_14508 sin-+PI/2_binary64_14507 sin-+PI_binary64_14506 sin-PI_binary64_14505 sin-PI/2_binary64_14504 sin-PI/3_binary64_14503 sin-PI/4_binary64_14502 sin-PI/6_binary64_14501 sub-1-sin_binary64_14500 sub-1-cos_binary64_14499 -1-add-sin_binary64_14498 -1-add-cos_binary64_14497 1-sub-sin_binary64_14496 1-sub-cos_binary64_14495 cos-sin-sum_binary64_14494 log-E_binary64_14490 log-pow_binary64_14489 log-rec_binary64_14488 log-div_binary64_14487 log-prod_binary64_14486 pow-base-0_binary64_14484 unpow1/3_binary64_14467 unpow3_binary64_14466 unpow2_binary64_14465 unpow1/2_binary64_14464 exp-to-pow_binary64_14462 pow-base-1_binary64_14460 unpow0_binary64_14459 unpow1_binary64_14458 unpow-1_binary64_14457 exp-lft-cube_binary64_14456 exp-cbrt_binary64_14454 exp-sqrt_binary64_14453 div-exp_binary64_14451 rec-exp_binary64_14450 prod-exp_binary64_14449 e-exp-1_binary64_14445 exp-1-e_binary64_14443 exp-0_binary64_14442 rem-log-exp_binary64_14441 rem-exp-log_binary64_14440 cube-mult_binary64_14430 cube-div_binary64_14429 rem-3cbrt-rft_binary64_14426 rem-3cbrt-lft_binary64_14425 rem-cbrt-cube_binary64_14424 rem-cube-cbrt_binary64_14423 sqr-abs_binary64_14415 rem-sqrt-square_binary64_14413 rem-square-sqrt_binary64_14412 times-frac_binary64_14406 div-sub_binary64_14405 mul-1-neg_binary64_14392 /-rgt-identity_binary64_14391 div0_binary64_14381 *-inverses_binary64_14380 lft-mult-inverse_binary64_14378 rgt-mult-inverse_binary64_14377 remove-double-div_binary64_14376 difference-of-sqr-1_binary64_14370 cancel-sign-sub_binary64_14365 distribute-frac-neg_binary64_14363 associate-/l/_binary64_14347 associate-/r/_binary64_14346 associate-/l*_binary64_14345 associate-/r*_binary64_14344 associate-*r/_binary64_14342
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
197
2207
3357
4547
5757
61587
77447
819647

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 5 to 5 computations (0% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

rewrite33.0ms (0.5%)

Algorithm
rewrite-expression-head
Error
0b
Rules
add-sqr-sqrt_binary64_14422
*-un-lft-identity_binary64_14400
cancel-sign-sub-inv_binary64_14366
add-cube-cbrt_binary64_14435 associate-*r*_binary64_14340
distribute-rgt-in_binary64_14350 distribute-lft-in_binary64_14349
pow1_binary64_14461 add-exp-log_binary64_14438 add-cbrt-cube_binary64_14436 associate-*l*_binary64_14341
sub-neg_binary64_14393 associate-*r/_binary64_14342
pow-prod-down_binary64_14471 prod-exp_binary64_14449 add-log-exp_binary64_14439 cbrt-unprod_binary64_14433 unswap-sqr_binary64_14368 flip3--_binary64_14404 flip--_binary64_14375 difference-of-squares_binary64_14369 distribute-lft-out--_binary64_14352 *-commutative_binary64_14331
Counts
1 → 30
Calls

1 calls:

7.0ms
(*.f64 200 (-.f64 x y))
Compiler

Compiled 338 to 187 computations (44.7% saved)

series106.0ms (1.6%)

Error
0.0b
Counts
1 → 12
Calls

1 calls:

99.0ms
(*.f64 200 (-.f64 x y))
Compiler

Compiled 162 to 152 computations (6.2% saved)

simplify120.0ms (1.8%)

Algorithm
egg-herbie
Rules
418×neg-sub0_binary64_14395
398×neg-mul-1_binary64_14396
393×associate-*l*_binary64_14341
333×associate-*r*_binary64_14340
318×unswap-sqr_binary64_14368
250×cancel-sign-sub-inv_binary64_14366
249×distribute-rgt-neg-out_binary64_14360
208×distribute-lft-neg-out_binary64_14359
195×sqr-pow_binary64_14372
173×exp-prod_binary64_14452
169×distribute-rgt-in_binary64_14350
167×distribute-lft-in_binary64_14349
120×unsub-neg_binary64_14394
80×associate-+r+_binary64_14332
68×exp-sum_binary64_14446
64×pow-sqr_binary64_14373 *-commutative_binary64_14331
59×associate-+l+_binary64_14333
58×+-commutative_binary64_14330
57×sub-neg_binary64_14393 swap-sqr_binary64_14367
56×*-rgt-identity_binary64_14390
55×*-lft-identity_binary64_14389
37×times-frac_binary64_14406
32×difference-of-squares_binary64_14369
26×div-sub_binary64_14405 distribute-rgt-out_binary64_14353
24×exp-diff_binary64_14448
22×distribute-lft-out_binary64_14351
21×distribute-rgt-neg-in_binary64_14358
20×cube-prod_binary64_14428
17×exp-to-pow_binary64_14462
16×mul0-rgt_binary64_14383 mul0-lft_binary64_14382 associate-/l*_binary64_14345
15×+-rgt-identity_binary64_14385
14×distribute-lft-neg-in_binary64_14357
13×log-prod_binary64_14486
12×sqr-neg_binary64_14414
11×cube-unmult_binary64_14437 +-lft-identity_binary64_14384 associate-+r-_binary64_14334
10×mul-1-neg_binary64_14392 sub0-neg_binary64_14387 associate-+l-_binary64_14335
unpow3_binary64_14466
remove-double-neg_binary64_14388
pow-plus_binary64_14463 associate-/l/_binary64_14347
exp-neg_binary64_14447 --rgt-identity_binary64_14386 associate-*r/_binary64_14342
prod-exp_binary64_14449 distribute-rgt-out--_binary64_14354
cube-mult_binary64_14430 cube-neg_binary64_14427 rem-sqrt-square_binary64_14413 /-rgt-identity_binary64_14391 associate-*l/_binary64_14343 associate--r+_binary64_14336
log-pow_binary64_14489 pow-base-1_binary64_14460 div-exp_binary64_14451 1-exp_binary64_14444 exp-1-e_binary64_14443 rem-log-exp_binary64_14441 rem-3cbrt-lft_binary64_14425 rem-square-sqrt_binary64_14412 div0_binary64_14381 *-inverses_binary64_14380 rgt-mult-inverse_binary64_14377 distribute-lft-out--_binary64_14352 count-2_binary64_14348
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_14663 erf-erfc_binary64_14662 erf-odd_binary64_14661 if-if-and-not_binary64_14660 if-if-and_binary64_14659 if-if-or-not_binary64_14658 if-if-or_binary64_14657 if-not_binary64_14656 if-same_binary64_14655 if-false_binary64_14654 if-true_binary64_14653 not-gte_binary64_14652 not-lte_binary64_14651 not-gt_binary64_14650 not-lt_binary64_14649 gte-same_binary64_14648 lte-same_binary64_14647 gt-same_binary64_14646 lt-same_binary64_14645 sinh---cosh_binary64_14592 sinh-+-cosh_binary64_14591 sinh-cosh_binary64_14590 tanh-def-c_binary64_14589 tanh-def-b_binary64_14588 tanh-def-a_binary64_14587 cosh-def_binary64_14586 sinh-def_binary64_14585 tan-neg_binary64_14532 cos-neg_binary64_14531 sin-neg_binary64_14530 tan-0_binary64_14529 cos-0_binary64_14528 sin-0_binary64_14527 hang-m-tan_binary64_14526 hang-p-tan_binary64_14525 hang-m0-tan_binary64_14524 hang-p0-tan_binary64_14523 hang-0m-tan_binary64_14522 hang-0p-tan_binary64_14521 tan-+PI/2_binary64_14520 tan-+PI_binary64_14519 tan-PI_binary64_14518 tan-PI/3_binary64_14517 tan-PI/4_binary64_14516 tan-PI/6_binary64_14515 cos-+PI/2_binary64_14514 cos-+PI_binary64_14513 cos-PI_binary64_14512 cos-PI/2_binary64_14511 cos-PI/3_binary64_14510 cos-PI/4_binary64_14509 cos-PI/6_binary64_14508 sin-+PI/2_binary64_14507 sin-+PI_binary64_14506 sin-PI_binary64_14505 sin-PI/2_binary64_14504 sin-PI/3_binary64_14503 sin-PI/4_binary64_14502 sin-PI/6_binary64_14501 sub-1-sin_binary64_14500 sub-1-cos_binary64_14499 -1-add-sin_binary64_14498 -1-add-cos_binary64_14497 1-sub-sin_binary64_14496 1-sub-cos_binary64_14495 cos-sin-sum_binary64_14494 log-E_binary64_14490 log-rec_binary64_14488 log-div_binary64_14487 pow-base-0_binary64_14484 unpow1/3_binary64_14467 unpow2_binary64_14465 unpow1/2_binary64_14464 unpow0_binary64_14459 unpow1_binary64_14458 unpow-1_binary64_14457 exp-lft-cube_binary64_14456 exp-lft-sqr_binary64_14455 exp-cbrt_binary64_14454 exp-sqrt_binary64_14453 rec-exp_binary64_14450 e-exp-1_binary64_14445 exp-0_binary64_14442 rem-exp-log_binary64_14440 cube-div_binary64_14429 rem-3cbrt-rft_binary64_14426 rem-cbrt-cube_binary64_14424 rem-cube-cbrt_binary64_14423 sqr-abs_binary64_14415 +-inverses_binary64_14379 lft-mult-inverse_binary64_14378 remove-double-div_binary64_14376 difference-of-sqr--1_binary64_14371 difference-of-sqr-1_binary64_14370 cancel-sign-sub_binary64_14365 distribute-neg-frac_binary64_14364 distribute-frac-neg_binary64_14363 distribute-neg-out_binary64_14362 distribute-neg-in_binary64_14361 distribute-rgt1-in_binary64_14356 distribute-lft1-in_binary64_14355 associate-/r/_binary64_14346 associate-/r*_binary64_14344 associate--r-_binary64_14339 associate--l-_binary64_14338 associate--l+_binary64_14337
Counts
42 → 45
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
069389
1165359
2462359
31744359
43113359

prune40.0ms (0.6%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New41445
Fresh000
Picked101
Done000
Total42446
Error
0.0b
Counts
46 → 4
Compiler

Compiled 424 to 277 computations (34.7% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

rewrite18.0ms (0.3%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
add-log-exp_binary64_14439
sum-log_binary64_14491 pow1_binary64_14461 add-exp-log_binary64_14438 add-cbrt-cube_binary64_14436 add-cube-cbrt_binary64_14435 add-sqr-sqrt_binary64_14422 flip3-+_binary64_14403 *-un-lft-identity_binary64_14400 distribute-rgt-neg-out_binary64_14360 unsub-neg_binary64_14394 flip-+_binary64_14374 +-commutative_binary64_14330
Counts
1 → 12
Calls

1 calls:

4.0ms
(+.f64 (*.f64 x 200) (*.f64 200 (neg.f64 y)))
Compiler

Compiled 206 to 144 computations (30.1% saved)

series141.0ms (2.1%)

Error
0.0b
Counts
1 → 12
Calls

1 calls:

133.0ms
(+.f64 (*.f64 x 200) (*.f64 200 (neg.f64 y)))
Compiler

Compiled 162 to 152 computations (6.2% saved)

simplify157.0ms (2.3%)

Algorithm
egg-herbie
Rules
364×associate-*l*_binary64_14341
327×unswap-sqr_binary64_14368
324×distribute-rgt-out_binary64_14353
320×associate-*r*_binary64_14340
308×neg-sub0_binary64_14395
282×neg-mul-1_binary64_14396
277×distribute-rgt-neg-out_binary64_14360
271×cancel-sign-sub-inv_binary64_14366
211×sub-neg_binary64_14393
199×distribute-lft-out_binary64_14351
189×distribute-rgt-neg-in_binary64_14358
185×distribute-lft-neg-out_binary64_14359
175×unsub-neg_binary64_14394
153×distribute-lft-neg-in_binary64_14357
136×remove-double-neg_binary64_14388
134×associate-+r+_binary64_14332
119×sqr-pow_binary64_14372
112×associate-+l+_binary64_14333
109×exp-prod_binary64_14452
105×times-frac_binary64_14406
84×distribute-rgt-in_binary64_14350
79×distribute-rgt-out--_binary64_14354
72×distribute-lft-in_binary64_14349
67×pow-sqr_binary64_14373
59×associate-+l-_binary64_14335
55×cube-prod_binary64_14428
51×distribute-neg-out_binary64_14362
50×difference-of-squares_binary64_14369 associate-+r-_binary64_14334 +-commutative_binary64_14330
41×div-sub_binary64_14405
39×*-commutative_binary64_14331
33×exp-sum_binary64_14446
29×distribute-neg-in_binary64_14361
26×sub0-neg_binary64_14387 cancel-sign-sub_binary64_14365
23×distribute-lft-out--_binary64_14352
21×exp-diff_binary64_14448 +-rgt-identity_binary64_14385
20×mul0-rgt_binary64_14383 mul0-lft_binary64_14382 associate--r+_binary64_14336
19×associate--r-_binary64_14339
18×associate-/l*_binary64_14345
16×swap-sqr_binary64_14367
14×unpow3_binary64_14466
12×associate--l+_binary64_14337
10×exp-neg_binary64_14447 cube-mult_binary64_14430 cube-neg_binary64_14427 associate--l-_binary64_14338
sqr-neg_binary64_14414 associate-/l/_binary64_14347 associate-*r/_binary64_14342
log-prod_binary64_14486 cube-unmult_binary64_14437 associate-/r*_binary64_14344
--rgt-identity_binary64_14386 associate-/r/_binary64_14346
mul-1-neg_binary64_14392
div-exp_binary64_14451 prod-exp_binary64_14449 +-lft-identity_binary64_14384 distribute-frac-neg_binary64_14363
associate-*l/_binary64_14343
pow-plus_binary64_14463 *-rgt-identity_binary64_14390 *-lft-identity_binary64_14389 div0_binary64_14381
exp-sqrt_binary64_14453 1-exp_binary64_14444 *-inverses_binary64_14380 count-2_binary64_14348
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_14663 erf-erfc_binary64_14662 erf-odd_binary64_14661 if-if-and-not_binary64_14660 if-if-and_binary64_14659 if-if-or-not_binary64_14658 if-if-or_binary64_14657 if-not_binary64_14656 if-same_binary64_14655 if-false_binary64_14654 if-true_binary64_14653 not-gte_binary64_14652 not-lte_binary64_14651 not-gt_binary64_14650 not-lt_binary64_14649 gte-same_binary64_14648 lte-same_binary64_14647 gt-same_binary64_14646 lt-same_binary64_14645 sinh---cosh_binary64_14592 sinh-+-cosh_binary64_14591 sinh-cosh_binary64_14590 tanh-def-c_binary64_14589 tanh-def-b_binary64_14588 tanh-def-a_binary64_14587 cosh-def_binary64_14586 sinh-def_binary64_14585 tan-neg_binary64_14532 cos-neg_binary64_14531 sin-neg_binary64_14530 tan-0_binary64_14529 cos-0_binary64_14528 sin-0_binary64_14527 hang-m-tan_binary64_14526 hang-p-tan_binary64_14525 hang-m0-tan_binary64_14524 hang-p0-tan_binary64_14523 hang-0m-tan_binary64_14522 hang-0p-tan_binary64_14521 tan-+PI/2_binary64_14520 tan-+PI_binary64_14519 tan-PI_binary64_14518 tan-PI/3_binary64_14517 tan-PI/4_binary64_14516 tan-PI/6_binary64_14515 cos-+PI/2_binary64_14514 cos-+PI_binary64_14513 cos-PI_binary64_14512 cos-PI/2_binary64_14511 cos-PI/3_binary64_14510 cos-PI/4_binary64_14509 cos-PI/6_binary64_14508 sin-+PI/2_binary64_14507 sin-+PI_binary64_14506 sin-PI_binary64_14505 sin-PI/2_binary64_14504 sin-PI/3_binary64_14503 sin-PI/4_binary64_14502 sin-PI/6_binary64_14501 sub-1-sin_binary64_14500 sub-1-cos_binary64_14499 -1-add-sin_binary64_14498 -1-add-cos_binary64_14497 1-sub-sin_binary64_14496 1-sub-cos_binary64_14495 cos-sin-sum_binary64_14494 log-E_binary64_14490 log-pow_binary64_14489 log-rec_binary64_14488 log-div_binary64_14487 pow-base-0_binary64_14484 unpow1/3_binary64_14467 unpow2_binary64_14465 unpow1/2_binary64_14464 exp-to-pow_binary64_14462 pow-base-1_binary64_14460 unpow0_binary64_14459 unpow1_binary64_14458 unpow-1_binary64_14457 exp-lft-cube_binary64_14456 exp-lft-sqr_binary64_14455 exp-cbrt_binary64_14454 rec-exp_binary64_14450 e-exp-1_binary64_14445 exp-1-e_binary64_14443 exp-0_binary64_14442 rem-log-exp_binary64_14441 rem-exp-log_binary64_14440 cube-div_binary64_14429 rem-3cbrt-rft_binary64_14426 rem-3cbrt-lft_binary64_14425 rem-cbrt-cube_binary64_14424 rem-cube-cbrt_binary64_14423 sqr-abs_binary64_14415 rem-sqrt-square_binary64_14413 rem-square-sqrt_binary64_14412 /-rgt-identity_binary64_14391 +-inverses_binary64_14379 lft-mult-inverse_binary64_14378 rgt-mult-inverse_binary64_14377 remove-double-div_binary64_14376 difference-of-sqr--1_binary64_14371 difference-of-sqr-1_binary64_14370 distribute-neg-frac_binary64_14364 distribute-rgt1-in_binary64_14356 distribute-lft1-in_binary64_14355
Counts
24 → 68
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
034248
1121224
2427214
31645211
43835211

prune82.0ms (1.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New68068
Fresh033
Picked011
Done000
Total68472
Error
0.0b
Counts
72 → 4
Compiler

Compiled 1456 to 902 computations (38% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.1b
(*.f64 (-.f64 x y) (cbrt.f64 200))
0.4b
(*.f64 (*.f64 (cbrt.f64 200) (cbrt.f64 200)) (*.f64 (-.f64 x y) (cbrt.f64 200)))

rewrite89.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0b
Rules
16×pow1_binary64_14461 add-exp-log_binary64_14438
11×add-sqr-sqrt_binary64_14422
pow-prod-down_binary64_14471 prod-exp_binary64_14449 add-cbrt-cube_binary64_14436 cbrt-unprod_binary64_14433
*-un-lft-identity_binary64_14400 associate-*r*_binary64_14340
associate-*l*_binary64_14341
add-cube-cbrt_binary64_14435
associate-*l/_binary64_14343 cbrt-prod_binary64_14431
add-log-exp_binary64_14439 flip3--_binary64_14404 associate-*r/_binary64_14342 flip--_binary64_14375 *-commutative_binary64_14331 unswap-sqr_binary64_14368
difference-of-squares_binary64_14369 distribute-lft-out--_binary64_14352
Counts
2 → 50
Calls

2 calls:

13.0ms
(*.f64 (*.f64 (cbrt.f64 200) (cbrt.f64 200)) (*.f64 (-.f64 x y) (cbrt.f64 200)))
8.0ms
(*.f64 (-.f64 x y) (cbrt.f64 200))
Compiler

Compiled 962 to 697 computations (27.5% saved)

series463.0ms (6.9%)

Error
0.0b
Counts
2 → 24
Calls

2 calls:

287.0ms
(*.f64 (*.f64 (cbrt.f64 200) (cbrt.f64 200)) (*.f64 (-.f64 x y) (cbrt.f64 200)))
154.0ms
(*.f64 (-.f64 x y) (cbrt.f64 200))
Compiler

Compiled 720 to 698 computations (3.1% saved)

simplify255.0ms (3.8%)

Algorithm
egg-herbie
Rules
543×neg-mul-1_binary64_14396
344×distribute-rgt-in_binary64_14350
342×distribute-lft-in_binary64_14349
255×distribute-rgt-neg-out_binary64_14360 distribute-lft-neg-out_binary64_14359
218×*-commutative_binary64_14331
199×+-commutative_binary64_14330
189×exp-prod_binary64_14452
135×associate-*l*_binary64_14341
129×unswap-sqr_binary64_14368
120×associate-*r*_binary64_14340
89×sqr-pow_binary64_14372
65×associate-+l+_binary64_14333
63×associate-+r+_binary64_14332
62×exp-sum_binary64_14446
56×neg-sub0_binary64_14395
51×distribute-rgt-neg-in_binary64_14358
46×log-prod_binary64_14486 unsub-neg_binary64_14394 cancel-sign-sub-inv_binary64_14366 distribute-lft-neg-in_binary64_14357
39×*-rgt-identity_binary64_14390
37×div-sub_binary64_14405
36×cube-prod_binary64_14428 sub-neg_binary64_14393 *-lft-identity_binary64_14389
35×pow-sqr_binary64_14373
28×swap-sqr_binary64_14367 associate-/l*_binary64_14345
24×exp-diff_binary64_14448
20×times-frac_binary64_14406
19×exp-neg_binary64_14447
18×pow-plus_binary64_14463
12×difference-of-squares_binary64_14369
10×cube-unmult_binary64_14437 sqr-neg_binary64_14414 associate-*r/_binary64_14342
distribute-rgt-out--_binary64_14354 associate-/l/_binary64_14347 associate-+r-_binary64_14334
log-pow_binary64_14489 associate-+l-_binary64_14335
unpow3_binary64_14466
sub0-neg_binary64_14387 +-rgt-identity_binary64_14385
prod-exp_binary64_14449 cube-mult_binary64_14430 associate-/r*_binary64_14344
rem-sqrt-square_binary64_14413 associate-/r/_binary64_14346
cube-neg_binary64_14427 distribute-rgt-out_binary64_14353
div-exp_binary64_14451 mul-1-neg_binary64_14392 distribute-lft-out--_binary64_14352 count-2_binary64_14348 associate-*l/_binary64_14343
pow-base-1_binary64_14460 1-exp_binary64_14444 exp-1-e_binary64_14443 rem-log-exp_binary64_14441 rem-cbrt-cube_binary64_14424 rem-cube-cbrt_binary64_14423 /-rgt-identity_binary64_14391 distribute-rgt1-in_binary64_14356 distribute-lft1-in_binary64_14355
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_14663 erf-erfc_binary64_14662 erf-odd_binary64_14661 if-if-and-not_binary64_14660 if-if-and_binary64_14659 if-if-or-not_binary64_14658 if-if-or_binary64_14657 if-not_binary64_14656 if-same_binary64_14655 if-false_binary64_14654 if-true_binary64_14653 not-gte_binary64_14652 not-lte_binary64_14651 not-gt_binary64_14650 not-lt_binary64_14649 gte-same_binary64_14648 lte-same_binary64_14647 gt-same_binary64_14646 lt-same_binary64_14645 sinh---cosh_binary64_14592 sinh-+-cosh_binary64_14591 sinh-cosh_binary64_14590 tanh-def-c_binary64_14589 tanh-def-b_binary64_14588 tanh-def-a_binary64_14587 cosh-def_binary64_14586 sinh-def_binary64_14585 tan-neg_binary64_14532 cos-neg_binary64_14531 sin-neg_binary64_14530 tan-0_binary64_14529 cos-0_binary64_14528 sin-0_binary64_14527 hang-m-tan_binary64_14526 hang-p-tan_binary64_14525 hang-m0-tan_binary64_14524 hang-p0-tan_binary64_14523 hang-0m-tan_binary64_14522 hang-0p-tan_binary64_14521 tan-+PI/2_binary64_14520 tan-+PI_binary64_14519 tan-PI_binary64_14518 tan-PI/3_binary64_14517 tan-PI/4_binary64_14516 tan-PI/6_binary64_14515 cos-+PI/2_binary64_14514 cos-+PI_binary64_14513 cos-PI_binary64_14512 cos-PI/2_binary64_14511 cos-PI/3_binary64_14510 cos-PI/4_binary64_14509 cos-PI/6_binary64_14508 sin-+PI/2_binary64_14507 sin-+PI_binary64_14506 sin-PI_binary64_14505 sin-PI/2_binary64_14504 sin-PI/3_binary64_14503 sin-PI/4_binary64_14502 sin-PI/6_binary64_14501 sub-1-sin_binary64_14500 sub-1-cos_binary64_14499 -1-add-sin_binary64_14498 -1-add-cos_binary64_14497 1-sub-sin_binary64_14496 1-sub-cos_binary64_14495 cos-sin-sum_binary64_14494 log-E_binary64_14490 log-rec_binary64_14488 log-div_binary64_14487 pow-base-0_binary64_14484 unpow1/3_binary64_14467 unpow2_binary64_14465 unpow1/2_binary64_14464 exp-to-pow_binary64_14462 unpow0_binary64_14459 unpow1_binary64_14458 unpow-1_binary64_14457 exp-lft-cube_binary64_14456 exp-lft-sqr_binary64_14455 exp-cbrt_binary64_14454 exp-sqrt_binary64_14453 rec-exp_binary64_14450 e-exp-1_binary64_14445 exp-0_binary64_14442 rem-exp-log_binary64_14440 cube-div_binary64_14429 rem-3cbrt-rft_binary64_14426 rem-3cbrt-lft_binary64_14425 sqr-abs_binary64_14415 rem-square-sqrt_binary64_14412 remove-double-neg_binary64_14388 --rgt-identity_binary64_14386 +-lft-identity_binary64_14384 mul0-rgt_binary64_14383 mul0-lft_binary64_14382 div0_binary64_14381 *-inverses_binary64_14380 +-inverses_binary64_14379 lft-mult-inverse_binary64_14378 rgt-mult-inverse_binary64_14377 remove-double-div_binary64_14376 difference-of-sqr--1_binary64_14371 difference-of-sqr-1_binary64_14370 cancel-sign-sub_binary64_14365 distribute-neg-frac_binary64_14364 distribute-frac-neg_binary64_14363 distribute-neg-out_binary64_14362 distribute-neg-in_binary64_14361 distribute-lft-out_binary64_14351 associate--r-_binary64_14339 associate--l-_binary64_14338 associate--l+_binary64_14337 associate--r+_binary64_14336
Counts
74 → 110
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0891122
1210729
2748729
32357729
44316719

prune125.0ms (1.9%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1091110
Fresh112
Picked011
Done011
Total1104114
Error
0b
Counts
114 → 4
Compiler

Compiled 1681 to 1197 computations (28.8% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.1b
(*.f64 (cbrt.f64 200) (-.f64 x y))
0.2b
(*.f64 (cbrt.f64 200) (*.f64 (cbrt.f64 200) (*.f64 (cbrt.f64 200) (-.f64 x y))))
0.3b
(*.f64 (cbrt.f64 200) (*.f64 (cbrt.f64 200) (-.f64 x y)))

rewrite242.0ms (3.6%)

Algorithm
rewrite-expression-head
Error
0b
Rules
68×distribute-rgt-in_binary64_14350 distribute-lft-in_binary64_14349
42×cancel-sign-sub-inv_binary64_14366
30×add-sqr-sqrt_binary64_14422
26×*-un-lft-identity_binary64_14400
24×add-cube-cbrt_binary64_14435
19×pow1_binary64_14461 add-exp-log_binary64_14438
18×associate-*l*_binary64_14341
14×sub-neg_binary64_14393
12×associate-*r/_binary64_14342
10×pow-prod-down_binary64_14471 prod-exp_binary64_14449 cbrt-unprod_binary64_14433 cbrt-prod_binary64_14431
add-cbrt-cube_binary64_14436
associate-*r*_binary64_14340
add-log-exp_binary64_14439 flip3--_binary64_14404 flip--_binary64_14375 *-commutative_binary64_14331
unswap-sqr_binary64_14368
difference-of-squares_binary64_14369 distribute-lft-out--_binary64_14352
Counts
3 → 131
Calls

3 calls:

14.0ms
(*.f64 (cbrt.f64 200) (*.f64 (cbrt.f64 200) (*.f64 (cbrt.f64 200) (-.f64 x y))))
11.0ms
(*.f64 (cbrt.f64 200) (*.f64 (cbrt.f64 200) (-.f64 x y)))
9.0ms
(*.f64 (cbrt.f64 200) (-.f64 x y))
Compiler

Compiled 2731 to 2052 computations (24.9% saved)

series710.0ms (10.6%)

Error
0b
Counts
3 → 36
Calls

3 calls:

283.0ms
(*.f64 (cbrt.f64 200) (*.f64 (cbrt.f64 200) (*.f64 (cbrt.f64 200) (-.f64 x y))))
228.0ms
(*.f64 (cbrt.f64 200) (*.f64 (cbrt.f64 200) (-.f64 x y)))
165.0ms
(*.f64 (cbrt.f64 200) (-.f64 x y))
Compiler

Compiled 1128 to 1094 computations (3% saved)

simplify1.5s (22.2%)

Algorithm
egg-herbie
Rules
560×distribute-rgt-in_binary64_14350
555×distribute-lft-in_binary64_14349
349×*-commutative_binary64_14331
344×times-frac_binary64_14406
274×exp-prod_binary64_14452
245×associate-*l*_binary64_14341
210×associate-*r*_binary64_14340
96×distribute-rgt-neg-out_binary64_14360
90×distribute-lft-neg-out_binary64_14359
75×exp-sum_binary64_14446
55×associate-*r/_binary64_14342
51×exp-sqrt_binary64_14453
49×associate-*l/_binary64_14343
42×log-prod_binary64_14486 unswap-sqr_binary64_14368
41×exp-neg_binary64_14447
36×cube-prod_binary64_14428
35×sqr-pow_binary64_14372
27×exp-diff_binary64_14448
25×sqr-neg_binary64_14414
24×cube-div_binary64_14429
23×swap-sqr_binary64_14367
21×distribute-rgt-neg-in_binary64_14358
20×*-rgt-identity_binary64_14390
19×neg-sub0_binary64_14395
18×sub-neg_binary64_14393 +-commutative_binary64_14330
17×log-div_binary64_14487 cancel-sign-sub-inv_binary64_14366
16×*-lft-identity_binary64_14389
15×pow-sqr_binary64_14373 distribute-lft-neg-in_binary64_14357
13×neg-mul-1_binary64_14396
12×pow-plus_binary64_14463
11×log-pow_binary64_14489 associate-+r+_binary64_14332
10×cube-unmult_binary64_14437 associate-/l*_binary64_14345 associate-+r-_binary64_14334
unpow3_binary64_14466
associate-+l+_binary64_14333
cube-mult_binary64_14430 associate-+l-_binary64_14335
rem-sqrt-square_binary64_14413
div-sub_binary64_14405 distribute-rgt-out--_binary64_14354
mul-1-neg_binary64_14392 difference-of-squares_binary64_14369
pow-base-1_binary64_14460 unsub-neg_binary64_14394 distribute-rgt-out_binary64_14353 associate-/l/_binary64_14347
unpow2_binary64_14465 unpow1_binary64_14458 exp-lft-sqr_binary64_14455 prod-exp_binary64_14449 1-exp_binary64_14444 exp-1-e_binary64_14443 rem-log-exp_binary64_14441 rem-3cbrt-lft_binary64_14425 rem-cube-cbrt_binary64_14423 rem-square-sqrt_binary64_14412 +-rgt-identity_binary64_14385 *-inverses_binary64_14380 distribute-neg-frac_binary64_14364 distribute-rgt1-in_binary64_14356 distribute-lft1-in_binary64_14355 distribute-lft-out--_binary64_14352 count-2_binary64_14348
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_14663 erf-erfc_binary64_14662 erf-odd_binary64_14661 if-if-and-not_binary64_14660 if-if-and_binary64_14659 if-if-or-not_binary64_14658 if-if-or_binary64_14657 if-not_binary64_14656 if-same_binary64_14655 if-false_binary64_14654 if-true_binary64_14653 not-gte_binary64_14652 not-lte_binary64_14651 not-gt_binary64_14650 not-lt_binary64_14649 gte-same_binary64_14648 lte-same_binary64_14647 gt-same_binary64_14646 lt-same_binary64_14645 sinh---cosh_binary64_14592 sinh-+-cosh_binary64_14591 sinh-cosh_binary64_14590 tanh-def-c_binary64_14589 tanh-def-b_binary64_14588 tanh-def-a_binary64_14587 cosh-def_binary64_14586 sinh-def_binary64_14585 tan-neg_binary64_14532 cos-neg_binary64_14531 sin-neg_binary64_14530 tan-0_binary64_14529 cos-0_binary64_14528 sin-0_binary64_14527 hang-m-tan_binary64_14526 hang-p-tan_binary64_14525 hang-m0-tan_binary64_14524 hang-p0-tan_binary64_14523 hang-0m-tan_binary64_14522 hang-0p-tan_binary64_14521 tan-+PI/2_binary64_14520 tan-+PI_binary64_14519 tan-PI_binary64_14518 tan-PI/3_binary64_14517 tan-PI/4_binary64_14516 tan-PI/6_binary64_14515 cos-+PI/2_binary64_14514 cos-+PI_binary64_14513 cos-PI_binary64_14512 cos-PI/2_binary64_14511 cos-PI/3_binary64_14510 cos-PI/4_binary64_14509 cos-PI/6_binary64_14508 sin-+PI/2_binary64_14507 sin-+PI_binary64_14506 sin-PI_binary64_14505 sin-PI/2_binary64_14504 sin-PI/3_binary64_14503 sin-PI/4_binary64_14502 sin-PI/6_binary64_14501 sub-1-sin_binary64_14500 sub-1-cos_binary64_14499 -1-add-sin_binary64_14498 -1-add-cos_binary64_14497 1-sub-sin_binary64_14496 1-sub-cos_binary64_14495 cos-sin-sum_binary64_14494 log-E_binary64_14490 log-rec_binary64_14488 pow-base-0_binary64_14484 unpow1/3_binary64_14467 unpow1/2_binary64_14464 exp-to-pow_binary64_14462 unpow0_binary64_14459 unpow-1_binary64_14457 exp-lft-cube_binary64_14456 exp-cbrt_binary64_14454 div-exp_binary64_14451 rec-exp_binary64_14450 e-exp-1_binary64_14445 exp-0_binary64_14442 rem-exp-log_binary64_14440 cube-neg_binary64_14427 rem-3cbrt-rft_binary64_14426 rem-cbrt-cube_binary64_14424 sqr-abs_binary64_14415 /-rgt-identity_binary64_14391 remove-double-neg_binary64_14388 sub0-neg_binary64_14387 --rgt-identity_binary64_14386 +-lft-identity_binary64_14384 mul0-rgt_binary64_14383 mul0-lft_binary64_14382 div0_binary64_14381 +-inverses_binary64_14379 lft-mult-inverse_binary64_14378 rgt-mult-inverse_binary64_14377 remove-double-div_binary64_14376 difference-of-sqr--1_binary64_14371 difference-of-sqr-1_binary64_14370 cancel-sign-sub_binary64_14365 distribute-frac-neg_binary64_14363 distribute-neg-out_binary64_14362 distribute-neg-in_binary64_14361 distribute-lft-out_binary64_14351 associate-/r/_binary64_14346 associate-/r*_binary64_14344 associate--r-_binary64_14339 associate--l-_binary64_14338 associate--l+_binary64_14337 associate--r+_binary64_14336
Counts
167 → 407
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01802371
13251960
211341960
340631960

prune492.0ms (7.3%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New4070407
Fresh011
Picked011
Done022
Total4074411
Error
0b
Counts
411 → 4
Compiler

Compiled 6104 to 4708 computations (22.9% saved)

regimes509.0ms (7.6%)

Accuracy

Total 0.0b remaining (100%)

Threshold costs 0.0b (100%)

Compiler

Compiled 1866 to 1707 computations (8.5% saved)

bsearch0.0ms (0%)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_14331
sub-neg_binary64_14393 +-commutative_binary64_14330
neg-mul-1_binary64_14396 neg-sub0_binary64_14395
cancel-sign-sub-inv_binary64_14366 distribute-rgt-neg-in_binary64_14358
distribute-lft-neg-out_binary64_14359 distribute-lft-neg-in_binary64_14357
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_14660 if-if-and_binary64_14659 if-if-or-not_binary64_14658 if-if-or_binary64_14657 if-not_binary64_14656 if-same_binary64_14655 if-false_binary64_14654 if-true_binary64_14653 tan-0_binary64_14529 cos-0_binary64_14528 sin-0_binary64_14527 unpow1_binary64_14458 e-exp-1_binary64_14445 1-exp_binary64_14444 exp-1-e_binary64_14443 exp-0_binary64_14442 sqr-abs_binary64_14415 sqr-neg_binary64_14414 unsub-neg_binary64_14394 mul-1-neg_binary64_14392 /-rgt-identity_binary64_14391 *-rgt-identity_binary64_14390 *-lft-identity_binary64_14389 remove-double-neg_binary64_14388 sub0-neg_binary64_14387 --rgt-identity_binary64_14386 +-rgt-identity_binary64_14385 +-lft-identity_binary64_14384 cancel-sign-sub_binary64_14365 distribute-neg-frac_binary64_14364 distribute-frac-neg_binary64_14363 distribute-neg-out_binary64_14362 distribute-neg-in_binary64_14361 distribute-rgt-neg-out_binary64_14360
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11410
22410
33010
43410
53510
Proof
(- f64 (* f64 200 h0) (* f64 200 h1))

end0.0ms (0%)

sample905.0ms (13.5%)

Algorithm
intervals
Results
150.0ms7867×body128valid
3.0ms46×body1024valid
2.0ms32×body2048valid
2.0ms41×body512valid
1.0ms65×body128invalid
0.0ms14×body256valid
Compiler

Compiled 417 to 387 computations (7.2% saved)

Profiling

Loading profile data...