Details

Time bar (total: 11.1s)

analyze1.3s (11.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.7%0.3%0
0%99.7%0.3%1
0%99.7%0.3%2
0%99.7%0.3%3
0%99.7%0.3%4
0%99.7%0.3%5
0%99.7%0.3%6
0%99.7%0.3%7
0%99.7%0.3%8
0%99.7%0.3%9
0%99.7%0.3%10
0%99.7%0.3%11
0%99.7%0.3%12
1.8%98%0.3%13
2.4%97.3%0.3%14
Compiler

Compiled 16 to 14 computations (12.5% saved)

sample42.0ms (0.4%)

Algorithm
intervals
Results
10.0ms256×body128valid
6.0ms139×body128invalid
Compiler

Compiled 31 to 33 computations (-6.5% saved)

simplify160.0ms (1.4%)

Algorithm
egg-herbie
Rules
24×associate-+l+_binary64_12628
22×associate-+r+_binary64_12627
17×+-commutative_binary64_12625
10×*-commutative_binary64_12626
distribute-rgt-out_binary64_12648 associate-*l*_binary64_12636 associate-*r*_binary64_12635
distribute-lft-out_binary64_12646
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_12958 erf-erfc_binary64_12957 erf-odd_binary64_12956 if-if-and-not_binary64_12955 if-if-and_binary64_12954 if-if-or-not_binary64_12953 if-if-or_binary64_12952 if-not_binary64_12951 if-same_binary64_12950 if-false_binary64_12949 if-true_binary64_12948 not-gte_binary64_12947 not-lte_binary64_12946 not-gt_binary64_12945 not-lt_binary64_12944 gte-same_binary64_12943 lte-same_binary64_12942 gt-same_binary64_12941 lt-same_binary64_12940 sinh---cosh_binary64_12887 sinh-+-cosh_binary64_12886 sinh-cosh_binary64_12885 tanh-def-c_binary64_12884 tanh-def-b_binary64_12883 tanh-def-a_binary64_12882 cosh-def_binary64_12881 sinh-def_binary64_12880 tan-neg_binary64_12827 cos-neg_binary64_12826 sin-neg_binary64_12825 tan-0_binary64_12824 cos-0_binary64_12823 sin-0_binary64_12822 hang-m-tan_binary64_12821 hang-p-tan_binary64_12820 hang-m0-tan_binary64_12819 hang-p0-tan_binary64_12818 hang-0m-tan_binary64_12817 hang-0p-tan_binary64_12816 tan-+PI/2_binary64_12815 tan-+PI_binary64_12814 tan-PI_binary64_12813 tan-PI/3_binary64_12812 tan-PI/4_binary64_12811 tan-PI/6_binary64_12810 cos-+PI/2_binary64_12809 cos-+PI_binary64_12808 cos-PI_binary64_12807 cos-PI/2_binary64_12806 cos-PI/3_binary64_12805 cos-PI/4_binary64_12804 cos-PI/6_binary64_12803 sin-+PI/2_binary64_12802 sin-+PI_binary64_12801 sin-PI_binary64_12800 sin-PI/2_binary64_12799 sin-PI/3_binary64_12798 sin-PI/4_binary64_12797 sin-PI/6_binary64_12796 sub-1-sin_binary64_12795 sub-1-cos_binary64_12794 -1-add-sin_binary64_12793 -1-add-cos_binary64_12792 1-sub-sin_binary64_12791 1-sub-cos_binary64_12790 cos-sin-sum_binary64_12789 log-E_binary64_12785 log-pow_binary64_12784 log-rec_binary64_12783 log-div_binary64_12782 log-prod_binary64_12781 pow-base-0_binary64_12779 unpow1/3_binary64_12762 unpow3_binary64_12761 unpow2_binary64_12760 unpow1/2_binary64_12759 pow-plus_binary64_12758 exp-to-pow_binary64_12757 pow-base-1_binary64_12755 unpow0_binary64_12754 unpow1_binary64_12753 unpow-1_binary64_12752 exp-lft-cube_binary64_12751 exp-lft-sqr_binary64_12750 exp-cbrt_binary64_12749 exp-sqrt_binary64_12748 exp-prod_binary64_12747 div-exp_binary64_12746 rec-exp_binary64_12745 prod-exp_binary64_12744 exp-diff_binary64_12743 exp-neg_binary64_12742 exp-sum_binary64_12741 e-exp-1_binary64_12740 1-exp_binary64_12739 exp-1-e_binary64_12738 exp-0_binary64_12737 rem-log-exp_binary64_12736 rem-exp-log_binary64_12735 cube-unmult_binary64_12732 cube-mult_binary64_12725 cube-div_binary64_12724 cube-prod_binary64_12723 cube-neg_binary64_12722 rem-3cbrt-rft_binary64_12721 rem-3cbrt-lft_binary64_12720 rem-cbrt-cube_binary64_12719 rem-cube-cbrt_binary64_12718 sqr-abs_binary64_12710 sqr-neg_binary64_12709 rem-sqrt-square_binary64_12708 rem-square-sqrt_binary64_12707 times-frac_binary64_12701 div-sub_binary64_12700 neg-mul-1_binary64_12691 neg-sub0_binary64_12690 unsub-neg_binary64_12689 sub-neg_binary64_12688 mul-1-neg_binary64_12687 /-rgt-identity_binary64_12686 *-rgt-identity_binary64_12685 *-lft-identity_binary64_12684 remove-double-neg_binary64_12683 sub0-neg_binary64_12682 --rgt-identity_binary64_12681 +-rgt-identity_binary64_12680 +-lft-identity_binary64_12679 mul0-rgt_binary64_12678 mul0-lft_binary64_12677 div0_binary64_12676 *-inverses_binary64_12675 +-inverses_binary64_12674 lft-mult-inverse_binary64_12673 rgt-mult-inverse_binary64_12672 remove-double-div_binary64_12671 pow-sqr_binary64_12668 sqr-pow_binary64_12667 difference-of-sqr--1_binary64_12666 difference-of-sqr-1_binary64_12665 difference-of-squares_binary64_12664 unswap-sqr_binary64_12663 swap-sqr_binary64_12662 cancel-sign-sub-inv_binary64_12661 cancel-sign-sub_binary64_12660 distribute-neg-frac_binary64_12659 distribute-frac-neg_binary64_12658 distribute-neg-out_binary64_12657 distribute-neg-in_binary64_12656 distribute-rgt-neg-out_binary64_12655 distribute-lft-neg-out_binary64_12654 distribute-rgt-neg-in_binary64_12653 distribute-lft-neg-in_binary64_12652 distribute-rgt1-in_binary64_12651 distribute-lft1-in_binary64_12650 distribute-rgt-out--_binary64_12649 distribute-lft-out--_binary64_12647 distribute-rgt-in_binary64_12645 distribute-lft-in_binary64_12644 count-2_binary64_12643 associate-/l/_binary64_12642 associate-/r/_binary64_12641 associate-/l*_binary64_12640 associate-/r*_binary64_12639 associate-*l/_binary64_12638 associate-*r/_binary64_12637 associate--r-_binary64_12634 associate--l-_binary64_12633 associate--l+_binary64_12632 associate--r+_binary64_12631 associate-+l-_binary64_12630 associate-+r-_binary64_12629
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01422
12719
25519
37719
48119
58119

prune7.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
0.0b
Counts
3 → 2
Compiler

Compiled 58 to 42 computations (27.6% saved)

localize15.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 (+.f64 x (*.f64 y z)) (+.f64 (*.f64 t a) (*.f64 a (*.f64 z b))))
0.0b
(+.f64 (*.f64 t a) (*.f64 a (*.f64 z b)))
5.3b
(*.f64 a (*.f64 z b))

rewrite79.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
17×add-log-exp_binary64_12734
sum-log_binary64_12786
pow1_binary64_12756 add-exp-log_binary64_12733 add-cbrt-cube_binary64_12731
*-un-lft-identity_binary64_12695 flip3-+_binary64_12698 flip-+_binary64_12669
add-cube-cbrt_binary64_12730 add-sqr-sqrt_binary64_12717 frac-add_binary64_12703
pow-prod-down_binary64_12766 prod-exp_binary64_12744 cbrt-unprod_binary64_12728 associate-*l*_binary64_12636
+-commutative_binary64_12625
associate-*r*_binary64_12635 *-commutative_binary64_12626 distribute-lft-out_binary64_12646 associate-+l+_binary64_12628 associate-+r+_binary64_12627
Counts
3 → 50
Calls

3 calls:

9.0ms
(+.f64 (+.f64 x (*.f64 y z)) (+.f64 (*.f64 t a) (*.f64 a (*.f64 z b))))
5.0ms
(*.f64 a (*.f64 z b))
4.0ms
(+.f64 (*.f64 t a) (*.f64 a (*.f64 z b)))
Compiler

Compiled 1465 to 242 computations (83.5% saved)

series1.0s (9.4%)

Error
0.0b
Counts
3 → 66
Calls

3 calls:

570.0ms
(+.f64 (+.f64 x (*.f64 y z)) (+.f64 (*.f64 t a) (*.f64 a (*.f64 z b))))
276.0ms
(+.f64 (*.f64 t a) (*.f64 a (*.f64 z b)))
153.0ms
(*.f64 a (*.f64 z b))
Compiler

Compiled 2131 to 1297 computations (39.1% saved)

simplify253.0ms (2.3%)

Algorithm
egg-herbie
Rules
352×associate-+l+_binary64_12628
305×associate-+r+_binary64_12627
260×sub-neg_binary64_12688
234×cancel-sign-sub-inv_binary64_12661
193×associate-*r*_binary64_12635
190×unsub-neg_binary64_12689
189×associate-*l*_binary64_12636
158×+-commutative_binary64_12625
155×neg-mul-1_binary64_12691 neg-sub0_binary64_12690
140×distribute-rgt-neg-in_binary64_12653
139×distribute-rgt-in_binary64_12645
133×unswap-sqr_binary64_12663
127×distribute-lft-in_binary64_12644
125×distribute-rgt-out_binary64_12648
114×distribute-lft-neg-in_binary64_12652
102×sqr-pow_binary64_12667
77×*-commutative_binary64_12626
65×associate--r+_binary64_12631
56×pow-sqr_binary64_12668
53×distribute-lft-neg-out_binary64_12654
51×distribute-lft-out_binary64_12646
44×associate--l+_binary64_12632
42×distribute-rgt-out--_binary64_12649
30×associate-+r-_binary64_12629
29×distribute-rgt-neg-out_binary64_12655
28×distribute-neg-in_binary64_12656
26×associate-+l-_binary64_12630
24×exp-sum_binary64_12741
22×+-rgt-identity_binary64_12680
20×exp-prod_binary64_12747
16×distribute-lft-out--_binary64_12647
15×cube-prod_binary64_12723 swap-sqr_binary64_12662
14×unpow3_binary64_12761
13×sub0-neg_binary64_12682
12×prod-exp_binary64_12744
11×cube-mult_binary64_12725
log-prod_binary64_12781 difference-of-squares_binary64_12664
cube-unmult_binary64_12732 associate-/l*_binary64_12640
associate-/l/_binary64_12642 associate-*r/_binary64_12637
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_12958 erf-erfc_binary64_12957 erf-odd_binary64_12956 if-if-and-not_binary64_12955 if-if-and_binary64_12954 if-if-or-not_binary64_12953 if-if-or_binary64_12952 if-not_binary64_12951 if-same_binary64_12950 if-false_binary64_12949 if-true_binary64_12948 not-gte_binary64_12947 not-lte_binary64_12946 not-gt_binary64_12945 not-lt_binary64_12944 gte-same_binary64_12943 lte-same_binary64_12942 gt-same_binary64_12941 lt-same_binary64_12940 sinh---cosh_binary64_12887 sinh-+-cosh_binary64_12886 sinh-cosh_binary64_12885 tanh-def-c_binary64_12884 tanh-def-b_binary64_12883 tanh-def-a_binary64_12882 cosh-def_binary64_12881 sinh-def_binary64_12880 tan-neg_binary64_12827 cos-neg_binary64_12826 sin-neg_binary64_12825 tan-0_binary64_12824 cos-0_binary64_12823 sin-0_binary64_12822 hang-m-tan_binary64_12821 hang-p-tan_binary64_12820 hang-m0-tan_binary64_12819 hang-p0-tan_binary64_12818 hang-0m-tan_binary64_12817 hang-0p-tan_binary64_12816 tan-+PI/2_binary64_12815 tan-+PI_binary64_12814 tan-PI_binary64_12813 tan-PI/3_binary64_12812 tan-PI/4_binary64_12811 tan-PI/6_binary64_12810 cos-+PI/2_binary64_12809 cos-+PI_binary64_12808 cos-PI_binary64_12807 cos-PI/2_binary64_12806 cos-PI/3_binary64_12805 cos-PI/4_binary64_12804 cos-PI/6_binary64_12803 sin-+PI/2_binary64_12802 sin-+PI_binary64_12801 sin-PI_binary64_12800 sin-PI/2_binary64_12799 sin-PI/3_binary64_12798 sin-PI/4_binary64_12797 sin-PI/6_binary64_12796 sub-1-sin_binary64_12795 sub-1-cos_binary64_12794 -1-add-sin_binary64_12793 -1-add-cos_binary64_12792 1-sub-sin_binary64_12791 1-sub-cos_binary64_12790 cos-sin-sum_binary64_12789 log-E_binary64_12785 log-pow_binary64_12784 log-rec_binary64_12783 log-div_binary64_12782 pow-base-0_binary64_12779 unpow1/3_binary64_12762 unpow2_binary64_12760 unpow1/2_binary64_12759 pow-plus_binary64_12758 exp-to-pow_binary64_12757 pow-base-1_binary64_12755 unpow0_binary64_12754 unpow1_binary64_12753 unpow-1_binary64_12752 exp-lft-cube_binary64_12751 exp-lft-sqr_binary64_12750 exp-cbrt_binary64_12749 exp-sqrt_binary64_12748 div-exp_binary64_12746 rec-exp_binary64_12745 exp-diff_binary64_12743 exp-neg_binary64_12742 e-exp-1_binary64_12740 1-exp_binary64_12739 exp-1-e_binary64_12738 exp-0_binary64_12737 rem-log-exp_binary64_12736 rem-exp-log_binary64_12735 cube-div_binary64_12724 cube-neg_binary64_12722 rem-3cbrt-rft_binary64_12721 rem-3cbrt-lft_binary64_12720 rem-cbrt-cube_binary64_12719 rem-cube-cbrt_binary64_12718 sqr-abs_binary64_12710 sqr-neg_binary64_12709 rem-sqrt-square_binary64_12708 rem-square-sqrt_binary64_12707 times-frac_binary64_12701 div-sub_binary64_12700 mul-1-neg_binary64_12687 /-rgt-identity_binary64_12686 *-rgt-identity_binary64_12685 *-lft-identity_binary64_12684 remove-double-neg_binary64_12683 --rgt-identity_binary64_12681 +-lft-identity_binary64_12679 mul0-rgt_binary64_12678 mul0-lft_binary64_12677 div0_binary64_12676 *-inverses_binary64_12675 +-inverses_binary64_12674 lft-mult-inverse_binary64_12673 rgt-mult-inverse_binary64_12672 remove-double-div_binary64_12671 difference-of-sqr--1_binary64_12666 difference-of-sqr-1_binary64_12665 cancel-sign-sub_binary64_12660 distribute-neg-frac_binary64_12659 distribute-frac-neg_binary64_12658 distribute-neg-out_binary64_12657 distribute-rgt1-in_binary64_12651 distribute-lft1-in_binary64_12650 count-2_binary64_12643 associate-/r/_binary64_12641 associate-/r*_binary64_12639 associate-*l/_binary64_12638 associate--r-_binary64_12634 associate--l-_binary64_12633
Counts
116 → 243
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01382026
14281942
217831885
342801885

prune292.0ms (2.6%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New2403243
Fresh011
Picked011
Done000
Total2405245
Error
0.0b
Counts
245 → 5
Compiler

Compiled 8505 to 1035 computations (87.8% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 x (+.f64 (*.f64 a (+.f64 (*.f64 z b) t)) (*.f64 z y)))
0.0b
(+.f64 (*.f64 a (+.f64 (*.f64 z b) t)) (*.f64 z y))
0.0b
(+.f64 (*.f64 z b) t)
2.1b
(*.f64 a (+.f64 (*.f64 z b) t))

rewrite89.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
13×add-log-exp_binary64_12734
add-sqr-sqrt_binary64_12717 *-un-lft-identity_binary64_12695
pow1_binary64_12756 add-exp-log_binary64_12733 add-cbrt-cube_binary64_12731 add-cube-cbrt_binary64_12730
sum-log_binary64_12786
flip3-+_binary64_12698 flip-+_binary64_12669
associate-*l*_binary64_12636 associate-*r*_binary64_12635 +-commutative_binary64_12625
distribute-rgt-in_binary64_12645 distribute-lft-in_binary64_12644 associate-*r/_binary64_12637 associate-+l+_binary64_12628
pow-prod-down_binary64_12766 prod-exp_binary64_12744 cbrt-unprod_binary64_12728 unswap-sqr_binary64_12663 *-commutative_binary64_12626 distribute-lft-out_binary64_12646 associate-+r+_binary64_12627
Counts
4 → 60
Calls

4 calls:

9.0ms
(+.f64 x (+.f64 (*.f64 a (+.f64 (*.f64 z b) t)) (*.f64 z y)))
8.0ms
(+.f64 (*.f64 a (+.f64 (*.f64 z b) t)) (*.f64 z y))
7.0ms
(*.f64 a (+.f64 (*.f64 z b) t))
4.0ms
(+.f64 (*.f64 z b) t)
Compiler

Compiled 1337 to 272 computations (79.7% saved)

series1.4s (13%)

Error
0.0b
Counts
4 → 105
Calls

4 calls:

573.0ms
(+.f64 x (+.f64 (*.f64 a (+.f64 (*.f64 z b) t)) (*.f64 z y)))
444.0ms
(+.f64 (*.f64 a (+.f64 (*.f64 z b) t)) (*.f64 z y))
243.0ms
(*.f64 a (+.f64 (*.f64 z b) t))
125.0ms
(+.f64 (*.f64 z b) t)
Compiler

Compiled 3156 to 1906 computations (39.6% saved)

simplify320.0ms (2.9%)

Algorithm
egg-herbie
Rules
701×distribute-rgt-in_binary64_12645
656×distribute-lft-in_binary64_12644
429×cancel-sign-sub-inv_binary64_12661
287×distribute-neg-in_binary64_12656
244×*-commutative_binary64_12626
193×associate-+l+_binary64_12628
187×sub-neg_binary64_12688
173×associate-+r+_binary64_12627
126×associate-*l*_binary64_12636
111×associate-*r*_binary64_12635
102×sqr-pow_binary64_12667
89×distribute-rgt-neg-in_binary64_12653
77×distribute-lft-neg-in_binary64_12652
72×unsub-neg_binary64_12689
70×neg-mul-1_binary64_12691 neg-sub0_binary64_12690
65×associate--r+_binary64_12631
62×unswap-sqr_binary64_12663
56×+-commutative_binary64_12625
54×pow-sqr_binary64_12668
51×exp-prod_binary64_12747
42×associate--l+_binary64_12632
38×exp-sum_binary64_12741
35×*-lft-identity_binary64_12684
33×*-rgt-identity_binary64_12685
30×distribute-rgt-out_binary64_12648
25×associate-+r-_binary64_12629
24×swap-sqr_binary64_12662
21×+-rgt-identity_binary64_12680 associate-+l-_binary64_12630
19×distribute-lft-neg-out_binary64_12654 distribute-rgt-out--_binary64_12649 distribute-lft-out_binary64_12646
17×cube-prod_binary64_12723
13×log-prod_binary64_12781
12×unpow3_binary64_12761
11×sub0-neg_binary64_12682
10×cube-mult_binary64_12725
distribute-rgt-neg-out_binary64_12655
prod-exp_binary64_12744 difference-of-squares_binary64_12664 distribute-lft-out--_binary64_12647
cancel-sign-sub_binary64_12660 distribute-neg-out_binary64_12657
pow-base-1_binary64_12755 associate--l-_binary64_12633
log-pow_binary64_12784 pow-plus_binary64_12758 1-exp_binary64_12739 exp-1-e_binary64_12738 rem-log-exp_binary64_12736 cube-unmult_binary64_12732 associate-/l/_binary64_12642 associate-*r/_binary64_12637
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_12958 erf-erfc_binary64_12957 erf-odd_binary64_12956 if-if-and-not_binary64_12955 if-if-and_binary64_12954 if-if-or-not_binary64_12953 if-if-or_binary64_12952 if-not_binary64_12951 if-same_binary64_12950 if-false_binary64_12949 if-true_binary64_12948 not-gte_binary64_12947 not-lte_binary64_12946 not-gt_binary64_12945 not-lt_binary64_12944 gte-same_binary64_12943 lte-same_binary64_12942 gt-same_binary64_12941 lt-same_binary64_12940 sinh---cosh_binary64_12887 sinh-+-cosh_binary64_12886 sinh-cosh_binary64_12885 tanh-def-c_binary64_12884 tanh-def-b_binary64_12883 tanh-def-a_binary64_12882 cosh-def_binary64_12881 sinh-def_binary64_12880 tan-neg_binary64_12827 cos-neg_binary64_12826 sin-neg_binary64_12825 tan-0_binary64_12824 cos-0_binary64_12823 sin-0_binary64_12822 hang-m-tan_binary64_12821 hang-p-tan_binary64_12820 hang-m0-tan_binary64_12819 hang-p0-tan_binary64_12818 hang-0m-tan_binary64_12817 hang-0p-tan_binary64_12816 tan-+PI/2_binary64_12815 tan-+PI_binary64_12814 tan-PI_binary64_12813 tan-PI/3_binary64_12812 tan-PI/4_binary64_12811 tan-PI/6_binary64_12810 cos-+PI/2_binary64_12809 cos-+PI_binary64_12808 cos-PI_binary64_12807 cos-PI/2_binary64_12806 cos-PI/3_binary64_12805 cos-PI/4_binary64_12804 cos-PI/6_binary64_12803 sin-+PI/2_binary64_12802 sin-+PI_binary64_12801 sin-PI_binary64_12800 sin-PI/2_binary64_12799 sin-PI/3_binary64_12798 sin-PI/4_binary64_12797 sin-PI/6_binary64_12796 sub-1-sin_binary64_12795 sub-1-cos_binary64_12794 -1-add-sin_binary64_12793 -1-add-cos_binary64_12792 1-sub-sin_binary64_12791 1-sub-cos_binary64_12790 cos-sin-sum_binary64_12789 log-E_binary64_12785 log-rec_binary64_12783 log-div_binary64_12782 pow-base-0_binary64_12779 unpow1/3_binary64_12762 unpow2_binary64_12760 unpow1/2_binary64_12759 exp-to-pow_binary64_12757 unpow0_binary64_12754 unpow1_binary64_12753 unpow-1_binary64_12752 exp-lft-cube_binary64_12751 exp-lft-sqr_binary64_12750 exp-cbrt_binary64_12749 exp-sqrt_binary64_12748 div-exp_binary64_12746 rec-exp_binary64_12745 exp-diff_binary64_12743 exp-neg_binary64_12742 e-exp-1_binary64_12740 exp-0_binary64_12737 rem-exp-log_binary64_12735 cube-div_binary64_12724 cube-neg_binary64_12722 rem-3cbrt-rft_binary64_12721 rem-3cbrt-lft_binary64_12720 rem-cbrt-cube_binary64_12719 rem-cube-cbrt_binary64_12718 sqr-abs_binary64_12710 sqr-neg_binary64_12709 rem-sqrt-square_binary64_12708 rem-square-sqrt_binary64_12707 times-frac_binary64_12701 div-sub_binary64_12700 mul-1-neg_binary64_12687 /-rgt-identity_binary64_12686 remove-double-neg_binary64_12683 --rgt-identity_binary64_12681 +-lft-identity_binary64_12679 mul0-rgt_binary64_12678 mul0-lft_binary64_12677 div0_binary64_12676 *-inverses_binary64_12675 +-inverses_binary64_12674 lft-mult-inverse_binary64_12673 rgt-mult-inverse_binary64_12672 remove-double-div_binary64_12671 difference-of-sqr--1_binary64_12666 difference-of-sqr-1_binary64_12665 distribute-neg-frac_binary64_12659 distribute-frac-neg_binary64_12658 distribute-rgt1-in_binary64_12651 distribute-lft1-in_binary64_12650 count-2_binary64_12643 associate-/r/_binary64_12641 associate-/l*_binary64_12640 associate-/r*_binary64_12639 associate-*l/_binary64_12638 associate--r-_binary64_12634
Counts
165 → 229
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01212363
13542195
212142186
342442186

prune204.0ms (1.8%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New2290229
Fresh033
Picked011
Done011
Total2295234
Error
0.0b
Counts
234 → 5
Compiler

Compiled 5393 to 594 computations (89% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 (+.f64 x (*.f64 y z)) (+.f64 (*.f64 t a) (*.f64 z (*.f64 a b))))
0.0b
(+.f64 (*.f64 t a) (*.f64 z (*.f64 a b)))
4.1b
(*.f64 z (*.f64 a b))

rewrite80.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
17×add-log-exp_binary64_12734
sum-log_binary64_12786
pow1_binary64_12756 add-exp-log_binary64_12733 add-cbrt-cube_binary64_12731
*-un-lft-identity_binary64_12695 flip3-+_binary64_12698 flip-+_binary64_12669
add-cube-cbrt_binary64_12730 add-sqr-sqrt_binary64_12717 frac-add_binary64_12703
pow-prod-down_binary64_12766 prod-exp_binary64_12744 cbrt-unprod_binary64_12728 associate-*l*_binary64_12636
+-commutative_binary64_12625
associate-*r*_binary64_12635 *-commutative_binary64_12626 distribute-lft-out_binary64_12646 associate-+l+_binary64_12628 associate-+r+_binary64_12627
Counts
3 → 50
Calls

3 calls:

10.0ms
(+.f64 (+.f64 x (*.f64 y z)) (+.f64 (*.f64 t a) (*.f64 z (*.f64 a b))))
5.0ms
(*.f64 z (*.f64 a b))
4.0ms
(+.f64 (*.f64 t a) (*.f64 z (*.f64 a b)))
Compiler

Compiled 1465 to 242 computations (83.5% saved)

series1.0s (9.3%)

Error
0.0b
Counts
3 → 66
Calls

3 calls:

575.0ms
(+.f64 (+.f64 x (*.f64 y z)) (+.f64 (*.f64 t a) (*.f64 z (*.f64 a b))))
267.0ms
(+.f64 (*.f64 t a) (*.f64 z (*.f64 a b)))
158.0ms
(*.f64 z (*.f64 a b))
Compiler

Compiled 2131 to 1297 computations (39.1% saved)

simplify321.0ms (2.9%)

Algorithm
egg-herbie
Rules
351×associate-+l+_binary64_12628
304×associate-+r+_binary64_12627
270×sub-neg_binary64_12688
265×cancel-sign-sub-inv_binary64_12661
214×associate-*r*_binary64_12635
204×associate-*l*_binary64_12636
192×unsub-neg_binary64_12689
173×neg-mul-1_binary64_12691 neg-sub0_binary64_12690
168×distribute-rgt-neg-in_binary64_12653
157×+-commutative_binary64_12625
152×distribute-rgt-out_binary64_12648
138×distribute-rgt-in_binary64_12645
137×distribute-lft-neg-in_binary64_12652
125×distribute-lft-in_binary64_12644
79×*-commutative_binary64_12626
65×associate--r+_binary64_12631
57×distribute-lft-neg-out_binary64_12654
53×sqr-pow_binary64_12667
52×distribute-rgt-out--_binary64_12649
45×distribute-lft-out_binary64_12646
44×associate--l+_binary64_12632
31×unswap-sqr_binary64_12663
30×associate-+r-_binary64_12629
29×distribute-rgt-neg-out_binary64_12655
28×distribute-neg-in_binary64_12656
26×associate-+l-_binary64_12630
24×exp-sum_binary64_12741
20×exp-prod_binary64_12747 pow-sqr_binary64_12668
18×distribute-lft-out--_binary64_12647
17×swap-sqr_binary64_12662
15×cube-prod_binary64_12723
14×unpow3_binary64_12761
12×prod-exp_binary64_12744
11×cube-mult_binary64_12725
10×log-prod_binary64_12781
difference-of-squares_binary64_12664
cube-unmult_binary64_12732 associate-/l*_binary64_12640
associate-/l/_binary64_12642 associate-*r/_binary64_12637
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_12958 erf-erfc_binary64_12957 erf-odd_binary64_12956 if-if-and-not_binary64_12955 if-if-and_binary64_12954 if-if-or-not_binary64_12953 if-if-or_binary64_12952 if-not_binary64_12951 if-same_binary64_12950 if-false_binary64_12949 if-true_binary64_12948 not-gte_binary64_12947 not-lte_binary64_12946 not-gt_binary64_12945 not-lt_binary64_12944 gte-same_binary64_12943 lte-same_binary64_12942 gt-same_binary64_12941 lt-same_binary64_12940 sinh---cosh_binary64_12887 sinh-+-cosh_binary64_12886 sinh-cosh_binary64_12885 tanh-def-c_binary64_12884 tanh-def-b_binary64_12883 tanh-def-a_binary64_12882 cosh-def_binary64_12881 sinh-def_binary64_12880 tan-neg_binary64_12827 cos-neg_binary64_12826 sin-neg_binary64_12825 tan-0_binary64_12824 cos-0_binary64_12823 sin-0_binary64_12822 hang-m-tan_binary64_12821 hang-p-tan_binary64_12820 hang-m0-tan_binary64_12819 hang-p0-tan_binary64_12818 hang-0m-tan_binary64_12817 hang-0p-tan_binary64_12816 tan-+PI/2_binary64_12815 tan-+PI_binary64_12814 tan-PI_binary64_12813 tan-PI/3_binary64_12812 tan-PI/4_binary64_12811 tan-PI/6_binary64_12810 cos-+PI/2_binary64_12809 cos-+PI_binary64_12808 cos-PI_binary64_12807 cos-PI/2_binary64_12806 cos-PI/3_binary64_12805 cos-PI/4_binary64_12804 cos-PI/6_binary64_12803 sin-+PI/2_binary64_12802 sin-+PI_binary64_12801 sin-PI_binary64_12800 sin-PI/2_binary64_12799 sin-PI/3_binary64_12798 sin-PI/4_binary64_12797 sin-PI/6_binary64_12796 sub-1-sin_binary64_12795 sub-1-cos_binary64_12794 -1-add-sin_binary64_12793 -1-add-cos_binary64_12792 1-sub-sin_binary64_12791 1-sub-cos_binary64_12790 cos-sin-sum_binary64_12789 log-E_binary64_12785 log-pow_binary64_12784 log-rec_binary64_12783 log-div_binary64_12782 pow-base-0_binary64_12779 unpow1/3_binary64_12762 unpow2_binary64_12760 unpow1/2_binary64_12759 pow-plus_binary64_12758 exp-to-pow_binary64_12757 pow-base-1_binary64_12755 unpow0_binary64_12754 unpow1_binary64_12753 unpow-1_binary64_12752 exp-lft-cube_binary64_12751 exp-lft-sqr_binary64_12750 exp-cbrt_binary64_12749 exp-sqrt_binary64_12748 div-exp_binary64_12746 rec-exp_binary64_12745 exp-diff_binary64_12743 exp-neg_binary64_12742 e-exp-1_binary64_12740 1-exp_binary64_12739 exp-1-e_binary64_12738 exp-0_binary64_12737 rem-log-exp_binary64_12736 rem-exp-log_binary64_12735 cube-div_binary64_12724 cube-neg_binary64_12722 rem-3cbrt-rft_binary64_12721 rem-3cbrt-lft_binary64_12720 rem-cbrt-cube_binary64_12719 rem-cube-cbrt_binary64_12718 sqr-abs_binary64_12710 sqr-neg_binary64_12709 rem-sqrt-square_binary64_12708 rem-square-sqrt_binary64_12707 times-frac_binary64_12701 div-sub_binary64_12700 mul-1-neg_binary64_12687 /-rgt-identity_binary64_12686 *-rgt-identity_binary64_12685 *-lft-identity_binary64_12684 remove-double-neg_binary64_12683 sub0-neg_binary64_12682 --rgt-identity_binary64_12681 +-rgt-identity_binary64_12680 +-lft-identity_binary64_12679 mul0-rgt_binary64_12678 mul0-lft_binary64_12677 div0_binary64_12676 *-inverses_binary64_12675 +-inverses_binary64_12674 lft-mult-inverse_binary64_12673 rgt-mult-inverse_binary64_12672 remove-double-div_binary64_12671 difference-of-sqr--1_binary64_12666 difference-of-sqr-1_binary64_12665 cancel-sign-sub_binary64_12660 distribute-neg-frac_binary64_12659 distribute-frac-neg_binary64_12658 distribute-neg-out_binary64_12657 distribute-rgt1-in_binary64_12651 distribute-lft1-in_binary64_12650 count-2_binary64_12643 associate-/r/_binary64_12641 associate-/r*_binary64_12639 associate-*l/_binary64_12638 associate--r-_binary64_12634 associate--l-_binary64_12633
Counts
116 → 236
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01392026
14361942
218771885
345071885

prune284.0ms (2.6%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New2360236
Fresh022
Picked011
Done022
Total2365241
Error
0.0b
Counts
241 → 5
Compiler

Compiled 8100 to 980 computations (87.9% saved)

localize12.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a))
0.0b
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b))
5.3b
(*.f64 (*.f64 a z) b)

rewrite66.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
17×add-log-exp_binary64_12734
sum-log_binary64_12786
pow1_binary64_12756 add-exp-log_binary64_12733 add-cbrt-cube_binary64_12731
add-cube-cbrt_binary64_12730 add-sqr-sqrt_binary64_12717 *-un-lft-identity_binary64_12695
pow-prod-down_binary64_12766 prod-exp_binary64_12744 cbrt-unprod_binary64_12728 associate-*r*_binary64_12635
flip3-+_binary64_12698 flip-+_binary64_12669 associate-+l+_binary64_12628 +-commutative_binary64_12625
associate-*l*_binary64_12636 *-commutative_binary64_12626
Counts
3 → 45
Calls

3 calls:

9.0ms
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b))
6.0ms
(+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a))
5.0ms
(*.f64 (*.f64 a z) b)
Compiler

Compiled 1084 to 178 computations (83.6% saved)

series1.1s (10%)

Error
0.0b
Counts
3 → 75
Calls

3 calls:

592.0ms
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b))
315.0ms
(+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a))
156.0ms
(*.f64 (*.f64 a z) b)
Compiler

Compiled 2388 to 1444 computations (39.5% saved)

simplify217.0ms (1.9%)

Algorithm
egg-herbie
Rules
875×distribute-rgt-in_binary64_12645
843×distribute-lft-in_binary64_12644
340×associate-+l+_binary64_12628
170×cancel-sign-sub-inv_binary64_12661
152×associate-*l*_binary64_12636
124×associate-*r*_binary64_12635
105×distribute-rgt-neg-in_binary64_12653
85×distribute-lft-neg-in_binary64_12652
69×associate--r+_binary64_12631
54×associate--l+_binary64_12632
50×*-commutative_binary64_12626
43×sub-neg_binary64_12688 sqr-pow_binary64_12667
37×distribute-rgt-out_binary64_12648
32×+-commutative_binary64_12625
29×exp-prod_binary64_12747 neg-mul-1_binary64_12691 neg-sub0_binary64_12690
26×distribute-neg-in_binary64_12656 associate-+r-_binary64_12629
24×associate-+r+_binary64_12627
23×distribute-lft-out_binary64_12646
22×cube-prod_binary64_12723
21×distribute-rgt-out--_binary64_12649
20×log-prod_binary64_12781 unswap-sqr_binary64_12663 distribute-lft-neg-out_binary64_12654
17×swap-sqr_binary64_12662
16×associate-+l-_binary64_12630
15×pow-sqr_binary64_12668
14×prod-exp_binary64_12744 unsub-neg_binary64_12689
11×distribute-lft-out--_binary64_12647
10×unpow3_binary64_12761
*-rgt-identity_binary64_12685
exp-sum_binary64_12741
cube-mult_binary64_12725 *-lft-identity_binary64_12684
cube-unmult_binary64_12732 difference-of-squares_binary64_12664 distribute-rgt-neg-out_binary64_12655 associate-/l*_binary64_12640
pow-base-1_binary64_12755 1-exp_binary64_12739 exp-1-e_binary64_12738 rem-log-exp_binary64_12736 associate-/l/_binary64_12642 associate-*r/_binary64_12637
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_12958 erf-erfc_binary64_12957 erf-odd_binary64_12956 if-if-and-not_binary64_12955 if-if-and_binary64_12954 if-if-or-not_binary64_12953 if-if-or_binary64_12952 if-not_binary64_12951 if-same_binary64_12950 if-false_binary64_12949 if-true_binary64_12948 not-gte_binary64_12947 not-lte_binary64_12946 not-gt_binary64_12945 not-lt_binary64_12944 gte-same_binary64_12943 lte-same_binary64_12942 gt-same_binary64_12941 lt-same_binary64_12940 sinh---cosh_binary64_12887 sinh-+-cosh_binary64_12886 sinh-cosh_binary64_12885 tanh-def-c_binary64_12884 tanh-def-b_binary64_12883 tanh-def-a_binary64_12882 cosh-def_binary64_12881 sinh-def_binary64_12880 tan-neg_binary64_12827 cos-neg_binary64_12826 sin-neg_binary64_12825 tan-0_binary64_12824 cos-0_binary64_12823 sin-0_binary64_12822 hang-m-tan_binary64_12821 hang-p-tan_binary64_12820 hang-m0-tan_binary64_12819 hang-p0-tan_binary64_12818 hang-0m-tan_binary64_12817 hang-0p-tan_binary64_12816 tan-+PI/2_binary64_12815 tan-+PI_binary64_12814 tan-PI_binary64_12813 tan-PI/3_binary64_12812 tan-PI/4_binary64_12811 tan-PI/6_binary64_12810 cos-+PI/2_binary64_12809 cos-+PI_binary64_12808 cos-PI_binary64_12807 cos-PI/2_binary64_12806 cos-PI/3_binary64_12805 cos-PI/4_binary64_12804 cos-PI/6_binary64_12803 sin-+PI/2_binary64_12802 sin-+PI_binary64_12801 sin-PI_binary64_12800 sin-PI/2_binary64_12799 sin-PI/3_binary64_12798 sin-PI/4_binary64_12797 sin-PI/6_binary64_12796 sub-1-sin_binary64_12795 sub-1-cos_binary64_12794 -1-add-sin_binary64_12793 -1-add-cos_binary64_12792 1-sub-sin_binary64_12791 1-sub-cos_binary64_12790 cos-sin-sum_binary64_12789 log-E_binary64_12785 log-pow_binary64_12784 log-rec_binary64_12783 log-div_binary64_12782 pow-base-0_binary64_12779 unpow1/3_binary64_12762 unpow2_binary64_12760 unpow1/2_binary64_12759 pow-plus_binary64_12758 exp-to-pow_binary64_12757 unpow0_binary64_12754 unpow1_binary64_12753 unpow-1_binary64_12752 exp-lft-cube_binary64_12751 exp-lft-sqr_binary64_12750 exp-cbrt_binary64_12749 exp-sqrt_binary64_12748 div-exp_binary64_12746 rec-exp_binary64_12745 exp-diff_binary64_12743 exp-neg_binary64_12742 e-exp-1_binary64_12740 exp-0_binary64_12737 rem-exp-log_binary64_12735 cube-div_binary64_12724 cube-neg_binary64_12722 rem-3cbrt-rft_binary64_12721 rem-3cbrt-lft_binary64_12720 rem-cbrt-cube_binary64_12719 rem-cube-cbrt_binary64_12718 sqr-abs_binary64_12710 sqr-neg_binary64_12709 rem-sqrt-square_binary64_12708 rem-square-sqrt_binary64_12707 times-frac_binary64_12701 div-sub_binary64_12700 mul-1-neg_binary64_12687 /-rgt-identity_binary64_12686 remove-double-neg_binary64_12683 sub0-neg_binary64_12682 --rgt-identity_binary64_12681 +-rgt-identity_binary64_12680 +-lft-identity_binary64_12679 mul0-rgt_binary64_12678 mul0-lft_binary64_12677 div0_binary64_12676 *-inverses_binary64_12675 +-inverses_binary64_12674 lft-mult-inverse_binary64_12673 rgt-mult-inverse_binary64_12672 remove-double-div_binary64_12671 difference-of-sqr--1_binary64_12666 difference-of-sqr-1_binary64_12665 cancel-sign-sub_binary64_12660 distribute-neg-frac_binary64_12659 distribute-frac-neg_binary64_12658 distribute-neg-out_binary64_12657 distribute-rgt1-in_binary64_12651 distribute-lft1-in_binary64_12650 count-2_binary64_12643 associate-/r/_binary64_12641 associate-/r*_binary64_12639 associate-*l/_binary64_12638 associate--r-_binary64_12634 associate--l-_binary64_12633
Counts
120 → 272
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01141677
13041623
212491611

prune234.0ms (2.1%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New2720272
Fresh011
Picked011
Done033
Total2725277
Error
0.0b
Counts
277 → 5
Compiler

Compiled 6440 to 533 computations (91.7% saved)

regimes751.0ms (6.7%)

Accuracy

Total 0.4b remaining (96.2%)

Threshold costs 0.4b (96.2%)

Compiler

Compiled 3794 to 3948 computations (-4.1% saved)

bsearch63.0ms (0.6%)

Steps
ItersRangePoint
8
1.550903754800832e+110
5.016648418085036e+112
6.70947441644599e+110
7
-1.2394062634321079e-54
-8.954888077731496e-57
-1.2211996473497586e-54
Compiler

Compiled 1 to 6 computations (-500% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_12626 +-commutative_binary64_12625
if-if-or-not_binary64_12953
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_12955 if-if-and_binary64_12954 if-if-or_binary64_12952 if-not_binary64_12951 if-same_binary64_12950 if-false_binary64_12949 if-true_binary64_12948 tan-0_binary64_12824 cos-0_binary64_12823 sin-0_binary64_12822 unpow1_binary64_12753 e-exp-1_binary64_12740 1-exp_binary64_12739 exp-1-e_binary64_12738 exp-0_binary64_12737 sqr-abs_binary64_12710 sqr-neg_binary64_12709 neg-mul-1_binary64_12691 neg-sub0_binary64_12690 unsub-neg_binary64_12689 sub-neg_binary64_12688 mul-1-neg_binary64_12687 /-rgt-identity_binary64_12686 *-rgt-identity_binary64_12685 *-lft-identity_binary64_12684 remove-double-neg_binary64_12683 sub0-neg_binary64_12682 --rgt-identity_binary64_12681 +-rgt-identity_binary64_12680 +-lft-identity_binary64_12679 cancel-sign-sub-inv_binary64_12661 cancel-sign-sub_binary64_12660 distribute-neg-frac_binary64_12659 distribute-frac-neg_binary64_12658 distribute-neg-out_binary64_12657 distribute-neg-in_binary64_12656 distribute-rgt-neg-out_binary64_12655 distribute-lft-neg-out_binary64_12654 distribute-rgt-neg-in_binary64_12653 distribute-lft-neg-in_binary64_12652
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02758
14158
Proof
(=> (if real (<= f64 h0 -8428410204798121/6901746346790563787434755862277025452451108972170386555162524223799296) (+ f64 (+ f64 h1 (* f64 h2 h0)) (+ f64 (* f64 h3 h4) (* f64 h0 (* f64 h4 h5)))) (if real (<= f64 h0 670947441644598955821821362212835055217387256407669363260213991925970377350501075354506903983073848390024429568) (+ f64 (* f64 h4 (* f64 h0 h5)) (+ f64 h1 (+ f64 (* f64 h0 h2) (* f64 h3 h4)))) (+ f64 (+ f64 h1 (* f64 h2 h0)) (+ f64 (* f64 h3 h4) (* f64 h0 (* f64 h4 h5))))))) if-if-or-not_binary64_12953 => (if real (or real (<= f64 h0 -8428410204798121/6901746346790563787434755862277025452451108972170386555162524223799296) (not real (<= f64 h0 670947441644598955821821362212835055217387256407669363260213991925970377350501075354506903983073848390024429568))) (+ f64 (+ f64 h1 (* f64 h2 h0)) (+ f64 (* f64 h3 h4) (* f64 h0 (* f64 h4 h5)))) (+ f64 (* f64 h4 (* f64 h0 h5)) (+ f64 h1 (+ f64 (* f64 h0 h2) (* f64 h3 h4))))) <= *-commutative_binary64_12626 (if real (or real (<= f64 h0 -8428410204798121/6901746346790563787434755862277025452451108972170386555162524223799296) (not real (<= f64 h0 670947441644598955821821362212835055217387256407669363260213991925970377350501075354506903983073848390024429568))) (+ f64 (+ f64 h1 (<= (* f64 h0 h2))) (+ f64 (* f64 h3 h4) (* f64 h0 (* f64 h4 h5)))) (+ f64 (* f64 h4 (* f64 h0 h5)) (+ f64 h1 (+ f64 (* f64 h0 h2) (* f64 h3 h4)))))

end0.0ms (0%)

sample1.7s (15.2%)

Algorithm
intervals
Results
357.0ms8000×body128valid
163.0ms3781×body128invalid
Compiler

Compiled 638 to 619 computations (3% saved)

Profiling

Loading profile data...