Details

Time bar (total: 8.7s)

analyze289.0ms (3.3%)

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
0%99.9%0.1%6
12.5%87.4%0.1%7
18.7%81.1%0.1%8
31.2%68.6%0.1%9
43.3%48%8.7%10
49.7%40.8%9.5%11
55.7%34%10.3%12
61.3%23.7%15%13
65%19.8%15.3%14
Compiler

Compiled 10 to 9 computations (10% saved)

sample18.0ms (0.2%)

Algorithm
intervals
Results
7.0ms256×body128valid
0.0ms17×body128invalid
Compiler

Compiled 19 to 20 computations (-5.3% saved)

simplify1.2s (14%)

Algorithm
egg-herbie
Rules
622×distribute-rgt-out_binary64_17422
579×associate-+l+_binary64_17402
546×distribute-lft-out_binary64_17420
536×sub-neg_binary64_17462
504×distribute-lft-out--_binary64_17421
499×distribute-rgt-out--_binary64_17423
481×associate--l+_binary64_17406
472×associate--r+_binary64_17405
424×associate-+r+_binary64_17401
213×cancel-sign-sub-inv_binary64_17435
151×associate-+l-_binary64_17404
98×unsub-neg_binary64_17463
90×distribute-rgt1-in_binary64_17425
88×distribute-rgt-in_binary64_17419
56×neg-sub0_binary64_17464
54×neg-mul-1_binary64_17465
53×distribute-neg-in_binary64_17430
49×exp-prod_binary64_17521
44×distribute-rgt-neg-in_binary64_17427
43×distribute-rgt-neg-out_binary64_17429 distribute-lft-in_binary64_17418
41×distribute-lft-neg-in_binary64_17426 distribute-lft1-in_binary64_17424
38×associate-*l*_binary64_17410
37×associate-*r*_binary64_17409
36×sqr-pow_binary64_17441 associate-+r-_binary64_17403
35×*-commutative_binary64_17400
29×count-2_binary64_17417
23×+-inverses_binary64_17448 distribute-neg-out_binary64_17431
21×distribute-lft-neg-out_binary64_17428
19×pow-plus_binary64_17532 +-commutative_binary64_17399
15×sub0-neg_binary64_17456 pow-sqr_binary64_17442
12×difference-of-squares_binary64_17438
exp-sum_binary64_17515
remove-double-neg_binary64_17457
associate--l-_binary64_17407
--rgt-identity_binary64_17455 +-rgt-identity_binary64_17454 mul0-rgt_binary64_17452
exp-lft-sqr_binary64_17524
mul0-lft_binary64_17451 associate--r-_binary64_17408
+-lft-identity_binary64_17453
mul-1-neg_binary64_17461 swap-sqr_binary64_17436
exp-diff_binary64_17517 1-exp_binary64_17513 cube-unmult_binary64_17506 *-rgt-identity_binary64_17459 *-lft-identity_binary64_17458
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_17732 erf-erfc_binary64_17731 erf-odd_binary64_17730 if-if-and-not_binary64_17729 if-if-and_binary64_17728 if-if-or-not_binary64_17727 if-if-or_binary64_17726 if-not_binary64_17725 if-same_binary64_17724 if-false_binary64_17723 if-true_binary64_17722 not-gte_binary64_17721 not-lte_binary64_17720 not-gt_binary64_17719 not-lt_binary64_17718 gte-same_binary64_17717 lte-same_binary64_17716 gt-same_binary64_17715 lt-same_binary64_17714 sinh---cosh_binary64_17661 sinh-+-cosh_binary64_17660 sinh-cosh_binary64_17659 tanh-def-c_binary64_17658 tanh-def-b_binary64_17657 tanh-def-a_binary64_17656 cosh-def_binary64_17655 sinh-def_binary64_17654 tan-neg_binary64_17601 cos-neg_binary64_17600 sin-neg_binary64_17599 tan-0_binary64_17598 cos-0_binary64_17597 sin-0_binary64_17596 hang-m-tan_binary64_17595 hang-p-tan_binary64_17594 hang-m0-tan_binary64_17593 hang-p0-tan_binary64_17592 hang-0m-tan_binary64_17591 hang-0p-tan_binary64_17590 tan-+PI/2_binary64_17589 tan-+PI_binary64_17588 tan-PI_binary64_17587 tan-PI/3_binary64_17586 tan-PI/4_binary64_17585 tan-PI/6_binary64_17584 cos-+PI/2_binary64_17583 cos-+PI_binary64_17582 cos-PI_binary64_17581 cos-PI/2_binary64_17580 cos-PI/3_binary64_17579 cos-PI/4_binary64_17578 cos-PI/6_binary64_17577 sin-+PI/2_binary64_17576 sin-+PI_binary64_17575 sin-PI_binary64_17574 sin-PI/2_binary64_17573 sin-PI/3_binary64_17572 sin-PI/4_binary64_17571 sin-PI/6_binary64_17570 sub-1-sin_binary64_17569 sub-1-cos_binary64_17568 -1-add-sin_binary64_17567 -1-add-cos_binary64_17566 1-sub-sin_binary64_17565 1-sub-cos_binary64_17564 cos-sin-sum_binary64_17563 log-E_binary64_17559 log-pow_binary64_17558 log-rec_binary64_17557 log-div_binary64_17556 log-prod_binary64_17555 pow-base-0_binary64_17553 unpow1/3_binary64_17536 unpow3_binary64_17535 unpow2_binary64_17534 unpow1/2_binary64_17533 exp-to-pow_binary64_17531 pow-base-1_binary64_17529 unpow0_binary64_17528 unpow1_binary64_17527 unpow-1_binary64_17526 exp-lft-cube_binary64_17525 exp-cbrt_binary64_17523 exp-sqrt_binary64_17522 div-exp_binary64_17520 rec-exp_binary64_17519 prod-exp_binary64_17518 exp-neg_binary64_17516 e-exp-1_binary64_17514 exp-1-e_binary64_17512 exp-0_binary64_17511 rem-log-exp_binary64_17510 rem-exp-log_binary64_17509 cube-mult_binary64_17499 cube-div_binary64_17498 cube-prod_binary64_17497 cube-neg_binary64_17496 rem-3cbrt-rft_binary64_17495 rem-3cbrt-lft_binary64_17494 rem-cbrt-cube_binary64_17493 rem-cube-cbrt_binary64_17492 sqr-abs_binary64_17484 sqr-neg_binary64_17483 rem-sqrt-square_binary64_17482 rem-square-sqrt_binary64_17481 times-frac_binary64_17475 div-sub_binary64_17474 /-rgt-identity_binary64_17460 div0_binary64_17450 *-inverses_binary64_17449 lft-mult-inverse_binary64_17447 rgt-mult-inverse_binary64_17446 remove-double-div_binary64_17445 difference-of-sqr--1_binary64_17440 difference-of-sqr-1_binary64_17439 unswap-sqr_binary64_17437 cancel-sign-sub_binary64_17434 distribute-neg-frac_binary64_17433 distribute-frac-neg_binary64_17432 associate-/l/_binary64_17416 associate-/r/_binary64_17415 associate-/l*_binary64_17414 associate-/r*_binary64_17413 associate-*l/_binary64_17412 associate-*r/_binary64_17411
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0913
11613
23313
37213
414013
518613
637413
7284813

prune5.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.0b
Counts
2 → 2
Compiler

Compiled 27 to 24 computations (11.1% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(+.f64 x (*.f64 (-.f64 y x) (*.f64 6 z)))
0.3b
(*.f64 (-.f64 y x) (*.f64 6 z))

rewrite51.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
pow1_binary64_17530 add-exp-log_binary64_17507 add-cbrt-cube_binary64_17505
add-sqr-sqrt_binary64_17491 *-un-lft-identity_binary64_17469 associate-*l*_binary64_17410
add-log-exp_binary64_17508
pow-prod-down_binary64_17540 prod-exp_binary64_17518 add-cube-cbrt_binary64_17504 cbrt-unprod_binary64_17502
associate-*l/_binary64_17412
flip3--_binary64_17473 flip--_binary64_17444 difference-of-squares_binary64_17438 distribute-lft-out--_binary64_17421 associate-*r*_binary64_17409 *-commutative_binary64_17400 sum-log_binary64_17560 flip3-+_binary64_17472 flip-+_binary64_17443 +-commutative_binary64_17399
Counts
2 → 33
Calls

2 calls:

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

Compiled 570 to 293 computations (48.6% saved)

series506.0ms (5.8%)

Error
0.0b
Counts
2 → 33
Calls

2 calls:

289.0ms
(+.f64 x (*.f64 (-.f64 y x) (*.f64 6 z)))
193.0ms
(*.f64 (-.f64 y x) (*.f64 6 z))
Compiler

Compiled 874 to 653 computations (25.3% saved)

simplify199.0ms (2.3%)

Algorithm
egg-herbie
Rules
356×distribute-rgt-in_binary64_17419
336×distribute-lft-in_binary64_17418
294×distribute-rgt-neg-out_binary64_17429
293×distribute-lft-neg-out_binary64_17428
274×cancel-sign-sub-inv_binary64_17435
254×distribute-rgt-neg-in_binary64_17427
248×*-commutative_binary64_17400
222×distribute-neg-in_binary64_17430
218×distribute-lft-neg-in_binary64_17426
192×associate--l+_binary64_17406
137×distribute-rgt-out_binary64_17422
128×associate-*r*_binary64_17409
118×associate-*l*_binary64_17410
104×sub-neg_binary64_17462
94×unsub-neg_binary64_17463
87×exp-prod_binary64_17521
85×neg-sub0_binary64_17464
81×neg-mul-1_binary64_17465
66×distribute-lft-out_binary64_17420
61×sqr-pow_binary64_17441
52×distribute-rgt-out--_binary64_17423
41×exp-sum_binary64_17515
31×pow-sqr_binary64_17442 unswap-sqr_binary64_17437
29×cube-prod_binary64_17497 associate--r-_binary64_17408
28×exp-diff_binary64_17517
26×+-commutative_binary64_17399
23×log-prod_binary64_17555 swap-sqr_binary64_17436
21×associate-+r-_binary64_17403
18×associate-+l-_binary64_17404
17×+-rgt-identity_binary64_17454 associate-+l+_binary64_17402
14×difference-of-squares_binary64_17438
13×associate-/l*_binary64_17414
12×associate-+r+_binary64_17401
11×remove-double-neg_binary64_17457
associate--l-_binary64_17407
div-sub_binary64_17474 sub0-neg_binary64_17456 distribute-lft-out--_binary64_17421 associate--r+_binary64_17405
unpow3_binary64_17535 associate-/l/_binary64_17416
sqr-neg_binary64_17483 associate-*r/_binary64_17411
cube-mult_binary64_17499 cube-neg_binary64_17496
mul-1-neg_binary64_17461 distribute-neg-out_binary64_17431
cube-unmult_binary64_17506 *-rgt-identity_binary64_17459
exp-neg_binary64_17516 *-lft-identity_binary64_17458 distribute-lft1-in_binary64_17424 associate-/r/_binary64_17415 associate-*l/_binary64_17412
prod-exp_binary64_17518 1-exp_binary64_17513 distribute-frac-neg_binary64_17432
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_17732 erf-erfc_binary64_17731 erf-odd_binary64_17730 if-if-and-not_binary64_17729 if-if-and_binary64_17728 if-if-or-not_binary64_17727 if-if-or_binary64_17726 if-not_binary64_17725 if-same_binary64_17724 if-false_binary64_17723 if-true_binary64_17722 not-gte_binary64_17721 not-lte_binary64_17720 not-gt_binary64_17719 not-lt_binary64_17718 gte-same_binary64_17717 lte-same_binary64_17716 gt-same_binary64_17715 lt-same_binary64_17714 sinh---cosh_binary64_17661 sinh-+-cosh_binary64_17660 sinh-cosh_binary64_17659 tanh-def-c_binary64_17658 tanh-def-b_binary64_17657 tanh-def-a_binary64_17656 cosh-def_binary64_17655 sinh-def_binary64_17654 tan-neg_binary64_17601 cos-neg_binary64_17600 sin-neg_binary64_17599 tan-0_binary64_17598 cos-0_binary64_17597 sin-0_binary64_17596 hang-m-tan_binary64_17595 hang-p-tan_binary64_17594 hang-m0-tan_binary64_17593 hang-p0-tan_binary64_17592 hang-0m-tan_binary64_17591 hang-0p-tan_binary64_17590 tan-+PI/2_binary64_17589 tan-+PI_binary64_17588 tan-PI_binary64_17587 tan-PI/3_binary64_17586 tan-PI/4_binary64_17585 tan-PI/6_binary64_17584 cos-+PI/2_binary64_17583 cos-+PI_binary64_17582 cos-PI_binary64_17581 cos-PI/2_binary64_17580 cos-PI/3_binary64_17579 cos-PI/4_binary64_17578 cos-PI/6_binary64_17577 sin-+PI/2_binary64_17576 sin-+PI_binary64_17575 sin-PI_binary64_17574 sin-PI/2_binary64_17573 sin-PI/3_binary64_17572 sin-PI/4_binary64_17571 sin-PI/6_binary64_17570 sub-1-sin_binary64_17569 sub-1-cos_binary64_17568 -1-add-sin_binary64_17567 -1-add-cos_binary64_17566 1-sub-sin_binary64_17565 1-sub-cos_binary64_17564 cos-sin-sum_binary64_17563 log-E_binary64_17559 log-pow_binary64_17558 log-rec_binary64_17557 log-div_binary64_17556 pow-base-0_binary64_17553 unpow1/3_binary64_17536 unpow2_binary64_17534 unpow1/2_binary64_17533 pow-plus_binary64_17532 exp-to-pow_binary64_17531 pow-base-1_binary64_17529 unpow0_binary64_17528 unpow1_binary64_17527 unpow-1_binary64_17526 exp-lft-cube_binary64_17525 exp-lft-sqr_binary64_17524 exp-cbrt_binary64_17523 exp-sqrt_binary64_17522 div-exp_binary64_17520 rec-exp_binary64_17519 e-exp-1_binary64_17514 exp-1-e_binary64_17512 exp-0_binary64_17511 rem-log-exp_binary64_17510 rem-exp-log_binary64_17509 cube-div_binary64_17498 rem-3cbrt-rft_binary64_17495 rem-3cbrt-lft_binary64_17494 rem-cbrt-cube_binary64_17493 rem-cube-cbrt_binary64_17492 sqr-abs_binary64_17484 rem-sqrt-square_binary64_17482 rem-square-sqrt_binary64_17481 times-frac_binary64_17475 /-rgt-identity_binary64_17460 --rgt-identity_binary64_17455 +-lft-identity_binary64_17453 mul0-rgt_binary64_17452 mul0-lft_binary64_17451 div0_binary64_17450 *-inverses_binary64_17449 +-inverses_binary64_17448 lft-mult-inverse_binary64_17447 rgt-mult-inverse_binary64_17446 remove-double-div_binary64_17445 difference-of-sqr--1_binary64_17440 difference-of-sqr-1_binary64_17439 cancel-sign-sub_binary64_17434 distribute-neg-frac_binary64_17433 distribute-rgt1-in_binary64_17425 count-2_binary64_17417 associate-/r*_binary64_17413
Counts
66 → 121
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
094915
1272816
2905816
32653816

prune106.0ms (1.2%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1174121
Fresh011
Picked011
Done000
Total1176123
Error
0.0b
Counts
123 → 6
Compiler

Compiled 1908 to 897 computations (53% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
0.0b
(*.f64 (-.f64 y x) 6)
0.2b
(*.f64 (*.f64 (-.f64 y x) 6) z)

rewrite72.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
10×pow1_binary64_17530 add-exp-log_binary64_17507 add-cbrt-cube_binary64_17505 add-sqr-sqrt_binary64_17491
*-un-lft-identity_binary64_17469
add-cube-cbrt_binary64_17504 associate-*l/_binary64_17412 associate-*l*_binary64_17410 associate-*r*_binary64_17409
add-log-exp_binary64_17508
pow-prod-down_binary64_17540 prod-exp_binary64_17518 cbrt-unprod_binary64_17502
flip3--_binary64_17473 flip--_binary64_17444 *-commutative_binary64_17400
unswap-sqr_binary64_17437 difference-of-squares_binary64_17438 distribute-lft-out--_binary64_17421 sum-log_binary64_17560 flip3-+_binary64_17472 flip-+_binary64_17443 +-commutative_binary64_17399
Counts
3 → 53
Calls

3 calls:

8.0ms
(*.f64 (*.f64 (-.f64 y x) 6) z)
7.0ms
(*.f64 (-.f64 y x) 6)
4.0ms
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
Compiler

Compiled 872 to 443 computations (49.2% saved)

series597.0ms (6.9%)

Error
0.0b
Counts
3 → 45
Calls

3 calls:

283.0ms
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
185.0ms
(*.f64 (*.f64 (-.f64 y x) 6) z)
98.0ms
(*.f64 (-.f64 y x) 6)
Compiler

Compiled 1156 to 881 computations (23.8% saved)

simplify211.0ms (2.4%)

Algorithm
egg-herbie
Rules
411×distribute-rgt-in_binary64_17419
390×distribute-lft-in_binary64_17418
322×distribute-rgt-neg-out_binary64_17429
292×distribute-lft-neg-out_binary64_17428
278×*-commutative_binary64_17400
246×cancel-sign-sub-inv_binary64_17435
217×distribute-rgt-neg-in_binary64_17427
182×distribute-lft-neg-in_binary64_17426
171×distribute-neg-in_binary64_17430
152×associate-*l*_binary64_17410
122×associate-*r*_binary64_17409
118×exp-prod_binary64_17521
108×associate--l+_binary64_17406
101×sub-neg_binary64_17462
95×neg-sub0_binary64_17464
91×neg-mul-1_binary64_17465
80×sqr-pow_binary64_17441
76×unsub-neg_binary64_17463
64×distribute-rgt-out_binary64_17422
52×exp-sum_binary64_17515
51×unswap-sqr_binary64_17437
45×log-prod_binary64_17555
44×cube-prod_binary64_17497 swap-sqr_binary64_17436
43×*-rgt-identity_binary64_17459 *-lft-identity_binary64_17458
36×pow-sqr_binary64_17442
30×distribute-rgt-out--_binary64_17423
29×+-commutative_binary64_17399
28×exp-diff_binary64_17517
24×associate-+l+_binary64_17402
23×distribute-lft-out_binary64_17420
22×associate--r-_binary64_17408
20×associate-/l*_binary64_17414
19×associate-+r+_binary64_17401
18×associate-+l-_binary64_17404
17×associate-+r-_binary64_17403
15×+-rgt-identity_binary64_17454
14×difference-of-squares_binary64_17438
12×remove-double-neg_binary64_17457
unpow3_binary64_17535 sub0-neg_binary64_17456 associate--r+_binary64_17405
sqr-neg_binary64_17483 div-sub_binary64_17474 distribute-lft-out--_binary64_17421 associate-/l/_binary64_17416 associate-*r/_binary64_17411
cube-mult_binary64_17499
mul-1-neg_binary64_17461 associate--l-_binary64_17407
cube-unmult_binary64_17506 associate-*l/_binary64_17412
pow-base-1_binary64_17529 prod-exp_binary64_17518 exp-neg_binary64_17516 cube-neg_binary64_17496 distribute-neg-out_binary64_17431 distribute-lft1-in_binary64_17424 associate-/r/_binary64_17415
log-pow_binary64_17558 pow-plus_binary64_17532 1-exp_binary64_17513 exp-1-e_binary64_17512 rem-log-exp_binary64_17510 /-rgt-identity_binary64_17460 distribute-frac-neg_binary64_17432 count-2_binary64_17417 associate-/r*_binary64_17413
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_17732 erf-erfc_binary64_17731 erf-odd_binary64_17730 if-if-and-not_binary64_17729 if-if-and_binary64_17728 if-if-or-not_binary64_17727 if-if-or_binary64_17726 if-not_binary64_17725 if-same_binary64_17724 if-false_binary64_17723 if-true_binary64_17722 not-gte_binary64_17721 not-lte_binary64_17720 not-gt_binary64_17719 not-lt_binary64_17718 gte-same_binary64_17717 lte-same_binary64_17716 gt-same_binary64_17715 lt-same_binary64_17714 sinh---cosh_binary64_17661 sinh-+-cosh_binary64_17660 sinh-cosh_binary64_17659 tanh-def-c_binary64_17658 tanh-def-b_binary64_17657 tanh-def-a_binary64_17656 cosh-def_binary64_17655 sinh-def_binary64_17654 tan-neg_binary64_17601 cos-neg_binary64_17600 sin-neg_binary64_17599 tan-0_binary64_17598 cos-0_binary64_17597 sin-0_binary64_17596 hang-m-tan_binary64_17595 hang-p-tan_binary64_17594 hang-m0-tan_binary64_17593 hang-p0-tan_binary64_17592 hang-0m-tan_binary64_17591 hang-0p-tan_binary64_17590 tan-+PI/2_binary64_17589 tan-+PI_binary64_17588 tan-PI_binary64_17587 tan-PI/3_binary64_17586 tan-PI/4_binary64_17585 tan-PI/6_binary64_17584 cos-+PI/2_binary64_17583 cos-+PI_binary64_17582 cos-PI_binary64_17581 cos-PI/2_binary64_17580 cos-PI/3_binary64_17579 cos-PI/4_binary64_17578 cos-PI/6_binary64_17577 sin-+PI/2_binary64_17576 sin-+PI_binary64_17575 sin-PI_binary64_17574 sin-PI/2_binary64_17573 sin-PI/3_binary64_17572 sin-PI/4_binary64_17571 sin-PI/6_binary64_17570 sub-1-sin_binary64_17569 sub-1-cos_binary64_17568 -1-add-sin_binary64_17567 -1-add-cos_binary64_17566 1-sub-sin_binary64_17565 1-sub-cos_binary64_17564 cos-sin-sum_binary64_17563 log-E_binary64_17559 log-rec_binary64_17557 log-div_binary64_17556 pow-base-0_binary64_17553 unpow1/3_binary64_17536 unpow2_binary64_17534 unpow1/2_binary64_17533 exp-to-pow_binary64_17531 unpow0_binary64_17528 unpow1_binary64_17527 unpow-1_binary64_17526 exp-lft-cube_binary64_17525 exp-lft-sqr_binary64_17524 exp-cbrt_binary64_17523 exp-sqrt_binary64_17522 div-exp_binary64_17520 rec-exp_binary64_17519 e-exp-1_binary64_17514 exp-0_binary64_17511 rem-exp-log_binary64_17509 cube-div_binary64_17498 rem-3cbrt-rft_binary64_17495 rem-3cbrt-lft_binary64_17494 rem-cbrt-cube_binary64_17493 rem-cube-cbrt_binary64_17492 sqr-abs_binary64_17484 rem-sqrt-square_binary64_17482 rem-square-sqrt_binary64_17481 times-frac_binary64_17475 --rgt-identity_binary64_17455 +-lft-identity_binary64_17453 mul0-rgt_binary64_17452 mul0-lft_binary64_17451 div0_binary64_17450 *-inverses_binary64_17449 +-inverses_binary64_17448 lft-mult-inverse_binary64_17447 rgt-mult-inverse_binary64_17446 remove-double-div_binary64_17445 difference-of-sqr--1_binary64_17440 difference-of-sqr-1_binary64_17439 cancel-sign-sub_binary64_17434 distribute-neg-frac_binary64_17433 distribute-rgt1-in_binary64_17425
Counts
98 → 146
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01141199
13041076
210191076
329651076

prune127.0ms (1.5%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New1451146
Fresh134
Picked011
Done011
Total1466152
Error
0.0b
Counts
152 → 6
Compiler

Compiled 2245 to 1077 computations (52% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(-.f64 (*.f64 z y) (*.f64 x z))
0.0b
(+.f64 x (*.f64 6 (-.f64 (*.f64 z y) (*.f64 x z))))
0.3b
(*.f64 6 (-.f64 (*.f64 z y) (*.f64 x z)))

rewrite65.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0b
Rules
add-log-exp_binary64_17508 add-sqr-sqrt_binary64_17491
pow1_binary64_17530 add-exp-log_binary64_17507 add-cbrt-cube_binary64_17505 add-cube-cbrt_binary64_17504 *-un-lft-identity_binary64_17469 sub-neg_binary64_17462 cancel-sign-sub-inv_binary64_17435
distribute-rgt-in_binary64_17419 distribute-lft-in_binary64_17418 associate-+r+_binary64_17401
associate-*l*_binary64_17410 associate-*r*_binary64_17409
flip3--_binary64_17473 associate-*r/_binary64_17411 flip--_binary64_17444
pow-prod-down_binary64_17540 prod-exp_binary64_17518 cbrt-unprod_binary64_17502 unswap-sqr_binary64_17437 *-commutative_binary64_17400 sum-log_binary64_17560 flip3-+_binary64_17472 flip-+_binary64_17443 +-commutative_binary64_17399 diff-log_binary64_17561
Counts
3 → 51
Calls

3 calls:

7.0ms
(*.f64 6 (-.f64 (*.f64 z y) (*.f64 x z)))
4.0ms
(-.f64 (*.f64 z y) (*.f64 x z))
4.0ms
(+.f64 x (*.f64 6 (-.f64 (*.f64 z y) (*.f64 x z))))
Compiler

Compiled 1021 to 349 computations (65.8% saved)

series688.0ms (7.9%)

Error
0.0b
Counts
3 → 48
Calls

3 calls:

293.0ms
(+.f64 x (*.f64 6 (-.f64 (*.f64 z y) (*.f64 x z))))
212.0ms
(*.f64 6 (-.f64 (*.f64 z y) (*.f64 x z)))
152.0ms
(-.f64 (*.f64 z y) (*.f64 x z))
Compiler

Compiled 1255 to 917 computations (26.9% saved)

simplify208.0ms (2.4%)

Algorithm
egg-herbie
Rules
400×distribute-rgt-in_binary64_17419
377×distribute-lft-in_binary64_17418
293×distribute-rgt-neg-out_binary64_17429
282×distribute-lft-neg-out_binary64_17428
265×cancel-sign-sub-inv_binary64_17435
232×distribute-rgt-neg-in_binary64_17427
205×*-commutative_binary64_17400
199×unsub-neg_binary64_17463
178×distribute-lft-neg-in_binary64_17426
174×exp-prod_binary64_17521
130×associate-*l*_binary64_17410
125×distribute-neg-in_binary64_17430
122×sub-neg_binary64_17462
118×sqr-pow_binary64_17441
114×neg-sub0_binary64_17464
108×distribute-rgt-out_binary64_17422
106×neg-mul-1_binary64_17465
103×associate-*r*_binary64_17409
82×exp-sum_binary64_17515
68×swap-sqr_binary64_17436
65×associate-+l+_binary64_17402
55×cube-prod_binary64_17497
51×associate-+r+_binary64_17401
49×unswap-sqr_binary64_17437
47×log-prod_binary64_17555
46×distribute-rgt-out--_binary64_17423
42×pow-sqr_binary64_17442
41×difference-of-squares_binary64_17438
36×*-lft-identity_binary64_17458 +-commutative_binary64_17399
34×exp-diff_binary64_17517 *-rgt-identity_binary64_17459
31×distribute-lft-out_binary64_17420
26×associate--r+_binary64_17405
23×remove-double-neg_binary64_17457
21×associate-+l-_binary64_17404
20×associate-+r-_binary64_17403
19×mul0-rgt_binary64_17452 mul0-lft_binary64_17451
17×associate--l+_binary64_17406
15×+-rgt-identity_binary64_17454 distribute-neg-out_binary64_17431
12×unpow3_binary64_17535
11×times-frac_binary64_17475
10×cube-mult_binary64_17499
div-sub_binary64_17474 distribute-lft-out--_binary64_17421 associate-/l/_binary64_17416
mul-1-neg_binary64_17461
sqr-neg_binary64_17483 sub0-neg_binary64_17456
cube-neg_binary64_17496
associate-/l*_binary64_17414
pow-base-1_binary64_17529 prod-exp_binary64_17518 distribute-frac-neg_binary64_17432 distribute-rgt1-in_binary64_17425 distribute-lft1-in_binary64_17424 associate--r-_binary64_17408 associate--l-_binary64_17407
log-pow_binary64_17558 pow-plus_binary64_17532 div-exp_binary64_17520 1-exp_binary64_17513 exp-1-e_binary64_17512 rem-log-exp_binary64_17510 cube-unmult_binary64_17506 --rgt-identity_binary64_17455 count-2_binary64_17417 associate-/r*_binary64_17413 associate-*r/_binary64_17411
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_17732 erf-erfc_binary64_17731 erf-odd_binary64_17730 if-if-and-not_binary64_17729 if-if-and_binary64_17728 if-if-or-not_binary64_17727 if-if-or_binary64_17726 if-not_binary64_17725 if-same_binary64_17724 if-false_binary64_17723 if-true_binary64_17722 not-gte_binary64_17721 not-lte_binary64_17720 not-gt_binary64_17719 not-lt_binary64_17718 gte-same_binary64_17717 lte-same_binary64_17716 gt-same_binary64_17715 lt-same_binary64_17714 sinh---cosh_binary64_17661 sinh-+-cosh_binary64_17660 sinh-cosh_binary64_17659 tanh-def-c_binary64_17658 tanh-def-b_binary64_17657 tanh-def-a_binary64_17656 cosh-def_binary64_17655 sinh-def_binary64_17654 tan-neg_binary64_17601 cos-neg_binary64_17600 sin-neg_binary64_17599 tan-0_binary64_17598 cos-0_binary64_17597 sin-0_binary64_17596 hang-m-tan_binary64_17595 hang-p-tan_binary64_17594 hang-m0-tan_binary64_17593 hang-p0-tan_binary64_17592 hang-0m-tan_binary64_17591 hang-0p-tan_binary64_17590 tan-+PI/2_binary64_17589 tan-+PI_binary64_17588 tan-PI_binary64_17587 tan-PI/3_binary64_17586 tan-PI/4_binary64_17585 tan-PI/6_binary64_17584 cos-+PI/2_binary64_17583 cos-+PI_binary64_17582 cos-PI_binary64_17581 cos-PI/2_binary64_17580 cos-PI/3_binary64_17579 cos-PI/4_binary64_17578 cos-PI/6_binary64_17577 sin-+PI/2_binary64_17576 sin-+PI_binary64_17575 sin-PI_binary64_17574 sin-PI/2_binary64_17573 sin-PI/3_binary64_17572 sin-PI/4_binary64_17571 sin-PI/6_binary64_17570 sub-1-sin_binary64_17569 sub-1-cos_binary64_17568 -1-add-sin_binary64_17567 -1-add-cos_binary64_17566 1-sub-sin_binary64_17565 1-sub-cos_binary64_17564 cos-sin-sum_binary64_17563 log-E_binary64_17559 log-rec_binary64_17557 log-div_binary64_17556 pow-base-0_binary64_17553 unpow1/3_binary64_17536 unpow2_binary64_17534 unpow1/2_binary64_17533 exp-to-pow_binary64_17531 unpow0_binary64_17528 unpow1_binary64_17527 unpow-1_binary64_17526 exp-lft-cube_binary64_17525 exp-lft-sqr_binary64_17524 exp-cbrt_binary64_17523 exp-sqrt_binary64_17522 rec-exp_binary64_17519 exp-neg_binary64_17516 e-exp-1_binary64_17514 exp-0_binary64_17511 rem-exp-log_binary64_17509 cube-div_binary64_17498 rem-3cbrt-rft_binary64_17495 rem-3cbrt-lft_binary64_17494 rem-cbrt-cube_binary64_17493 rem-cube-cbrt_binary64_17492 sqr-abs_binary64_17484 rem-sqrt-square_binary64_17482 rem-square-sqrt_binary64_17481 /-rgt-identity_binary64_17460 +-lft-identity_binary64_17453 div0_binary64_17450 *-inverses_binary64_17449 +-inverses_binary64_17448 lft-mult-inverse_binary64_17447 rgt-mult-inverse_binary64_17446 remove-double-div_binary64_17445 difference-of-sqr--1_binary64_17440 difference-of-sqr-1_binary64_17439 cancel-sign-sub_binary64_17434 distribute-neg-frac_binary64_17433 associate-/r/_binary64_17415 associate-*l/_binary64_17412
Counts
99 → 297
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01111399
13051177
210091174
330141171

prune294.0ms (3.4%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New2952297
Fresh123
Picked011
Done022
Total2967303
Error
0b
Counts
303 → 7
Compiler

Compiled 5833 to 2184 computations (62.6% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 z (-.f64 y x))
0.0b
(+.f64 x (*.f64 (sqrt.f64 6) (*.f64 (*.f64 z (-.f64 y x)) (sqrt.f64 6))))
0.5b
(*.f64 (sqrt.f64 6) (*.f64 (*.f64 z (-.f64 y x)) (sqrt.f64 6)))
0.6b
(*.f64 (*.f64 z (-.f64 y x)) (sqrt.f64 6))

rewrite143.0ms (1.6%)

Algorithm
rewrite-expression-head
Error
0b
Rules
20×pow1_binary64_17530 add-exp-log_binary64_17507 add-cbrt-cube_binary64_17505
16×add-sqr-sqrt_binary64_17491
14×*-un-lft-identity_binary64_17469
12×add-cube-cbrt_binary64_17504 associate-*r*_binary64_17409
10×pow-prod-down_binary64_17540 prod-exp_binary64_17518 cbrt-unprod_binary64_17502 associate-*l*_binary64_17410
associate-*r/_binary64_17411
add-log-exp_binary64_17508 sqrt-prod_binary64_17485 cancel-sign-sub-inv_binary64_17435
associate-*l/_binary64_17412 distribute-rgt-in_binary64_17419 distribute-lft-in_binary64_17418
flip3--_binary64_17473 flip--_binary64_17444 *-commutative_binary64_17400
sub-neg_binary64_17462
sum-log_binary64_17560 flip3-+_binary64_17472 flip-+_binary64_17443 +-commutative_binary64_17399 unswap-sqr_binary64_17437 difference-of-squares_binary64_17438 distribute-lft-out--_binary64_17421
Counts
4 → 90
Calls

4 calls:

13.0ms
(*.f64 (sqrt.f64 6) (*.f64 (*.f64 z (-.f64 y x)) (sqrt.f64 6)))
9.0ms
(*.f64 (*.f64 z (-.f64 y x)) (sqrt.f64 6))
7.0ms
(*.f64 z (-.f64 y x))
4.0ms
(+.f64 x (*.f64 (sqrt.f64 6) (*.f64 (*.f64 z (-.f64 y x)) (sqrt.f64 6))))
Compiler

Compiled 1906 to 1082 computations (43.2% saved)

series1.5s (17%)

Error
0b
Counts
4 → 63
Calls

4 calls:

620.0ms
(+.f64 x (*.f64 (sqrt.f64 6) (*.f64 (*.f64 z (-.f64 y x)) (sqrt.f64 6))))
363.0ms
(*.f64 (sqrt.f64 6) (*.f64 (*.f64 z (-.f64 y x)) (sqrt.f64 6)))
284.0ms
(*.f64 (*.f64 z (-.f64 y x)) (sqrt.f64 6))
153.0ms
(*.f64 z (-.f64 y x))
Compiler

Compiled 2413 to 1961 computations (18.7% saved)

simplify375.0ms (4.3%)

Algorithm
egg-herbie
Rules
574×distribute-rgt-in_binary64_17419
558×distribute-lft-in_binary64_17418
292×associate-*l*_binary64_17410
274×associate-*r*_binary64_17409
220×exp-prod_binary64_17521
145×cancel-sign-sub-inv_binary64_17435
134×distribute-rgt-neg-in_binary64_17427
110×*-commutative_binary64_17400
103×distribute-lft-neg-in_binary64_17426
84×log-prod_binary64_17555
70×associate-*r/_binary64_17411
69×associate-*l/_binary64_17412
57×distribute-lft-neg-out_binary64_17428
47×cube-prod_binary64_17497 sub-neg_binary64_17462
42×exp-sqrt_binary64_17522 sqr-pow_binary64_17441 distribute-rgt-neg-out_binary64_17429
40×+-commutative_binary64_17399
39×distribute-rgt-out_binary64_17422
37×swap-sqr_binary64_17436
35×neg-sub0_binary64_17464
33×associate-+l+_binary64_17402
31×*-rgt-identity_binary64_17459 *-lft-identity_binary64_17458 associate-+r+_binary64_17401
25×neg-mul-1_binary64_17465
24×log-div_binary64_17556 associate-+r-_binary64_17403
23×unswap-sqr_binary64_17437
20×exp-sum_binary64_17515 distribute-rgt-out--_binary64_17423 associate-+l-_binary64_17404
15×pow-sqr_binary64_17442
14×unpow3_binary64_17535 distribute-neg-in_binary64_17430
10×associate-/l*_binary64_17414
mul-1-neg_binary64_17461
exp-diff_binary64_17517
distribute-lft-out--_binary64_17421 associate--r+_binary64_17405
pow-plus_binary64_17532 cube-unmult_binary64_17506 cube-mult_binary64_17499 associate--l+_binary64_17406
log-pow_binary64_17558 rem-sqrt-square_binary64_17482 difference-of-squares_binary64_17438
div-sub_binary64_17474 unsub-neg_binary64_17463
prod-exp_binary64_17518 rem-square-sqrt_binary64_17481 +-rgt-identity_binary64_17454 distribute-lft-out_binary64_17420 associate-/l/_binary64_17416 associate--r-_binary64_17408
unpow2_binary64_17534 unpow1_binary64_17527 1-exp_binary64_17513 exp-1-e_binary64_17512 rem-log-exp_binary64_17510 rem-3cbrt-lft_binary64_17494 sqr-neg_binary64_17483 *-inverses_binary64_17449 distribute-neg-frac_binary64_17433 distribute-rgt1-in_binary64_17425 count-2_binary64_17417 associate--l-_binary64_17407
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_17732 erf-erfc_binary64_17731 erf-odd_binary64_17730 if-if-and-not_binary64_17729 if-if-and_binary64_17728 if-if-or-not_binary64_17727 if-if-or_binary64_17726 if-not_binary64_17725 if-same_binary64_17724 if-false_binary64_17723 if-true_binary64_17722 not-gte_binary64_17721 not-lte_binary64_17720 not-gt_binary64_17719 not-lt_binary64_17718 gte-same_binary64_17717 lte-same_binary64_17716 gt-same_binary64_17715 lt-same_binary64_17714 sinh---cosh_binary64_17661 sinh-+-cosh_binary64_17660 sinh-cosh_binary64_17659 tanh-def-c_binary64_17658 tanh-def-b_binary64_17657 tanh-def-a_binary64_17656 cosh-def_binary64_17655 sinh-def_binary64_17654 tan-neg_binary64_17601 cos-neg_binary64_17600 sin-neg_binary64_17599 tan-0_binary64_17598 cos-0_binary64_17597 sin-0_binary64_17596 hang-m-tan_binary64_17595 hang-p-tan_binary64_17594 hang-m0-tan_binary64_17593 hang-p0-tan_binary64_17592 hang-0m-tan_binary64_17591 hang-0p-tan_binary64_17590 tan-+PI/2_binary64_17589 tan-+PI_binary64_17588 tan-PI_binary64_17587 tan-PI/3_binary64_17586 tan-PI/4_binary64_17585 tan-PI/6_binary64_17584 cos-+PI/2_binary64_17583 cos-+PI_binary64_17582 cos-PI_binary64_17581 cos-PI/2_binary64_17580 cos-PI/3_binary64_17579 cos-PI/4_binary64_17578 cos-PI/6_binary64_17577 sin-+PI/2_binary64_17576 sin-+PI_binary64_17575 sin-PI_binary64_17574 sin-PI/2_binary64_17573 sin-PI/3_binary64_17572 sin-PI/4_binary64_17571 sin-PI/6_binary64_17570 sub-1-sin_binary64_17569 sub-1-cos_binary64_17568 -1-add-sin_binary64_17567 -1-add-cos_binary64_17566 1-sub-sin_binary64_17565 1-sub-cos_binary64_17564 cos-sin-sum_binary64_17563 log-E_binary64_17559 log-rec_binary64_17557 pow-base-0_binary64_17553 unpow1/3_binary64_17536 unpow1/2_binary64_17533 exp-to-pow_binary64_17531 pow-base-1_binary64_17529 unpow0_binary64_17528 unpow-1_binary64_17526 exp-lft-cube_binary64_17525 exp-lft-sqr_binary64_17524 exp-cbrt_binary64_17523 div-exp_binary64_17520 rec-exp_binary64_17519 exp-neg_binary64_17516 e-exp-1_binary64_17514 exp-0_binary64_17511 rem-exp-log_binary64_17509 cube-div_binary64_17498 cube-neg_binary64_17496 rem-3cbrt-rft_binary64_17495 rem-cbrt-cube_binary64_17493 rem-cube-cbrt_binary64_17492 sqr-abs_binary64_17484 times-frac_binary64_17475 /-rgt-identity_binary64_17460 remove-double-neg_binary64_17457 sub0-neg_binary64_17456 --rgt-identity_binary64_17455 +-lft-identity_binary64_17453 mul0-rgt_binary64_17452 mul0-lft_binary64_17451 div0_binary64_17450 +-inverses_binary64_17448 lft-mult-inverse_binary64_17447 rgt-mult-inverse_binary64_17446 remove-double-div_binary64_17445 difference-of-sqr--1_binary64_17440 difference-of-sqr-1_binary64_17439 cancel-sign-sub_binary64_17434 distribute-frac-neg_binary64_17432 distribute-neg-out_binary64_17431 distribute-lft1-in_binary64_17424 associate-/r/_binary64_17415 associate-/r*_binary64_17413
Counts
153 → 287
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01722133
14591778
214671778
347171778

prune315.0ms (3.6%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New2861287
Fresh123
Picked101
Done033
Total2886294
Error
0b
Counts
294 → 6
Compiler

Compiled 5215 to 2778 computations (46.7% saved)

regimes378.0ms (4.4%)

Accuracy

Total 0.2b remaining (98.9%)

Threshold costs 0.2b (98.9%)

Compiler

Compiled 2964 to 2430 computations (18% saved)

bsearch0.0ms (0%)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_17400 +-commutative_binary64_17399
sub-neg_binary64_17462
neg-mul-1_binary64_17465 neg-sub0_binary64_17464
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_17729 if-if-and_binary64_17728 if-if-or-not_binary64_17727 if-if-or_binary64_17726 if-not_binary64_17725 if-same_binary64_17724 if-false_binary64_17723 if-true_binary64_17722 tan-0_binary64_17598 cos-0_binary64_17597 sin-0_binary64_17596 unpow1_binary64_17527 e-exp-1_binary64_17514 1-exp_binary64_17513 exp-1-e_binary64_17512 exp-0_binary64_17511 sqr-abs_binary64_17484 sqr-neg_binary64_17483 unsub-neg_binary64_17463 mul-1-neg_binary64_17461 /-rgt-identity_binary64_17460 *-rgt-identity_binary64_17459 *-lft-identity_binary64_17458 remove-double-neg_binary64_17457 sub0-neg_binary64_17456 --rgt-identity_binary64_17455 +-rgt-identity_binary64_17454 +-lft-identity_binary64_17453 cancel-sign-sub-inv_binary64_17435 cancel-sign-sub_binary64_17434 distribute-neg-frac_binary64_17433 distribute-frac-neg_binary64_17432 distribute-neg-out_binary64_17431 distribute-neg-in_binary64_17430 distribute-rgt-neg-out_binary64_17429 distribute-lft-neg-out_binary64_17428 distribute-rgt-neg-in_binary64_17427 distribute-lft-neg-in_binary64_17426
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0913
11413
21913
32113
42213
Proof
(+ f64 h0 (* f64 (- f64 h1 h0) (* f64 6 h2)))

end0.0ms (0%)

sample1.3s (15%)

Algorithm
intervals
Results
217.0ms8000×body128valid
24.0ms587×body128invalid
Compiler

Compiled 763 to 627 computations (17.8% saved)

Profiling

Loading profile data...