Details

Time bar (total: 15.2s)

analyze757.0ms (5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
5.8%94%0.2%9
7.6%92.2%0.2%10
11.6%88.2%0.2%11
18.5%81.3%0.2%12
32.3%66.9%0.8%13
37%62.2%0.8%14
Compiler

Compiled 10 to 9 computations (10% saved)

sample22.0ms (0.1%)

Algorithm
intervals
Results
8.0ms256×body128valid
2.0ms51×body128invalid
Compiler

Compiled 19 to 21 computations (-10.5% saved)

simplify562.0ms (3.7%)

Algorithm
egg-herbie
Rules
694×exp-prod_binary64_11724
596×cube-prod_binary64_11700
399×times-frac_binary64_11678
380×distribute-rgt-out--_binary64_11626
334×associate-/l/_binary64_11619
273×*-commutative_binary64_11603
253×associate-/l*_binary64_11617
214×distribute-rgt-out_binary64_11625
190×associate-/r/_binary64_11618
178×associate-*l/_binary64_11615
170×swap-sqr_binary64_11639
158×associate-*r/_binary64_11614
145×exp-sum_binary64_11718
131×distribute-rgt-neg-in_binary64_11630
129×associate-/r*_binary64_11616
116×associate-*r*_binary64_11612
99×associate-*l*_binary64_11613
81×sub-neg_binary64_11665
76×distribute-lft-out_binary64_11623
74×distribute-lft-out--_binary64_11624
71×exp-diff_binary64_11720
59×pow-plus_binary64_11735
40×distribute-rgt-in_binary64_11622
37×sqr-pow_binary64_11644 associate--l+_binary64_11609
35×associate--r+_binary64_11608
32×cube-div_binary64_11701 associate--r-_binary64_11611
29×distribute-rgt1-in_binary64_11628
28×distribute-lft-in_binary64_11621
27×*-lft-identity_binary64_11661 pow-sqr_binary64_11645 associate-+l+_binary64_11605
25×associate-+r+_binary64_11604
24×associate--l-_binary64_11610
22×unswap-sqr_binary64_11640
21×unpow3_binary64_11738 cube-mult_binary64_11702 distribute-lft-neg-in_binary64_11629
19×pow-base-1_binary64_11732 *-rgt-identity_binary64_11662
17×/-rgt-identity_binary64_11663
16×div-exp_binary64_11723 prod-exp_binary64_11721
15×unsub-neg_binary64_11666
12×neg-mul-1_binary64_11668 neg-sub0_binary64_11667
11×+-inverses_binary64_11651
10×associate-+l-_binary64_11607
--rgt-identity_binary64_11658 remove-double-div_binary64_11648 count-2_binary64_11620 +-commutative_binary64_11602
+-lft-identity_binary64_11656
cancel-sign-sub-inv_binary64_11638 distribute-neg-in_binary64_11633 associate-+r-_binary64_11606
exp-lft-sqr_binary64_11727 cube-unmult_binary64_11709
rec-exp_binary64_11722 difference-of-sqr--1_binary64_11643 distribute-neg-out_binary64_11634
div-sub_binary64_11677
remove-double-neg_binary64_11660 *-inverses_binary64_11652 distribute-lft1-in_binary64_11627
exp-sqrt_binary64_11725 1-exp_binary64_11716 exp-1-e_binary64_11715 div0_binary64_11653 rgt-mult-inverse_binary64_11649 difference-of-squares_binary64_11641
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_11935 erf-erfc_binary64_11934 erf-odd_binary64_11933 if-if-and-not_binary64_11932 if-if-and_binary64_11931 if-if-or-not_binary64_11930 if-if-or_binary64_11929 if-not_binary64_11928 if-same_binary64_11927 if-false_binary64_11926 if-true_binary64_11925 not-gte_binary64_11924 not-lte_binary64_11923 not-gt_binary64_11922 not-lt_binary64_11921 gte-same_binary64_11920 lte-same_binary64_11919 gt-same_binary64_11918 lt-same_binary64_11917 sinh---cosh_binary64_11864 sinh-+-cosh_binary64_11863 sinh-cosh_binary64_11862 tanh-def-c_binary64_11861 tanh-def-b_binary64_11860 tanh-def-a_binary64_11859 cosh-def_binary64_11858 sinh-def_binary64_11857 tan-neg_binary64_11804 cos-neg_binary64_11803 sin-neg_binary64_11802 tan-0_binary64_11801 cos-0_binary64_11800 sin-0_binary64_11799 hang-m-tan_binary64_11798 hang-p-tan_binary64_11797 hang-m0-tan_binary64_11796 hang-p0-tan_binary64_11795 hang-0m-tan_binary64_11794 hang-0p-tan_binary64_11793 tan-+PI/2_binary64_11792 tan-+PI_binary64_11791 tan-PI_binary64_11790 tan-PI/3_binary64_11789 tan-PI/4_binary64_11788 tan-PI/6_binary64_11787 cos-+PI/2_binary64_11786 cos-+PI_binary64_11785 cos-PI_binary64_11784 cos-PI/2_binary64_11783 cos-PI/3_binary64_11782 cos-PI/4_binary64_11781 cos-PI/6_binary64_11780 sin-+PI/2_binary64_11779 sin-+PI_binary64_11778 sin-PI_binary64_11777 sin-PI/2_binary64_11776 sin-PI/3_binary64_11775 sin-PI/4_binary64_11774 sin-PI/6_binary64_11773 sub-1-sin_binary64_11772 sub-1-cos_binary64_11771 -1-add-sin_binary64_11770 -1-add-cos_binary64_11769 1-sub-sin_binary64_11768 1-sub-cos_binary64_11767 cos-sin-sum_binary64_11766 log-E_binary64_11762 log-pow_binary64_11761 log-rec_binary64_11760 log-div_binary64_11759 log-prod_binary64_11758 pow-base-0_binary64_11756 unpow1/3_binary64_11739 unpow2_binary64_11737 unpow1/2_binary64_11736 exp-to-pow_binary64_11734 unpow0_binary64_11731 unpow1_binary64_11730 unpow-1_binary64_11729 exp-lft-cube_binary64_11728 exp-cbrt_binary64_11726 exp-neg_binary64_11719 e-exp-1_binary64_11717 exp-0_binary64_11714 rem-log-exp_binary64_11713 rem-exp-log_binary64_11712 cube-neg_binary64_11699 rem-3cbrt-rft_binary64_11698 rem-3cbrt-lft_binary64_11697 rem-cbrt-cube_binary64_11696 rem-cube-cbrt_binary64_11695 sqr-abs_binary64_11687 sqr-neg_binary64_11686 rem-sqrt-square_binary64_11685 rem-square-sqrt_binary64_11684 mul-1-neg_binary64_11664 sub0-neg_binary64_11659 +-rgt-identity_binary64_11657 mul0-rgt_binary64_11655 mul0-lft_binary64_11654 lft-mult-inverse_binary64_11650 difference-of-sqr-1_binary64_11642 cancel-sign-sub_binary64_11637 distribute-neg-frac_binary64_11636 distribute-frac-neg_binary64_11635 distribute-rgt-neg-out_binary64_11632 distribute-lft-neg-out_binary64_11631
Counts
1 → 4
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0913
11710
2417
3927
43767
513697
613987
714567
819497
931787

prune13.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New224
Fresh011
Picked000
Done000
Total235
Error
0.1b
Counts
5 → 3
Compiler

Compiled 45 to 34 computations (24.4% saved)

localize4.0ms (0%)

Local error

Found 1 expressions with local error:

5.8b
(*.f64 x (/.f64 y z))

rewrite38.0ms (0.2%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
14×add-sqr-sqrt_binary64_11694
13×associate-*r*_binary64_11612
10×times-frac_binary64_11678
add-cube-cbrt_binary64_11707 *-un-lft-identity_binary64_11672
add-exp-log_binary64_11710 add-cbrt-cube_binary64_11708
pow1_binary64_11733 associate-*l*_binary64_11613
prod-exp_binary64_11721 cbrt-unprod_binary64_11705 unswap-sqr_binary64_11640
pow-prod-down_binary64_11743 div-exp_binary64_11723 add-log-exp_binary64_11711 cbrt-undiv_binary64_11706 associate-*r/_binary64_11614 div-inv_binary64_11669 *-commutative_binary64_11603
Counts
1 → 32
Calls

1 calls:

7.0ms
(*.f64 x (/.f64 y z))
Compiler

Compiled 373 to 121 computations (67.6% saved)

series147.0ms (1%)

Error
0.1b
Counts
1 → 9
Calls

1 calls:

143.0ms
(*.f64 x (/.f64 y z))
Compiler

Compiled 135 to 114 computations (15.6% saved)

simplify446.0ms (2.9%)

Algorithm
egg-herbie
Rules
556×cube-prod_binary64_11700
493×exp-to-pow_binary64_11734
259×associate-/l*_binary64_11617
254×distribute-rgt-out--_binary64_11626
253×*-commutative_binary64_11603
236×associate-*l/_binary64_11615
212×associate-*r/_binary64_11614
203×distribute-rgt-out_binary64_11625
198×associate-*l*_binary64_11613
182×times-frac_binary64_11678
150×associate-*r*_binary64_11612
143×associate-/l/_binary64_11619
141×sqr-pow_binary64_11644
113×exp-prod_binary64_11724
86×pow-sqr_binary64_11645
85×swap-sqr_binary64_11639
80×unswap-sqr_binary64_11640
79×cancel-sign-sub-inv_binary64_11638
68×exp-sum_binary64_11718 distribute-rgt-in_binary64_11622
67×*-lft-identity_binary64_11661
56×pow-plus_binary64_11735 sub-neg_binary64_11665 associate-/r/_binary64_11618
54×log-prod_binary64_11758
52×associate-/r*_binary64_11616
51×distribute-rgt-neg-in_binary64_11630
47×cube-div_binary64_11701
44×log-div_binary64_11759
41×log-pow_binary64_11761
38×*-rgt-identity_binary64_11662
37×associate-+l-_binary64_11607
36×associate--r+_binary64_11608
34×associate--l+_binary64_11609 associate-+l+_binary64_11605
32×associate--r-_binary64_11611
31×associate--l-_binary64_11610
30×associate-+r+_binary64_11604
27×remove-double-div_binary64_11648 distribute-lft-neg-in_binary64_11629
23×associate-+r-_binary64_11606
22×exp-diff_binary64_11720
19×distribute-lft-in_binary64_11621 +-commutative_binary64_11602
18×neg-mul-1_binary64_11668
17×distribute-rgt1-in_binary64_11628
15×log-rec_binary64_11760
14×pow-base-1_binary64_11732 unsub-neg_binary64_11666
13×/-rgt-identity_binary64_11663
12×unpow3_binary64_11738
11×cube-mult_binary64_11702
10×prod-exp_binary64_11721
div-exp_binary64_11723 neg-sub0_binary64_11667
cube-unmult_binary64_11709 distribute-neg-out_binary64_11634 distribute-lft-out--_binary64_11624 distribute-lft-out_binary64_11623
sub0-neg_binary64_11659
+-inverses_binary64_11651 count-2_binary64_11620
rem-log-exp_binary64_11713 +-lft-identity_binary64_11656
exp-lft-sqr_binary64_11727 --rgt-identity_binary64_11658 distribute-neg-in_binary64_11633
rec-exp_binary64_11722 difference-of-sqr--1_binary64_11643 distribute-rgt-neg-out_binary64_11632 distribute-lft-neg-out_binary64_11631
exp-sqrt_binary64_11725 div-sub_binary64_11677
exp-lft-cube_binary64_11728 1-exp_binary64_11716 exp-1-e_binary64_11715 mul-1-neg_binary64_11664 remove-double-neg_binary64_11660 +-rgt-identity_binary64_11657 div0_binary64_11653 rgt-mult-inverse_binary64_11649 distribute-lft1-in_binary64_11627
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_11935 erf-erfc_binary64_11934 erf-odd_binary64_11933 if-if-and-not_binary64_11932 if-if-and_binary64_11931 if-if-or-not_binary64_11930 if-if-or_binary64_11929 if-not_binary64_11928 if-same_binary64_11927 if-false_binary64_11926 if-true_binary64_11925 not-gte_binary64_11924 not-lte_binary64_11923 not-gt_binary64_11922 not-lt_binary64_11921 gte-same_binary64_11920 lte-same_binary64_11919 gt-same_binary64_11918 lt-same_binary64_11917 sinh---cosh_binary64_11864 sinh-+-cosh_binary64_11863 sinh-cosh_binary64_11862 tanh-def-c_binary64_11861 tanh-def-b_binary64_11860 tanh-def-a_binary64_11859 cosh-def_binary64_11858 sinh-def_binary64_11857 tan-neg_binary64_11804 cos-neg_binary64_11803 sin-neg_binary64_11802 tan-0_binary64_11801 cos-0_binary64_11800 sin-0_binary64_11799 hang-m-tan_binary64_11798 hang-p-tan_binary64_11797 hang-m0-tan_binary64_11796 hang-p0-tan_binary64_11795 hang-0m-tan_binary64_11794 hang-0p-tan_binary64_11793 tan-+PI/2_binary64_11792 tan-+PI_binary64_11791 tan-PI_binary64_11790 tan-PI/3_binary64_11789 tan-PI/4_binary64_11788 tan-PI/6_binary64_11787 cos-+PI/2_binary64_11786 cos-+PI_binary64_11785 cos-PI_binary64_11784 cos-PI/2_binary64_11783 cos-PI/3_binary64_11782 cos-PI/4_binary64_11781 cos-PI/6_binary64_11780 sin-+PI/2_binary64_11779 sin-+PI_binary64_11778 sin-PI_binary64_11777 sin-PI/2_binary64_11776 sin-PI/3_binary64_11775 sin-PI/4_binary64_11774 sin-PI/6_binary64_11773 sub-1-sin_binary64_11772 sub-1-cos_binary64_11771 -1-add-sin_binary64_11770 -1-add-cos_binary64_11769 1-sub-sin_binary64_11768 1-sub-cos_binary64_11767 cos-sin-sum_binary64_11766 log-E_binary64_11762 pow-base-0_binary64_11756 unpow1/3_binary64_11739 unpow2_binary64_11737 unpow1/2_binary64_11736 unpow0_binary64_11731 unpow1_binary64_11730 unpow-1_binary64_11729 exp-cbrt_binary64_11726 exp-neg_binary64_11719 e-exp-1_binary64_11717 exp-0_binary64_11714 rem-exp-log_binary64_11712 cube-neg_binary64_11699 rem-3cbrt-rft_binary64_11698 rem-3cbrt-lft_binary64_11697 rem-cbrt-cube_binary64_11696 rem-cube-cbrt_binary64_11695 sqr-abs_binary64_11687 sqr-neg_binary64_11686 rem-sqrt-square_binary64_11685 rem-square-sqrt_binary64_11684 mul0-rgt_binary64_11655 mul0-lft_binary64_11654 *-inverses_binary64_11652 lft-mult-inverse_binary64_11650 difference-of-sqr-1_binary64_11642 difference-of-squares_binary64_11641 cancel-sign-sub_binary64_11637 distribute-neg-frac_binary64_11636 distribute-frac-neg_binary64_11635
Counts
41 → 53
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
070435
1161390
2553390
31605390
41795390
52208390
63856390

prune49.0ms (0.3%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New45853
Fresh022
Picked011
Done000
Total451156
Error
0.0b
Counts
56 → 11
Compiler

Compiled 707 to 201 computations (71.6% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.6b
(cbrt.f64 z)
0.6b
(cbrt.f64 z)
0.6b
(cbrt.f64 z)
4.1b
(/.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (/.f64 (*.f64 (cbrt.f64 z) (cbrt.f64 z)) x))

rewrite98.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
25×add-exp-log_binary64_11710
15×add-cbrt-cube_binary64_11708
13×times-frac_binary64_11678
11×add-cube-cbrt_binary64_11707 add-sqr-sqrt_binary64_11694 *-un-lft-identity_binary64_11672
10×div-exp_binary64_11723 cbrt-undiv_binary64_11706
cbrt-prod_binary64_11703
associate-/r*_binary64_11616
prod-exp_binary64_11721 cbrt-unprod_binary64_11705
pow1_binary64_11733 add-log-exp_binary64_11711
div-inv_binary64_11669 pow1/3_binary64_11754
frac-2neg_binary64_11683 clear-num_binary64_11671 associate-/r/_binary64_11618 associate-/l*_binary64_11617
Counts
4 → 71
Calls

4 calls:

10.0ms
(/.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (/.f64 (*.f64 (cbrt.f64 z) (cbrt.f64 z)) x))
1.0ms
(cbrt.f64 z)
1.0ms
(cbrt.f64 z)
1.0ms
(cbrt.f64 z)
Compiler

Compiled 1800 to 328 computations (81.8% saved)

series1.1s (7.2%)

Error
0.0b
Counts
4 → 18
Calls

4 calls:

716.0ms
(/.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (/.f64 (*.f64 (cbrt.f64 z) (cbrt.f64 z)) x))
121.0ms
(cbrt.f64 z)
119.0ms
(cbrt.f64 z)
113.0ms
(cbrt.f64 z)
Compiler

Compiled 1170 to 851 computations (27.3% saved)

simplify218.0ms (1.4%)

Algorithm
egg-herbie
Rules
736×associate-/l*_binary64_11617
566×associate-/l/_binary64_11619
539×associate-/r/_binary64_11618
528×associate-/r*_binary64_11616
439×associate-*l/_binary64_11615
88×times-frac_binary64_11678
59×log-div_binary64_11759
56×log-prod_binary64_11758
54×associate-*l*_binary64_11613
47×exp-prod_binary64_11724 *-commutative_binary64_11603
44×sub-neg_binary64_11665
43×sqr-pow_binary64_11644
42×unswap-sqr_binary64_11640 distribute-rgt-in_binary64_11622
34×distribute-lft-in_binary64_11621 associate-*r*_binary64_11612
31×cancel-sign-sub-inv_binary64_11638
25×neg-mul-1_binary64_11668
22×associate-*r/_binary64_11614
21×neg-sub0_binary64_11667 distribute-rgt-neg-in_binary64_11630 distribute-rgt-out_binary64_11625
20×exp-sum_binary64_11718 pow-sqr_binary64_11645 distribute-lft-neg-in_binary64_11629
19×*-rgt-identity_binary64_11662
18×cube-div_binary64_11701
16×distribute-neg-in_binary64_11633
15×log-pow_binary64_11761
14×swap-sqr_binary64_11639
13×div-sub_binary64_11677 distribute-lft-neg-out_binary64_11631
11×distribute-rgt-neg-out_binary64_11632 distribute-lft-out_binary64_11623
10×distribute-neg-frac_binary64_11636 +-commutative_binary64_11602
exp-diff_binary64_11720 cube-prod_binary64_11700 unsub-neg_binary64_11666
cube-unmult_binary64_11709
unpow1/3_binary64_11739 pow-plus_binary64_11735
exp-to-pow_binary64_11734 *-lft-identity_binary64_11661 distribute-neg-out_binary64_11634 distribute-rgt-out--_binary64_11626 associate--r+_binary64_11608
log-rec_binary64_11760
unpow2_binary64_11737 unpow1_binary64_11730 exp-lft-sqr_binary64_11727 rem-sqrt-square_binary64_11685 /-rgt-identity_binary64_11663 count-2_binary64_11620 associate--l+_binary64_11609 associate-+l-_binary64_11607
exp-neg_binary64_11719 rem-3cbrt-lft_binary64_11697 remove-double-neg_binary64_11660 cancel-sign-sub_binary64_11637 distribute-frac-neg_binary64_11635 associate--r-_binary64_11611 associate--l-_binary64_11610
prod-exp_binary64_11721 1-exp_binary64_11716 rem-log-exp_binary64_11713 rem-3cbrt-rft_binary64_11698 mul-1-neg_binary64_11664 sub0-neg_binary64_11659 +-rgt-identity_binary64_11657 *-inverses_binary64_11652 distribute-rgt1-in_binary64_11628 distribute-lft-out--_binary64_11624 associate-+r-_binary64_11606
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_11935 erf-erfc_binary64_11934 erf-odd_binary64_11933 if-if-and-not_binary64_11932 if-if-and_binary64_11931 if-if-or-not_binary64_11930 if-if-or_binary64_11929 if-not_binary64_11928 if-same_binary64_11927 if-false_binary64_11926 if-true_binary64_11925 not-gte_binary64_11924 not-lte_binary64_11923 not-gt_binary64_11922 not-lt_binary64_11921 gte-same_binary64_11920 lte-same_binary64_11919 gt-same_binary64_11918 lt-same_binary64_11917 sinh---cosh_binary64_11864 sinh-+-cosh_binary64_11863 sinh-cosh_binary64_11862 tanh-def-c_binary64_11861 tanh-def-b_binary64_11860 tanh-def-a_binary64_11859 cosh-def_binary64_11858 sinh-def_binary64_11857 tan-neg_binary64_11804 cos-neg_binary64_11803 sin-neg_binary64_11802 tan-0_binary64_11801 cos-0_binary64_11800 sin-0_binary64_11799 hang-m-tan_binary64_11798 hang-p-tan_binary64_11797 hang-m0-tan_binary64_11796 hang-p0-tan_binary64_11795 hang-0m-tan_binary64_11794 hang-0p-tan_binary64_11793 tan-+PI/2_binary64_11792 tan-+PI_binary64_11791 tan-PI_binary64_11790 tan-PI/3_binary64_11789 tan-PI/4_binary64_11788 tan-PI/6_binary64_11787 cos-+PI/2_binary64_11786 cos-+PI_binary64_11785 cos-PI_binary64_11784 cos-PI/2_binary64_11783 cos-PI/3_binary64_11782 cos-PI/4_binary64_11781 cos-PI/6_binary64_11780 sin-+PI/2_binary64_11779 sin-+PI_binary64_11778 sin-PI_binary64_11777 sin-PI/2_binary64_11776 sin-PI/3_binary64_11775 sin-PI/4_binary64_11774 sin-PI/6_binary64_11773 sub-1-sin_binary64_11772 sub-1-cos_binary64_11771 -1-add-sin_binary64_11770 -1-add-cos_binary64_11769 1-sub-sin_binary64_11768 1-sub-cos_binary64_11767 cos-sin-sum_binary64_11766 log-E_binary64_11762 pow-base-0_binary64_11756 unpow3_binary64_11738 unpow1/2_binary64_11736 pow-base-1_binary64_11732 unpow0_binary64_11731 unpow-1_binary64_11729 exp-lft-cube_binary64_11728 exp-cbrt_binary64_11726 exp-sqrt_binary64_11725 div-exp_binary64_11723 rec-exp_binary64_11722 e-exp-1_binary64_11717 exp-1-e_binary64_11715 exp-0_binary64_11714 rem-exp-log_binary64_11712 cube-mult_binary64_11702 cube-neg_binary64_11699 rem-cbrt-cube_binary64_11696 rem-cube-cbrt_binary64_11695 sqr-abs_binary64_11687 sqr-neg_binary64_11686 rem-square-sqrt_binary64_11684 --rgt-identity_binary64_11658 +-lft-identity_binary64_11656 mul0-rgt_binary64_11655 mul0-lft_binary64_11654 div0_binary64_11653 +-inverses_binary64_11651 lft-mult-inverse_binary64_11650 rgt-mult-inverse_binary64_11649 remove-double-div_binary64_11648 difference-of-sqr--1_binary64_11643 difference-of-sqr-1_binary64_11642 difference-of-squares_binary64_11641 distribute-lft1-in_binary64_11627 associate-+l+_binary64_11605 associate-+r+_binary64_11604
Counts
89 → 178
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01561668
13641242
212021230

prune231.0ms (1.5%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New1771178
Fresh279
Picked011
Done011
Total17910189
Error
0.0b
Counts
189 → 10
Compiler

Compiled 4894 to 1361 computations (72.2% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.6b
(cbrt.f64 x)
0.6b
(cbrt.f64 x)
1.7b
(/.f64 (*.f64 (cbrt.f64 x) y) z)
2.9b
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (/.f64 (*.f64 (cbrt.f64 x) y) z))

rewrite90.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
30×add-exp-log_binary64_11710
21×add-cbrt-cube_binary64_11708
12×prod-exp_binary64_11721 cbrt-unprod_binary64_11705
11×add-sqr-sqrt_binary64_11694
10×add-cube-cbrt_binary64_11707 *-un-lft-identity_binary64_11672
pow1_binary64_11733
associate-*r*_binary64_11612
div-exp_binary64_11723 cbrt-undiv_binary64_11706 times-frac_binary64_11678 cbrt-prod_binary64_11703
add-log-exp_binary64_11711
pow-prod-down_binary64_11743 associate-/r*_binary64_11616
div-inv_binary64_11669 pow1/3_binary64_11754
unswap-sqr_binary64_11640 associate-*r/_binary64_11614 associate-*l*_binary64_11613 *-commutative_binary64_11603 frac-2neg_binary64_11683 clear-num_binary64_11671 associate-/l*_binary64_11617
Counts
4 → 75
Calls

4 calls:

11.0ms
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (/.f64 (*.f64 (cbrt.f64 x) y) z))
5.0ms
(/.f64 (*.f64 (cbrt.f64 x) y) z)
1.0ms
(cbrt.f64 x)
1.0ms
(cbrt.f64 x)
Compiler

Compiled 1371 to 259 computations (81.1% saved)

series875.0ms (5.8%)

Error
0.0b
Counts
4 → 24
Calls

4 calls:

439.0ms
(/.f64 (*.f64 (cbrt.f64 x) y) z)
183.0ms
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (/.f64 (*.f64 (cbrt.f64 x) y) z))
120.0ms
(cbrt.f64 x)
116.0ms
(cbrt.f64 x)
Compiler

Compiled 786 to 581 computations (26.1% saved)

simplify523.0ms (3.4%)

Algorithm
egg-herbie
Rules
785×times-frac_binary64_11678
556×unswap-sqr_binary64_11640
307×associate-/r*_binary64_11616 *-commutative_binary64_11603
293×associate-/l/_binary64_11619
207×log-prod_binary64_11758
193×associate-*l*_binary64_11613
177×associate-/r/_binary64_11618
173×cube-prod_binary64_11700
135×log-div_binary64_11759
126×associate-*r*_binary64_11612
121×cube-div_binary64_11701
119×exp-prod_binary64_11724
105×sqr-pow_binary64_11644
97×sub-neg_binary64_11665
77×associate-/l*_binary64_11617
66×associate-*l/_binary64_11615
63×associate-*r/_binary64_11614
42×div-sub_binary64_11677
40×pow-sqr_binary64_11645
34×distribute-rgt-neg-in_binary64_11630
33×neg-sub0_binary64_11667 *-rgt-identity_binary64_11662
32×distribute-lft-neg-in_binary64_11629 associate-+l+_binary64_11605
31×/-rgt-identity_binary64_11663
30×neg-mul-1_binary64_11668
29×*-lft-identity_binary64_11661 associate-+r+_binary64_11604
23×unpow3_binary64_11738
22×associate-+l-_binary64_11607
19×swap-sqr_binary64_11639
18×cube-mult_binary64_11702
16×distribute-neg-frac_binary64_11636
14×cancel-sign-sub-inv_binary64_11638 +-commutative_binary64_11602
11×cube-unmult_binary64_11709 associate--l+_binary64_11609 associate-+r-_binary64_11606
10×pow-plus_binary64_11735 associate--l-_binary64_11610
log-pow_binary64_11761
sub0-neg_binary64_11659
rem-sqrt-square_binary64_11685
remove-double-neg_binary64_11660
log-rec_binary64_11760 unsub-neg_binary64_11666 mul-1-neg_binary64_11664 distribute-rgt-neg-out_binary64_11632
+-rgt-identity_binary64_11657 div0_binary64_11653
--rgt-identity_binary64_11658 +-lft-identity_binary64_11656 associate--r+_binary64_11608
unpow1/3_binary64_11739 exp-diff_binary64_11720 cube-neg_binary64_11699 distribute-lft-neg-out_binary64_11631 distribute-rgt-in_binary64_11622 distribute-lft-in_binary64_11621 count-2_binary64_11620
div-exp_binary64_11723 rec-exp_binary64_11722 prod-exp_binary64_11721 exp-sum_binary64_11718 1-exp_binary64_11716 exp-1-e_binary64_11715 rem-log-exp_binary64_11713 rem-3cbrt-lft_binary64_11697 rem-cube-cbrt_binary64_11695 sqr-neg_binary64_11686 mul0-rgt_binary64_11655 mul0-lft_binary64_11654 remove-double-div_binary64_11648 distribute-frac-neg_binary64_11635 distribute-lft1-in_binary64_11627 distribute-rgt-out_binary64_11625 distribute-lft-out_binary64_11623
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_11935 erf-erfc_binary64_11934 erf-odd_binary64_11933 if-if-and-not_binary64_11932 if-if-and_binary64_11931 if-if-or-not_binary64_11930 if-if-or_binary64_11929 if-not_binary64_11928 if-same_binary64_11927 if-false_binary64_11926 if-true_binary64_11925 not-gte_binary64_11924 not-lte_binary64_11923 not-gt_binary64_11922 not-lt_binary64_11921 gte-same_binary64_11920 lte-same_binary64_11919 gt-same_binary64_11918 lt-same_binary64_11917 sinh---cosh_binary64_11864 sinh-+-cosh_binary64_11863 sinh-cosh_binary64_11862 tanh-def-c_binary64_11861 tanh-def-b_binary64_11860 tanh-def-a_binary64_11859 cosh-def_binary64_11858 sinh-def_binary64_11857 tan-neg_binary64_11804 cos-neg_binary64_11803 sin-neg_binary64_11802 tan-0_binary64_11801 cos-0_binary64_11800 sin-0_binary64_11799 hang-m-tan_binary64_11798 hang-p-tan_binary64_11797 hang-m0-tan_binary64_11796 hang-p0-tan_binary64_11795 hang-0m-tan_binary64_11794 hang-0p-tan_binary64_11793 tan-+PI/2_binary64_11792 tan-+PI_binary64_11791 tan-PI_binary64_11790 tan-PI/3_binary64_11789 tan-PI/4_binary64_11788 tan-PI/6_binary64_11787 cos-+PI/2_binary64_11786 cos-+PI_binary64_11785 cos-PI_binary64_11784 cos-PI/2_binary64_11783 cos-PI/3_binary64_11782 cos-PI/4_binary64_11781 cos-PI/6_binary64_11780 sin-+PI/2_binary64_11779 sin-+PI_binary64_11778 sin-PI_binary64_11777 sin-PI/2_binary64_11776 sin-PI/3_binary64_11775 sin-PI/4_binary64_11774 sin-PI/6_binary64_11773 sub-1-sin_binary64_11772 sub-1-cos_binary64_11771 -1-add-sin_binary64_11770 -1-add-cos_binary64_11769 1-sub-sin_binary64_11768 1-sub-cos_binary64_11767 cos-sin-sum_binary64_11766 log-E_binary64_11762 pow-base-0_binary64_11756 unpow2_binary64_11737 unpow1/2_binary64_11736 exp-to-pow_binary64_11734 pow-base-1_binary64_11732 unpow0_binary64_11731 unpow1_binary64_11730 unpow-1_binary64_11729 exp-lft-cube_binary64_11728 exp-lft-sqr_binary64_11727 exp-cbrt_binary64_11726 exp-sqrt_binary64_11725 exp-neg_binary64_11719 e-exp-1_binary64_11717 exp-0_binary64_11714 rem-exp-log_binary64_11712 rem-3cbrt-rft_binary64_11698 rem-cbrt-cube_binary64_11696 sqr-abs_binary64_11687 rem-square-sqrt_binary64_11684 *-inverses_binary64_11652 +-inverses_binary64_11651 lft-mult-inverse_binary64_11650 rgt-mult-inverse_binary64_11649 difference-of-sqr--1_binary64_11643 difference-of-sqr-1_binary64_11642 difference-of-squares_binary64_11641 cancel-sign-sub_binary64_11637 distribute-neg-out_binary64_11634 distribute-neg-in_binary64_11633 distribute-rgt1-in_binary64_11628 distribute-rgt-out--_binary64_11626 distribute-lft-out--_binary64_11624 associate--r-_binary64_11611
Counts
99 → 284
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01111059
1269891
21152885
33716885

prune202.0ms (1.3%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New2813284
Fresh347
Picked101
Done112
Total2868294
Error
0b
Counts
294 → 8
Compiler

Compiled 4200 to 584 computations (86.1% saved)

localize217.0ms (1.4%)

Local error

Found 4 expressions with local error:

0.6b
(cbrt.f64 x)
0.6b
(cbrt.f64 x)
2.9b
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (/.f64 1 (/.f64 (/.f64 z (cbrt.f64 x)) y)))
3.1b
(/.f64 (/.f64 z (cbrt.f64 x)) y)

rewrite632.0ms (4.2%)

Algorithm
rewrite-expression-head
Error
0b
Rules
726×times-frac_binary64_11678
361×add-sqr-sqrt_binary64_11694
342×*-un-lft-identity_binary64_11672
338×add-cube-cbrt_binary64_11707
215×associate-*r*_binary64_11612
125×cbrt-prod_binary64_11703
83×add-exp-log_binary64_11710
33×div-exp_binary64_11723
30×add-cbrt-cube_binary64_11708 prod-exp_binary64_11721
22×associate-/l*_binary64_11617
18×div-inv_binary64_11669
15×cbrt-undiv_binary64_11706
12×cbrt-unprod_binary64_11705
pow1_binary64_11733 unswap-sqr_binary64_11640
1-exp_binary64_11716 rec-exp_binary64_11722
add-log-exp_binary64_11711
associate-/r*_binary64_11616 pow-prod-down_binary64_11743
pow1/3_binary64_11754
frac-2neg_binary64_11683 clear-num_binary64_11671 associate-/l/_binary64_11619 un-div-inv_binary64_11670 associate-*r/_binary64_11614 associate-*l*_binary64_11613 associate-/r/_binary64_11618 *-commutative_binary64_11603
Counts
4 → 393
Calls

4 calls:

63.0ms
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (/.f64 1 (/.f64 (/.f64 z (cbrt.f64 x)) y)))
8.0ms
(/.f64 (/.f64 z (cbrt.f64 x)) y)
5.0ms
(cbrt.f64 x)
1.0ms
(cbrt.f64 x)
Compiler

Compiled 10930 to 3433 computations (68.6% saved)

series931.0ms (6.1%)

Error
0b
Counts
4 → 24
Calls

4 calls:

515.0ms
(/.f64 (/.f64 z (cbrt.f64 x)) y)
179.0ms
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (/.f64 1 (/.f64 (/.f64 z (cbrt.f64 x)) y)))
116.0ms
(cbrt.f64 x)
104.0ms
(cbrt.f64 x)
Compiler

Compiled 924 to 719 computations (22.2% saved)

simplify3.0s (20%)

Algorithm
egg-herbie
Rules
528×associate-*l/_binary64_11615
270×unswap-sqr_binary64_11640
268×sub-neg_binary64_11665
225×*-commutative_binary64_11603
220×associate-*r/_binary64_11614
219×associate-*l*_binary64_11613
207×associate-/r/_binary64_11618
174×associate-/r*_binary64_11616
172×unsub-neg_binary64_11666
165×times-frac_binary64_11678
152×associate-+l+_binary64_11605
142×cancel-sign-sub-inv_binary64_11638
138×associate-+r+_binary64_11604
119×associate--r+_binary64_11608
116×div-sub_binary64_11677
101×log-prod_binary64_11758
98×associate--l+_binary64_11609
93×sqr-pow_binary64_11644
91×associate-/l/_binary64_11619
90×associate-+l-_binary64_11607
82×associate-/l*_binary64_11617
78×neg-mul-1_binary64_11668 /-rgt-identity_binary64_11663
70×neg-sub0_binary64_11667
64×associate--l-_binary64_11610
63×distribute-rgt-in_binary64_11622
60×associate--r-_binary64_11611
58×exp-prod_binary64_11724 distribute-lft-neg-in_binary64_11629
57×distribute-rgt-neg-in_binary64_11630
53×pow-sqr_binary64_11645
45×+-commutative_binary64_11602
44×associate-+r-_binary64_11606
43×cube-prod_binary64_11700
35×distribute-lft-in_binary64_11621
32×log-pow_binary64_11761
27×log-div_binary64_11759
25×distribute-rgt-out_binary64_11625
23×distribute-neg-in_binary64_11633
22×cube-div_binary64_11701
20×pow-plus_binary64_11735
19×exp-to-pow_binary64_11734
18×rem-sqrt-square_binary64_11685 *-lft-identity_binary64_11661
17×*-rgt-identity_binary64_11662 remove-double-div_binary64_11648
15×sub0-neg_binary64_11659
14×cube-unmult_binary64_11709
13×unpow3_binary64_11738 swap-sqr_binary64_11639
12×distribute-neg-frac_binary64_11636
11×distribute-neg-out_binary64_11634 distribute-rgt-out--_binary64_11626
cube-mult_binary64_11702 distribute-lft-neg-out_binary64_11631
distribute-lft-out_binary64_11623 count-2_binary64_11620
associate-*r*_binary64_11612
log-rec_binary64_11760 remove-double-neg_binary64_11660 +-lft-identity_binary64_11656 distribute-lft-out--_binary64_11624
unpow1/3_binary64_11739 pow-base-1_binary64_11732 distribute-rgt1-in_binary64_11628
exp-sum_binary64_11718 sqr-neg_binary64_11686 mul-1-neg_binary64_11664 div0_binary64_11653 distribute-frac-neg_binary64_11635
cube-neg_binary64_11699 distribute-rgt-neg-out_binary64_11632
div-exp_binary64_11723 rec-exp_binary64_11722 prod-exp_binary64_11721 1-exp_binary64_11716 exp-1-e_binary64_11715 rem-log-exp_binary64_11713 rem-3cbrt-lft_binary64_11697 rem-cbrt-cube_binary64_11696 rem-cube-cbrt_binary64_11695 --rgt-identity_binary64_11658 +-rgt-identity_binary64_11657 mul0-rgt_binary64_11655 mul0-lft_binary64_11654
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_11935 erf-erfc_binary64_11934 erf-odd_binary64_11933 if-if-and-not_binary64_11932 if-if-and_binary64_11931 if-if-or-not_binary64_11930 if-if-or_binary64_11929 if-not_binary64_11928 if-same_binary64_11927 if-false_binary64_11926 if-true_binary64_11925 not-gte_binary64_11924 not-lte_binary64_11923 not-gt_binary64_11922 not-lt_binary64_11921 gte-same_binary64_11920 lte-same_binary64_11919 gt-same_binary64_11918 lt-same_binary64_11917 sinh---cosh_binary64_11864 sinh-+-cosh_binary64_11863 sinh-cosh_binary64_11862 tanh-def-c_binary64_11861 tanh-def-b_binary64_11860 tanh-def-a_binary64_11859 cosh-def_binary64_11858 sinh-def_binary64_11857 tan-neg_binary64_11804 cos-neg_binary64_11803 sin-neg_binary64_11802 tan-0_binary64_11801 cos-0_binary64_11800 sin-0_binary64_11799 hang-m-tan_binary64_11798 hang-p-tan_binary64_11797 hang-m0-tan_binary64_11796 hang-p0-tan_binary64_11795 hang-0m-tan_binary64_11794 hang-0p-tan_binary64_11793 tan-+PI/2_binary64_11792 tan-+PI_binary64_11791 tan-PI_binary64_11790 tan-PI/3_binary64_11789 tan-PI/4_binary64_11788 tan-PI/6_binary64_11787 cos-+PI/2_binary64_11786 cos-+PI_binary64_11785 cos-PI_binary64_11784 cos-PI/2_binary64_11783 cos-PI/3_binary64_11782 cos-PI/4_binary64_11781 cos-PI/6_binary64_11780 sin-+PI/2_binary64_11779 sin-+PI_binary64_11778 sin-PI_binary64_11777 sin-PI/2_binary64_11776 sin-PI/3_binary64_11775 sin-PI/4_binary64_11774 sin-PI/6_binary64_11773 sub-1-sin_binary64_11772 sub-1-cos_binary64_11771 -1-add-sin_binary64_11770 -1-add-cos_binary64_11769 1-sub-sin_binary64_11768 1-sub-cos_binary64_11767 cos-sin-sum_binary64_11766 log-E_binary64_11762 pow-base-0_binary64_11756 unpow2_binary64_11737 unpow1/2_binary64_11736 unpow0_binary64_11731 unpow1_binary64_11730 unpow-1_binary64_11729 exp-lft-cube_binary64_11728 exp-lft-sqr_binary64_11727 exp-cbrt_binary64_11726 exp-sqrt_binary64_11725 exp-diff_binary64_11720 exp-neg_binary64_11719 e-exp-1_binary64_11717 exp-0_binary64_11714 rem-exp-log_binary64_11712 rem-3cbrt-rft_binary64_11698 sqr-abs_binary64_11687 rem-square-sqrt_binary64_11684 *-inverses_binary64_11652 +-inverses_binary64_11651 lft-mult-inverse_binary64_11650 rgt-mult-inverse_binary64_11649 difference-of-sqr--1_binary64_11643 difference-of-sqr-1_binary64_11642 difference-of-squares_binary64_11641 cancel-sign-sub_binary64_11637 distribute-lft1-in_binary64_11627
Counts
417 → 1619
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
072711552
1217110864
232538940
327908751
444878751

prune3.0s (19.9%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New161901619
Fresh066
Picked011
Done011
Total161981627
Error
0b
Counts
1627 → 8
Compiler

Compiled 43703 to 15527 computations (64.5% saved)

regimes606.0ms (4%)

Accuracy

Total 2.0b remaining (99.9%)

Threshold costs 0b (0%)

Compiler

Compiled 5538 to 3690 computations (33.4% saved)

bsearch0.0ms (0%)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
1-exp_binary64_11716 *-commutative_binary64_11603
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_11932 if-if-and_binary64_11931 if-if-or-not_binary64_11930 if-if-or_binary64_11929 if-not_binary64_11928 if-same_binary64_11927 if-false_binary64_11926 if-true_binary64_11925 tan-0_binary64_11801 cos-0_binary64_11800 sin-0_binary64_11799 unpow1_binary64_11730 e-exp-1_binary64_11717 exp-1-e_binary64_11715 exp-0_binary64_11714 sqr-abs_binary64_11687 sqr-neg_binary64_11686 neg-mul-1_binary64_11668 neg-sub0_binary64_11667 unsub-neg_binary64_11666 sub-neg_binary64_11665 mul-1-neg_binary64_11664 /-rgt-identity_binary64_11663 *-rgt-identity_binary64_11662 *-lft-identity_binary64_11661 remove-double-neg_binary64_11660 sub0-neg_binary64_11659 --rgt-identity_binary64_11658 +-rgt-identity_binary64_11657 +-lft-identity_binary64_11656 cancel-sign-sub-inv_binary64_11638 cancel-sign-sub_binary64_11637 distribute-neg-frac_binary64_11636 distribute-frac-neg_binary64_11635 distribute-neg-out_binary64_11634 distribute-neg-in_binary64_11633 distribute-rgt-neg-out_binary64_11632 distribute-lft-neg-out_binary64_11631 distribute-rgt-neg-in_binary64_11630 distribute-lft-neg-in_binary64_11629 +-commutative_binary64_11602
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01434
11734
Proof
(* f64 (/ f64 (/ f64 (* f64 (cbrt f64 h0) (cbrt f64 h0)) (* f64 (cbrt f64 h1) (cbrt f64 h1))) (/ f64 1 h2)) (/ f64 (cbrt f64 h0) (cbrt f64 h1)))

end0.0ms (0%)

sample1.3s (8.9%)

Algorithm
intervals
Results
274.0ms8000×body128valid
55.0ms1595×body128invalid
Compiler

Compiled 854 to 548 computations (35.8% saved)

Profiling

Loading profile data...