Details

Time bar (total: 30.4s)

analyze4.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.7%0.3%0
99.7%0%0.3%1
Compiler

Compiled 28 to 27 computations (3.6% saved)

sample128.0ms (0.4%)

Algorithm
intervals
Results
58.0ms79×body2048valid
27.0ms58×body1024valid
10.0ms32×body512valid
8.0msbody4096valid
7.0ms69×body128valid
2.0ms11×body256valid
Compiler

Compiled 55 to 59 computations (-7.3% saved)

simplify654.0ms (2.2%)

Algorithm
egg-herbie
Rules
555×pow-plus_binary64_34582
531×associate-/r/_binary64_34465
519×distribute-rgt-out_binary64_34472
508×exp-prod_binary64_34571
286×distribute-rgt-in_binary64_34469
280×associate-/l*_binary64_34464
241×sqr-pow_binary64_34491
224×*-commutative_binary64_34450
218×pow-sqr_binary64_34492
213×distribute-lft-in_binary64_34468 +-commutative_binary64_34449
166×associate-+l+_binary64_34452
148×associate-*l*_binary64_34460
138×associate-*r*_binary64_34459
128×exp-sum_binary64_34565
125×associate-/r*_binary64_34463
122×distribute-rgt1-in_binary64_34475
114×associate-+r+_binary64_34451
111×associate-/l/_binary64_34466
71×pow-base-1_binary64_34579
60×distribute-lft-out_binary64_34470
57×associate-*r/_binary64_34461
42×*-lft-identity_binary64_34508 associate-*l/_binary64_34462
41×*-rgt-identity_binary64_34509
37×distribute-lft1-in_binary64_34474
30×times-frac_binary64_34525
21×swap-sqr_binary64_34486
15×/-rgt-identity_binary64_34510
14×exp-lft-sqr_binary64_34574
13×rem-sqrt-square_binary64_34532
10×unswap-sqr_binary64_34487 count-2_binary64_34467
exp-sqrt_binary64_34572
prod-exp_binary64_34568 cube-unmult_binary64_34556 cube-prod_binary64_34547
unpow3_binary64_34585
cube-div_binary64_34548
1-exp_binary64_34563 exp-1-e_binary64_34562 +-rgt-identity_binary64_34504 div0_binary64_34500 *-inverses_binary64_34499 rgt-mult-inverse_binary64_34496
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_34782 erf-erfc_binary64_34781 erf-odd_binary64_34780 if-if-and-not_binary64_34779 if-if-and_binary64_34778 if-if-or-not_binary64_34777 if-if-or_binary64_34776 if-not_binary64_34775 if-same_binary64_34774 if-false_binary64_34773 if-true_binary64_34772 not-gte_binary64_34771 not-lte_binary64_34770 not-gt_binary64_34769 not-lt_binary64_34768 gte-same_binary64_34767 lte-same_binary64_34766 gt-same_binary64_34765 lt-same_binary64_34764 sinh---cosh_binary64_34711 sinh-+-cosh_binary64_34710 sinh-cosh_binary64_34709 tanh-def-c_binary64_34708 tanh-def-b_binary64_34707 tanh-def-a_binary64_34706 cosh-def_binary64_34705 sinh-def_binary64_34704 tan-neg_binary64_34651 cos-neg_binary64_34650 sin-neg_binary64_34649 tan-0_binary64_34648 cos-0_binary64_34647 sin-0_binary64_34646 hang-m-tan_binary64_34645 hang-p-tan_binary64_34644 hang-m0-tan_binary64_34643 hang-p0-tan_binary64_34642 hang-0m-tan_binary64_34641 hang-0p-tan_binary64_34640 tan-+PI/2_binary64_34639 tan-+PI_binary64_34638 tan-PI_binary64_34637 tan-PI/3_binary64_34636 tan-PI/4_binary64_34635 tan-PI/6_binary64_34634 cos-+PI/2_binary64_34633 cos-+PI_binary64_34632 cos-PI_binary64_34631 cos-PI/2_binary64_34630 cos-PI/3_binary64_34629 cos-PI/4_binary64_34628 cos-PI/6_binary64_34627 sin-+PI/2_binary64_34626 sin-+PI_binary64_34625 sin-PI_binary64_34624 sin-PI/2_binary64_34623 sin-PI/3_binary64_34622 sin-PI/4_binary64_34621 sin-PI/6_binary64_34620 sub-1-sin_binary64_34619 sub-1-cos_binary64_34618 -1-add-sin_binary64_34617 -1-add-cos_binary64_34616 1-sub-sin_binary64_34615 1-sub-cos_binary64_34614 cos-sin-sum_binary64_34613 log-E_binary64_34609 log-pow_binary64_34608 log-rec_binary64_34607 log-div_binary64_34606 log-prod_binary64_34605 pow-base-0_binary64_34603 unpow1/3_binary64_34586 unpow2_binary64_34584 unpow1/2_binary64_34583 exp-to-pow_binary64_34581 unpow0_binary64_34578 unpow1_binary64_34577 unpow-1_binary64_34576 exp-lft-cube_binary64_34575 exp-cbrt_binary64_34573 div-exp_binary64_34570 rec-exp_binary64_34569 exp-diff_binary64_34567 exp-neg_binary64_34566 e-exp-1_binary64_34564 exp-0_binary64_34561 rem-log-exp_binary64_34560 rem-exp-log_binary64_34559 cube-mult_binary64_34549 cube-neg_binary64_34546 rem-3cbrt-rft_binary64_34545 rem-3cbrt-lft_binary64_34544 rem-cbrt-cube_binary64_34543 rem-cube-cbrt_binary64_34542 sqr-abs_binary64_34534 sqr-neg_binary64_34533 rem-square-sqrt_binary64_34531 div-sub_binary64_34524 neg-mul-1_binary64_34515 neg-sub0_binary64_34514 unsub-neg_binary64_34513 sub-neg_binary64_34512 mul-1-neg_binary64_34511 remove-double-neg_binary64_34507 sub0-neg_binary64_34506 --rgt-identity_binary64_34505 +-lft-identity_binary64_34503 mul0-rgt_binary64_34502 mul0-lft_binary64_34501 +-inverses_binary64_34498 lft-mult-inverse_binary64_34497 remove-double-div_binary64_34495 difference-of-sqr--1_binary64_34490 difference-of-sqr-1_binary64_34489 difference-of-squares_binary64_34488 cancel-sign-sub-inv_binary64_34485 cancel-sign-sub_binary64_34484 distribute-neg-frac_binary64_34483 distribute-frac-neg_binary64_34482 distribute-neg-out_binary64_34481 distribute-neg-in_binary64_34480 distribute-rgt-neg-out_binary64_34479 distribute-lft-neg-out_binary64_34478 distribute-rgt-neg-in_binary64_34477 distribute-lft-neg-in_binary64_34476 distribute-rgt-out--_binary64_34473 distribute-lft-out--_binary64_34471 associate--r-_binary64_34458 associate--l-_binary64_34457 associate--l+_binary64_34456 associate--r+_binary64_34455 associate-+l-_binary64_34454 associate-+r-_binary64_34453
Counts
1 → 8
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02441
14541
29941
318841
441141
555341
667641
792041
8104741
9130241
10175241
11320441
12453341

prune29.0ms (0.1%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New448
Fresh011
Picked000
Done000
Total459
Error
44.3b
Counts
9 → 5
Compiler

Compiled 351 to 285 computations (18.8% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

2.0b
(*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 (/.f64 z 16) t))
2.4b
(*.f64 (+.f64 1 (*.f64 2 a)) (*.f64 (/.f64 b 16) t))
32.3b
(cos.f64 (*.f64 (+.f64 1 (*.f64 2 a)) (*.f64 (/.f64 b 16) t)))
36.8b
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 (/.f64 z 16) t)))

rewrite191.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
42.9b
Rules
22×add-exp-log_binary64_34557 add-cbrt-cube_binary64_34555
14×pow1_binary64_34580
10×prod-exp_binary64_34568 cbrt-unprod_binary64_34552 associate-*l/_binary64_34462
add-cube-cbrt_binary64_34554 add-sqr-sqrt_binary64_34541 *-un-lft-identity_binary64_34519 pow-prod-down_binary64_34590 associate-*l*_binary64_34460
add-log-exp_binary64_34558 flip3-+_binary64_34522 frac-times_binary64_34529 flip-+_binary64_34493
div-exp_binary64_34570 cbrt-undiv_binary64_34553 associate-*r/_binary64_34461 associate-*r*_binary64_34459 *-commutative_binary64_34450
Counts
4 → 64
Calls

4 calls:

10.0ms
(*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 (/.f64 z 16) t))
9.0ms
(*.f64 (+.f64 1 (*.f64 2 a)) (*.f64 (/.f64 b 16) t))
4.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 (/.f64 z 16) t)))
3.0ms
(cos.f64 (*.f64 (+.f64 1 (*.f64 2 a)) (*.f64 (/.f64 b 16) t)))
Compiler

Compiled 2402 to 1825 computations (24% saved)

series1.1s (3.6%)

Error
40.9b
Counts
4 → 50
Calls

4 calls:

306.0ms
(*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 (/.f64 z 16) t))
288.0ms
(*.f64 (+.f64 1 (*.f64 2 a)) (*.f64 (/.f64 b 16) t))
214.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 (/.f64 z 16) t)))
202.0ms
(cos.f64 (*.f64 (+.f64 1 (*.f64 2 a)) (*.f64 (/.f64 b 16) t)))
Compiler

Compiled 4354 to 3660 computations (15.9% saved)

simplify399.0ms (1.3%)

Algorithm
egg-herbie
Rules
479×distribute-rgt-in_binary64_34469
439×distribute-lft-in_binary64_34468
418×cancel-sign-sub-inv_binary64_34485
412×associate-*r*_binary64_34459
381×associate-*l*_binary64_34460
238×distribute-rgt-neg-in_binary64_34477
200×distribute-lft-neg-in_binary64_34476
162×*-commutative_binary64_34450
150×distribute-rgt-out_binary64_34472
119×times-frac_binary64_34525
89×unswap-sqr_binary64_34487
79×sub-neg_binary64_34512
67×distribute-lft-out_binary64_34470
66×associate-*l/_binary64_34462
60×sqr-pow_binary64_34491
57×associate-*r/_binary64_34461
49×neg-mul-1_binary64_34515 neg-sub0_binary64_34514
48×+-commutative_binary64_34449
39×exp-prod_binary64_34571 distribute-lft-neg-out_binary64_34478
36×associate-/l*_binary64_34464
34×cube-prod_binary64_34547 swap-sqr_binary64_34486
27×log-prod_binary64_34605 distribute-neg-in_binary64_34480
25×*-rgt-identity_binary64_34509
21×*-lft-identity_binary64_34508
20×exp-sum_binary64_34565 pow-sqr_binary64_34492
18×associate--r+_binary64_34455
16×log-div_binary64_34606
15×distribute-rgt-out--_binary64_34473
14×cube-unmult_binary64_34556
13×pow-plus_binary64_34582 associate-+r+_binary64_34451
12×unsub-neg_binary64_34513 associate-/r*_binary64_34463 associate-+l+_binary64_34452
11×distribute-rgt1-in_binary64_34475
cube-div_binary64_34548
distribute-rgt-neg-out_binary64_34479 associate-+r-_binary64_34453
unpow3_binary64_34585 cube-mult_binary64_34549 associate-+l-_binary64_34454
unpow2_binary64_34584 unpow1_binary64_34577 distribute-lft-out--_binary64_34471
exp-lft-sqr_binary64_34574 prod-exp_binary64_34568 distribute-lft1-in_binary64_34474
pow-base-1_binary64_34579
difference-of-squares_binary64_34488 associate-/r/_binary64_34465
exp-sqrt_binary64_34572 1-exp_binary64_34563 exp-1-e_binary64_34562 +-rgt-identity_binary64_34504 *-inverses_binary64_34499 distribute-neg-frac_binary64_34483 associate--l+_binary64_34456
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_34782 erf-erfc_binary64_34781 erf-odd_binary64_34780 if-if-and-not_binary64_34779 if-if-and_binary64_34778 if-if-or-not_binary64_34777 if-if-or_binary64_34776 if-not_binary64_34775 if-same_binary64_34774 if-false_binary64_34773 if-true_binary64_34772 not-gte_binary64_34771 not-lte_binary64_34770 not-gt_binary64_34769 not-lt_binary64_34768 gte-same_binary64_34767 lte-same_binary64_34766 gt-same_binary64_34765 lt-same_binary64_34764 sinh---cosh_binary64_34711 sinh-+-cosh_binary64_34710 sinh-cosh_binary64_34709 tanh-def-c_binary64_34708 tanh-def-b_binary64_34707 tanh-def-a_binary64_34706 cosh-def_binary64_34705 sinh-def_binary64_34704 tan-neg_binary64_34651 cos-neg_binary64_34650 sin-neg_binary64_34649 tan-0_binary64_34648 cos-0_binary64_34647 sin-0_binary64_34646 hang-m-tan_binary64_34645 hang-p-tan_binary64_34644 hang-m0-tan_binary64_34643 hang-p0-tan_binary64_34642 hang-0m-tan_binary64_34641 hang-0p-tan_binary64_34640 tan-+PI/2_binary64_34639 tan-+PI_binary64_34638 tan-PI_binary64_34637 tan-PI/3_binary64_34636 tan-PI/4_binary64_34635 tan-PI/6_binary64_34634 cos-+PI/2_binary64_34633 cos-+PI_binary64_34632 cos-PI_binary64_34631 cos-PI/2_binary64_34630 cos-PI/3_binary64_34629 cos-PI/4_binary64_34628 cos-PI/6_binary64_34627 sin-+PI/2_binary64_34626 sin-+PI_binary64_34625 sin-PI_binary64_34624 sin-PI/2_binary64_34623 sin-PI/3_binary64_34622 sin-PI/4_binary64_34621 sin-PI/6_binary64_34620 sub-1-sin_binary64_34619 sub-1-cos_binary64_34618 -1-add-sin_binary64_34617 -1-add-cos_binary64_34616 1-sub-sin_binary64_34615 1-sub-cos_binary64_34614 cos-sin-sum_binary64_34613 log-E_binary64_34609 log-pow_binary64_34608 log-rec_binary64_34607 pow-base-0_binary64_34603 unpow1/3_binary64_34586 unpow1/2_binary64_34583 exp-to-pow_binary64_34581 unpow0_binary64_34578 unpow-1_binary64_34576 exp-lft-cube_binary64_34575 exp-cbrt_binary64_34573 div-exp_binary64_34570 rec-exp_binary64_34569 exp-diff_binary64_34567 exp-neg_binary64_34566 e-exp-1_binary64_34564 exp-0_binary64_34561 rem-log-exp_binary64_34560 rem-exp-log_binary64_34559 cube-neg_binary64_34546 rem-3cbrt-rft_binary64_34545 rem-3cbrt-lft_binary64_34544 rem-cbrt-cube_binary64_34543 rem-cube-cbrt_binary64_34542 sqr-abs_binary64_34534 sqr-neg_binary64_34533 rem-sqrt-square_binary64_34532 rem-square-sqrt_binary64_34531 div-sub_binary64_34524 mul-1-neg_binary64_34511 /-rgt-identity_binary64_34510 remove-double-neg_binary64_34507 sub0-neg_binary64_34506 --rgt-identity_binary64_34505 +-lft-identity_binary64_34503 mul0-rgt_binary64_34502 mul0-lft_binary64_34501 div0_binary64_34500 +-inverses_binary64_34498 lft-mult-inverse_binary64_34497 rgt-mult-inverse_binary64_34496 remove-double-div_binary64_34495 difference-of-sqr--1_binary64_34490 difference-of-sqr-1_binary64_34489 cancel-sign-sub_binary64_34484 distribute-frac-neg_binary64_34482 distribute-neg-out_binary64_34481 count-2_binary64_34467 associate-/l/_binary64_34466 associate--r-_binary64_34458 associate--l-_binary64_34457
Counts
114 → 355
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02512623
17142192
226492150

prune1.1s (3.6%)

Pruning

31 alts after pruning (31 fresh and 0 done)

PrunedKeptTotal
New32728355
Fresh134
Picked101
Done000
Total32931360
Error
41.8b
Counts
360 → 31
Compiler

Compiled 14304 to 10484 computations (26.7% saved)

localize25.0ms (0.1%)

Local error

Found 4 expressions with local error:

32.3b
(cos.f64 (*.f64 (+.f64 1 (*.f64 2 a)) (*.f64 (/.f64 b 16) t)))
36.8b
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
36.8b
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
36.8b
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))

rewrite112.0ms (0.4%)

Algorithm
rewrite-expression-head
Error
41.8b
Rules
pow1_binary64_34580 add-log-exp_binary64_34558 add-exp-log_binary64_34557 add-cbrt-cube_binary64_34555 add-cube-cbrt_binary64_34554 add-sqr-sqrt_binary64_34541 *-un-lft-identity_binary64_34519
Counts
4 → 28
Calls

4 calls:

4.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
4.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
4.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
3.0ms
(cos.f64 (*.f64 (+.f64 1 (*.f64 2 a)) (*.f64 (/.f64 b 16) t)))
Compiler

Compiled 1828 to 1410 computations (22.9% saved)

series1.1s (3.5%)

Error
41.2b
Counts
4 → 52
Calls

4 calls:

233.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
233.0ms
(cos.f64 (*.f64 (+.f64 1 (*.f64 2 a)) (*.f64 (/.f64 b 16) t)))
226.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
218.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
Compiler

Compiled 8964 to 7286 computations (18.7% saved)

simplify285.0ms (0.9%)

Algorithm
egg-herbie
Rules
688×distribute-rgt-neg-in_binary64_34477
655×distribute-lft-neg-in_binary64_34476
373×cancel-sign-sub-inv_binary64_34485
302×*-commutative_binary64_34450
236×unswap-sqr_binary64_34487
225×distribute-rgt-out_binary64_34472
222×distribute-lft-out_binary64_34470
182×associate-*r*_binary64_34459
149×neg-mul-1_binary64_34515 neg-sub0_binary64_34514
140×distribute-rgt-in_binary64_34469
138×associate-*l*_binary64_34460
125×sub-neg_binary64_34512
114×distribute-lft-in_binary64_34468
104×associate-/l*_binary64_34464
50×associate-/r/_binary64_34465
45×distribute-rgt-out--_binary64_34473
42×distribute-neg-in_binary64_34480
40×distribute-lft-out--_binary64_34471
36×distribute-lft-neg-out_binary64_34478
34×+-commutative_binary64_34449
32×times-frac_binary64_34525
30×associate--r+_binary64_34455
26×unsub-neg_binary64_34513 associate-/l/_binary64_34466
24×sqr-pow_binary64_34491
23×associate-*r/_binary64_34461
18×distribute-rgt1-in_binary64_34475 associate-*l/_binary64_34462
17×pow-sqr_binary64_34492 associate-+l+_binary64_34452
14×*-rgt-identity_binary64_34509
13×associate-+l-_binary64_34454
12×*-lft-identity_binary64_34508
11×distribute-lft1-in_binary64_34474
10×pow-plus_binary64_34582 swap-sqr_binary64_34486
associate--l+_binary64_34456 associate-+r-_binary64_34453
sub0-neg_binary64_34506
+-rgt-identity_binary64_34504 cancel-sign-sub_binary64_34484 distribute-neg-frac_binary64_34483 associate--l-_binary64_34457 associate-+r+_binary64_34451
unpow2_binary64_34584 unpow1_binary64_34577
associate-/r*_binary64_34463
cube-unmult_binary64_34556 /-rgt-identity_binary64_34510
prod-exp_binary64_34568 1-exp_binary64_34563 *-inverses_binary64_34499 rgt-mult-inverse_binary64_34496 distribute-rgt-neg-out_binary64_34479
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_34782 erf-erfc_binary64_34781 erf-odd_binary64_34780 if-if-and-not_binary64_34779 if-if-and_binary64_34778 if-if-or-not_binary64_34777 if-if-or_binary64_34776 if-not_binary64_34775 if-same_binary64_34774 if-false_binary64_34773 if-true_binary64_34772 not-gte_binary64_34771 not-lte_binary64_34770 not-gt_binary64_34769 not-lt_binary64_34768 gte-same_binary64_34767 lte-same_binary64_34766 gt-same_binary64_34765 lt-same_binary64_34764 sinh---cosh_binary64_34711 sinh-+-cosh_binary64_34710 sinh-cosh_binary64_34709 tanh-def-c_binary64_34708 tanh-def-b_binary64_34707 tanh-def-a_binary64_34706 cosh-def_binary64_34705 sinh-def_binary64_34704 tan-neg_binary64_34651 cos-neg_binary64_34650 sin-neg_binary64_34649 tan-0_binary64_34648 cos-0_binary64_34647 sin-0_binary64_34646 hang-m-tan_binary64_34645 hang-p-tan_binary64_34644 hang-m0-tan_binary64_34643 hang-p0-tan_binary64_34642 hang-0m-tan_binary64_34641 hang-0p-tan_binary64_34640 tan-+PI/2_binary64_34639 tan-+PI_binary64_34638 tan-PI_binary64_34637 tan-PI/3_binary64_34636 tan-PI/4_binary64_34635 tan-PI/6_binary64_34634 cos-+PI/2_binary64_34633 cos-+PI_binary64_34632 cos-PI_binary64_34631 cos-PI/2_binary64_34630 cos-PI/3_binary64_34629 cos-PI/4_binary64_34628 cos-PI/6_binary64_34627 sin-+PI/2_binary64_34626 sin-+PI_binary64_34625 sin-PI_binary64_34624 sin-PI/2_binary64_34623 sin-PI/3_binary64_34622 sin-PI/4_binary64_34621 sin-PI/6_binary64_34620 sub-1-sin_binary64_34619 sub-1-cos_binary64_34618 -1-add-sin_binary64_34617 -1-add-cos_binary64_34616 1-sub-sin_binary64_34615 1-sub-cos_binary64_34614 cos-sin-sum_binary64_34613 log-E_binary64_34609 log-pow_binary64_34608 log-rec_binary64_34607 log-div_binary64_34606 log-prod_binary64_34605 pow-base-0_binary64_34603 unpow1/3_binary64_34586 unpow3_binary64_34585 unpow1/2_binary64_34583 exp-to-pow_binary64_34581 pow-base-1_binary64_34579 unpow0_binary64_34578 unpow-1_binary64_34576 exp-lft-cube_binary64_34575 exp-lft-sqr_binary64_34574 exp-cbrt_binary64_34573 exp-sqrt_binary64_34572 exp-prod_binary64_34571 div-exp_binary64_34570 rec-exp_binary64_34569 exp-diff_binary64_34567 exp-neg_binary64_34566 exp-sum_binary64_34565 e-exp-1_binary64_34564 exp-1-e_binary64_34562 exp-0_binary64_34561 rem-log-exp_binary64_34560 rem-exp-log_binary64_34559 cube-mult_binary64_34549 cube-div_binary64_34548 cube-prod_binary64_34547 cube-neg_binary64_34546 rem-3cbrt-rft_binary64_34545 rem-3cbrt-lft_binary64_34544 rem-cbrt-cube_binary64_34543 rem-cube-cbrt_binary64_34542 sqr-abs_binary64_34534 sqr-neg_binary64_34533 rem-sqrt-square_binary64_34532 rem-square-sqrt_binary64_34531 div-sub_binary64_34524 mul-1-neg_binary64_34511 remove-double-neg_binary64_34507 --rgt-identity_binary64_34505 +-lft-identity_binary64_34503 mul0-rgt_binary64_34502 mul0-lft_binary64_34501 div0_binary64_34500 +-inverses_binary64_34498 lft-mult-inverse_binary64_34497 remove-double-div_binary64_34495 difference-of-sqr--1_binary64_34490 difference-of-sqr-1_binary64_34489 difference-of-squares_binary64_34488 distribute-frac-neg_binary64_34482 distribute-neg-out_binary64_34481 count-2_binary64_34467 associate--r-_binary64_34458
Counts
80 → 289
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01152076
12821832
210881808
322861710

prune1.6s (5.3%)

Pruning

32 alts after pruning (32 fresh and 0 done)

PrunedKeptTotal
New2836289
Fresh42630
Picked101
Done000
Total28832320
Error
41.7b
Counts
320 → 32
Compiler

Compiled 20596 to 15145 computations (26.5% saved)

localize38.0ms (0.1%)

Local error

Found 4 expressions with local error:

36.7b
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (/.f64 z (/.f64 16 t))))
36.8b
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
36.8b
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
36.8b
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))

rewrite155.0ms (0.5%)

Algorithm
rewrite-expression-head
Error
41.7b
Rules
pow1_binary64_34580 add-log-exp_binary64_34558 add-exp-log_binary64_34557 add-cbrt-cube_binary64_34555 add-cube-cbrt_binary64_34554 add-sqr-sqrt_binary64_34541 *-un-lft-identity_binary64_34519
Counts
4 → 28
Calls

4 calls:

4.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
4.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
3.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
3.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (/.f64 z (/.f64 16 t))))
Compiler

Compiled 2640 to 2054 computations (22.2% saved)

series1.5s (4.9%)

Error
41.6b
Counts
4 → 52
Calls

4 calls:

256.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
251.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
250.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (/.f64 z (/.f64 16 t))))
249.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
Compiler

Compiled 13024 to 10501 computations (19.4% saved)

simplify362.0ms (1.2%)

Algorithm
egg-herbie
Rules
680×distribute-rgt-neg-in_binary64_34477
618×distribute-lft-neg-in_binary64_34476
472×associate-*l*_binary64_34460
418×associate-*r*_binary64_34459
275×distribute-lft-out_binary64_34470
274×distribute-rgt-out_binary64_34472
221×unswap-sqr_binary64_34487
124×cancel-sign-sub-inv_binary64_34485
102×*-commutative_binary64_34450
86×distribute-rgt-in_binary64_34469
74×distribute-lft-in_binary64_34468
68×neg-sub0_binary64_34514
66×neg-mul-1_binary64_34515
62×sub-neg_binary64_34512
59×distribute-lft-neg-out_binary64_34478
44×distribute-rgt-out--_binary64_34473
38×associate-/r/_binary64_34465
24×times-frac_binary64_34525
21×*-rgt-identity_binary64_34509
20×associate-/l/_binary64_34466
19×distribute-lft-out--_binary64_34471
18×distribute-neg-in_binary64_34480
15×*-lft-identity_binary64_34508 associate--r+_binary64_34455
14×sqr-pow_binary64_34491 associate-/l*_binary64_34464 +-commutative_binary64_34449
13×associate-*r/_binary64_34461
12×unsub-neg_binary64_34513 distribute-rgt1-in_binary64_34475
10×pow-sqr_binary64_34492 distribute-lft1-in_binary64_34474
pow-plus_binary64_34582 associate-*l/_binary64_34462
distribute-rgt-neg-out_binary64_34479 associate-+l+_binary64_34452
swap-sqr_binary64_34486 associate-+l-_binary64_34454
associate-+r-_binary64_34453
cube-unmult_binary64_34556 sub0-neg_binary64_34506 +-rgt-identity_binary64_34504 associate-/r*_binary64_34463
unpow2_binary64_34584 unpow1_binary64_34577 /-rgt-identity_binary64_34510 cancel-sign-sub_binary64_34484 distribute-neg-frac_binary64_34483 associate--l+_binary64_34456 associate-+r+_binary64_34451
associate--l-_binary64_34457
prod-exp_binary64_34568 1-exp_binary64_34563 *-inverses_binary64_34499 rgt-mult-inverse_binary64_34496
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_34782 erf-erfc_binary64_34781 erf-odd_binary64_34780 if-if-and-not_binary64_34779 if-if-and_binary64_34778 if-if-or-not_binary64_34777 if-if-or_binary64_34776 if-not_binary64_34775 if-same_binary64_34774 if-false_binary64_34773 if-true_binary64_34772 not-gte_binary64_34771 not-lte_binary64_34770 not-gt_binary64_34769 not-lt_binary64_34768 gte-same_binary64_34767 lte-same_binary64_34766 gt-same_binary64_34765 lt-same_binary64_34764 sinh---cosh_binary64_34711 sinh-+-cosh_binary64_34710 sinh-cosh_binary64_34709 tanh-def-c_binary64_34708 tanh-def-b_binary64_34707 tanh-def-a_binary64_34706 cosh-def_binary64_34705 sinh-def_binary64_34704 tan-neg_binary64_34651 cos-neg_binary64_34650 sin-neg_binary64_34649 tan-0_binary64_34648 cos-0_binary64_34647 sin-0_binary64_34646 hang-m-tan_binary64_34645 hang-p-tan_binary64_34644 hang-m0-tan_binary64_34643 hang-p0-tan_binary64_34642 hang-0m-tan_binary64_34641 hang-0p-tan_binary64_34640 tan-+PI/2_binary64_34639 tan-+PI_binary64_34638 tan-PI_binary64_34637 tan-PI/3_binary64_34636 tan-PI/4_binary64_34635 tan-PI/6_binary64_34634 cos-+PI/2_binary64_34633 cos-+PI_binary64_34632 cos-PI_binary64_34631 cos-PI/2_binary64_34630 cos-PI/3_binary64_34629 cos-PI/4_binary64_34628 cos-PI/6_binary64_34627 sin-+PI/2_binary64_34626 sin-+PI_binary64_34625 sin-PI_binary64_34624 sin-PI/2_binary64_34623 sin-PI/3_binary64_34622 sin-PI/4_binary64_34621 sin-PI/6_binary64_34620 sub-1-sin_binary64_34619 sub-1-cos_binary64_34618 -1-add-sin_binary64_34617 -1-add-cos_binary64_34616 1-sub-sin_binary64_34615 1-sub-cos_binary64_34614 cos-sin-sum_binary64_34613 log-E_binary64_34609 log-pow_binary64_34608 log-rec_binary64_34607 log-div_binary64_34606 log-prod_binary64_34605 pow-base-0_binary64_34603 unpow1/3_binary64_34586 unpow3_binary64_34585 unpow1/2_binary64_34583 exp-to-pow_binary64_34581 pow-base-1_binary64_34579 unpow0_binary64_34578 unpow-1_binary64_34576 exp-lft-cube_binary64_34575 exp-lft-sqr_binary64_34574 exp-cbrt_binary64_34573 exp-sqrt_binary64_34572 exp-prod_binary64_34571 div-exp_binary64_34570 rec-exp_binary64_34569 exp-diff_binary64_34567 exp-neg_binary64_34566 exp-sum_binary64_34565 e-exp-1_binary64_34564 exp-1-e_binary64_34562 exp-0_binary64_34561 rem-log-exp_binary64_34560 rem-exp-log_binary64_34559 cube-mult_binary64_34549 cube-div_binary64_34548 cube-prod_binary64_34547 cube-neg_binary64_34546 rem-3cbrt-rft_binary64_34545 rem-3cbrt-lft_binary64_34544 rem-cbrt-cube_binary64_34543 rem-cube-cbrt_binary64_34542 sqr-abs_binary64_34534 sqr-neg_binary64_34533 rem-sqrt-square_binary64_34532 rem-square-sqrt_binary64_34531 div-sub_binary64_34524 mul-1-neg_binary64_34511 remove-double-neg_binary64_34507 --rgt-identity_binary64_34505 +-lft-identity_binary64_34503 mul0-rgt_binary64_34502 mul0-lft_binary64_34501 div0_binary64_34500 +-inverses_binary64_34498 lft-mult-inverse_binary64_34497 remove-double-div_binary64_34495 difference-of-sqr--1_binary64_34490 difference-of-sqr-1_binary64_34489 difference-of-squares_binary64_34488 distribute-frac-neg_binary64_34482 distribute-neg-out_binary64_34481 count-2_binary64_34467 associate--r-_binary64_34458
Counts
80 → 268
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0702076
11491832
25321832
319671712

prune2.6s (8.4%)

Pruning

37 alts after pruning (36 fresh and 1 done)

PrunedKeptTotal
New2599268
Fresh42731
Picked011
Done000
Total26337300
Error
41.7b
Counts
300 → 37
Compiler

Compiled 27085 to 20329 computations (24.9% saved)

localize40.0ms (0.1%)

Local error

Found 4 expressions with local error:

36.8b
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
36.8b
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
36.8b
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
36.8b
(cos.f64 (*.f64 (*.f64 (+.f64 (*.f64 y 2) 1) t) (/.f64 z 16)))

rewrite159.0ms (0.5%)

Algorithm
rewrite-expression-head
Error
41.7b
Rules
pow1_binary64_34580 add-log-exp_binary64_34558 add-exp-log_binary64_34557 add-cbrt-cube_binary64_34555 add-cube-cbrt_binary64_34554 add-sqr-sqrt_binary64_34541 *-un-lft-identity_binary64_34519
Counts
4 → 28
Calls

4 calls:

5.0ms
(cos.f64 (*.f64 (*.f64 (+.f64 (*.f64 y 2) 1) t) (/.f64 z 16)))
4.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
4.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
4.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
Compiler

Compiled 2640 to 2054 computations (22.2% saved)

series1.3s (4.2%)

Error
41.6b
Counts
4 → 52
Calls

4 calls:

259.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
255.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
254.0ms
(cos.f64 (*.f64 (+.f64 (*.f64 y 2) 1) (*.f64 t (/.f64 z 16))))
244.0ms
(cos.f64 (*.f64 (*.f64 (+.f64 (*.f64 y 2) 1) t) (/.f64 z 16)))
Compiler

Compiled 13024 to 10501 computations (19.4% saved)

simplify371.0ms (1.2%)

Algorithm
egg-herbie
Rules
682×distribute-rgt-neg-in_binary64_34477
620×distribute-lft-neg-in_binary64_34476
474×associate-*l*_binary64_34460
419×associate-*r*_binary64_34459
275×distribute-rgt-out_binary64_34472 distribute-lft-out_binary64_34470
221×unswap-sqr_binary64_34487
124×cancel-sign-sub-inv_binary64_34485
103×*-commutative_binary64_34450
87×associate-/l*_binary64_34464
86×distribute-rgt-in_binary64_34469
74×distribute-lft-in_binary64_34468
68×neg-sub0_binary64_34514
66×neg-mul-1_binary64_34515
62×sub-neg_binary64_34512
59×distribute-lft-neg-out_binary64_34478
44×distribute-rgt-out--_binary64_34473
33×associate-/r/_binary64_34465
28×times-frac_binary64_34525
23×associate-/l/_binary64_34466
21×*-rgt-identity_binary64_34509
19×distribute-lft-out--_binary64_34471
18×distribute-neg-in_binary64_34480
15×*-lft-identity_binary64_34508 associate--r+_binary64_34455
14×sqr-pow_binary64_34491
13×+-commutative_binary64_34449
12×unsub-neg_binary64_34513 distribute-rgt1-in_binary64_34475 associate-*r/_binary64_34461
10×pow-sqr_binary64_34492 distribute-lft1-in_binary64_34474 associate-*l/_binary64_34462
pow-plus_binary64_34582
distribute-rgt-neg-out_binary64_34479 associate-+l+_binary64_34452
swap-sqr_binary64_34486 associate-+l-_binary64_34454
distribute-neg-frac_binary64_34483 associate-+r-_binary64_34453
cube-unmult_binary64_34556 sub0-neg_binary64_34506 +-rgt-identity_binary64_34504
unpow2_binary64_34584 unpow1_binary64_34577 cancel-sign-sub_binary64_34484 associate--l+_binary64_34456 associate-+r+_binary64_34451
/-rgt-identity_binary64_34510 associate-/r*_binary64_34463 associate--l-_binary64_34457
prod-exp_binary64_34568 1-exp_binary64_34563 *-inverses_binary64_34499 rgt-mult-inverse_binary64_34496
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_34782 erf-erfc_binary64_34781 erf-odd_binary64_34780 if-if-and-not_binary64_34779 if-if-and_binary64_34778 if-if-or-not_binary64_34777 if-if-or_binary64_34776 if-not_binary64_34775 if-same_binary64_34774 if-false_binary64_34773 if-true_binary64_34772 not-gte_binary64_34771 not-lte_binary64_34770 not-gt_binary64_34769 not-lt_binary64_34768 gte-same_binary64_34767 lte-same_binary64_34766 gt-same_binary64_34765 lt-same_binary64_34764 sinh---cosh_binary64_34711 sinh-+-cosh_binary64_34710 sinh-cosh_binary64_34709 tanh-def-c_binary64_34708 tanh-def-b_binary64_34707 tanh-def-a_binary64_34706 cosh-def_binary64_34705 sinh-def_binary64_34704 tan-neg_binary64_34651 cos-neg_binary64_34650 sin-neg_binary64_34649 tan-0_binary64_34648 cos-0_binary64_34647 sin-0_binary64_34646 hang-m-tan_binary64_34645 hang-p-tan_binary64_34644 hang-m0-tan_binary64_34643 hang-p0-tan_binary64_34642 hang-0m-tan_binary64_34641 hang-0p-tan_binary64_34640 tan-+PI/2_binary64_34639 tan-+PI_binary64_34638 tan-PI_binary64_34637 tan-PI/3_binary64_34636 tan-PI/4_binary64_34635 tan-PI/6_binary64_34634 cos-+PI/2_binary64_34633 cos-+PI_binary64_34632 cos-PI_binary64_34631 cos-PI/2_binary64_34630 cos-PI/3_binary64_34629 cos-PI/4_binary64_34628 cos-PI/6_binary64_34627 sin-+PI/2_binary64_34626 sin-+PI_binary64_34625 sin-PI_binary64_34624 sin-PI/2_binary64_34623 sin-PI/3_binary64_34622 sin-PI/4_binary64_34621 sin-PI/6_binary64_34620 sub-1-sin_binary64_34619 sub-1-cos_binary64_34618 -1-add-sin_binary64_34617 -1-add-cos_binary64_34616 1-sub-sin_binary64_34615 1-sub-cos_binary64_34614 cos-sin-sum_binary64_34613 log-E_binary64_34609 log-pow_binary64_34608 log-rec_binary64_34607 log-div_binary64_34606 log-prod_binary64_34605 pow-base-0_binary64_34603 unpow1/3_binary64_34586 unpow3_binary64_34585 unpow1/2_binary64_34583 exp-to-pow_binary64_34581 pow-base-1_binary64_34579 unpow0_binary64_34578 unpow-1_binary64_34576 exp-lft-cube_binary64_34575 exp-lft-sqr_binary64_34574 exp-cbrt_binary64_34573 exp-sqrt_binary64_34572 exp-prod_binary64_34571 div-exp_binary64_34570 rec-exp_binary64_34569 exp-diff_binary64_34567 exp-neg_binary64_34566 exp-sum_binary64_34565 e-exp-1_binary64_34564 exp-1-e_binary64_34562 exp-0_binary64_34561 rem-log-exp_binary64_34560 rem-exp-log_binary64_34559 cube-mult_binary64_34549 cube-div_binary64_34548 cube-prod_binary64_34547 cube-neg_binary64_34546 rem-3cbrt-rft_binary64_34545 rem-3cbrt-lft_binary64_34544 rem-cbrt-cube_binary64_34543 rem-cube-cbrt_binary64_34542 sqr-abs_binary64_34534 sqr-neg_binary64_34533 rem-sqrt-square_binary64_34532 rem-square-sqrt_binary64_34531 div-sub_binary64_34524 mul-1-neg_binary64_34511 remove-double-neg_binary64_34507 --rgt-identity_binary64_34505 +-lft-identity_binary64_34503 mul0-rgt_binary64_34502 mul0-lft_binary64_34501 div0_binary64_34500 +-inverses_binary64_34498 lft-mult-inverse_binary64_34497 remove-double-div_binary64_34495 difference-of-sqr--1_binary64_34490 difference-of-sqr-1_binary64_34489 difference-of-squares_binary64_34488 distribute-frac-neg_binary64_34482 distribute-neg-out_binary64_34481 count-2_binary64_34467 associate--r-_binary64_34458
Counts
80 → 184
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0692076
11491832
25351832
319541712

prune1.3s (4.4%)

Pruning

40 alts after pruning (39 fresh and 1 done)

PrunedKeptTotal
New1786184
Fresh23335
Picked101
Done011
Total18140221
Error
41.6b
Counts
221 → 40
Compiler

Compiled 17152 to 12694 computations (26% saved)

regimes6.6s (21.8%)

Accuracy

Total 4.7b remaining (10.4%)

Threshold costs 0b (0%)

Compiler

Compiled 103437 to 89128 computations (13.8% saved)

bsearch0.0ms (0%)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_34450
1-exp_binary64_34563 *-lft-identity_binary64_34508 +-commutative_binary64_34449
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_34779 if-if-and_binary64_34778 if-if-or-not_binary64_34777 if-if-or_binary64_34776 if-not_binary64_34775 if-same_binary64_34774 if-false_binary64_34773 if-true_binary64_34772 tan-0_binary64_34648 cos-0_binary64_34647 sin-0_binary64_34646 unpow1_binary64_34577 e-exp-1_binary64_34564 exp-1-e_binary64_34562 exp-0_binary64_34561 sqr-abs_binary64_34534 sqr-neg_binary64_34533 neg-mul-1_binary64_34515 neg-sub0_binary64_34514 unsub-neg_binary64_34513 sub-neg_binary64_34512 mul-1-neg_binary64_34511 /-rgt-identity_binary64_34510 *-rgt-identity_binary64_34509 remove-double-neg_binary64_34507 sub0-neg_binary64_34506 --rgt-identity_binary64_34505 +-rgt-identity_binary64_34504 +-lft-identity_binary64_34503 cancel-sign-sub-inv_binary64_34485 cancel-sign-sub_binary64_34484 distribute-neg-frac_binary64_34483 distribute-frac-neg_binary64_34482 distribute-neg-out_binary64_34481 distribute-neg-in_binary64_34480 distribute-rgt-neg-out_binary64_34479 distribute-lft-neg-out_binary64_34478 distribute-rgt-neg-in_binary64_34477 distribute-lft-neg-in_binary64_34476
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01621
12421
Proof
(* f64 h0 (=> (* f64 1 (cos f64 (* f64 (+ f64 1 (* f64 2 h1)) (* f64 (/ f64 h2 16) h3)))))) *-lft-identity_binary64_34508 => (* f64 h0 (cos f64 (* f64 (+ f64 1 (* f64 2 h1)) (* f64 (/ f64 h2 16) h3))))

end0.0ms (0%)

sample9.3s (30.5%)

Algorithm
intervals
Results
1.6s2368×body2048valid
890.0ms1952×body1024valid
365.0ms321×body4096valid
286.0ms912×body512valid
208.0ms2034×body128valid
88.0ms413×body256valid
Compiler

Compiled 7973 to 6871 computations (13.8% saved)

Profiling

Loading profile data...