Details

Time bar (total: 2.9s)

analyze800.0ms (27.3%)

Algorithm
search
egg-herbie
Rules
1207×unsub-neg_binary64_13712
741×sub-neg_binary64_13711
455×+-commutative_binary64_13648
402×neg-sub0_binary64_13713
400×*-commutative_binary64_13649
391×distribute-neg-in_binary64_13679
382×neg-mul-1_binary64_13714
376×distribute-rgt-neg-in_binary64_13676
311×distribute-neg-out_binary64_13680
305×cancel-sign-sub_binary64_13683 associate--r-_binary64_13657
295×distribute-rgt-out--_binary64_13672
282×distribute-lft-neg-out_binary64_13677
219×distribute-lft-neg-in_binary64_13675
205×associate--l-_binary64_13656
192×distribute-lft-out_binary64_13669
165×distribute-rgt-neg-out_binary64_13678
164×associate-*r*_binary64_13658
155×remove-double-neg_binary64_13706
149×associate-*l*_binary64_13659
147×distribute-lft-out--_binary64_13670
134×distribute-rgt-out_binary64_13671
117×associate-+r+_binary64_13650
115×associate-+l-_binary64_13653
114×cancel-sign-sub-inv_binary64_13684
106×distribute-rgt-in_binary64_13668
87×associate--l+_binary64_13655
83×associate-+l+_binary64_13651
81×associate-+r-_binary64_13652
72×associate--r+_binary64_13654
68×distribute-lft-in_binary64_13667
53×*-rgt-identity_binary64_13708
50×sub0-neg_binary64_13705
28×+-rgt-identity_binary64_13703
24×mul0-rgt_binary64_13701 mul0-lft_binary64_13700
23×difference-of-squares_binary64_13687
22×mul-1-neg_binary64_13710
18×--rgt-identity_binary64_13704
17×*-lft-identity_binary64_13707
10×distribute-rgt1-in_binary64_13674
+-inverses_binary64_13697
sqr-neg_binary64_13732
+-lft-identity_binary64_13702
swap-sqr_binary64_13685 distribute-lft1-in_binary64_13673
1-exp_binary64_13762
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_13981 erf-erfc_binary64_13980 erf-odd_binary64_13979 if-if-and-not_binary64_13978 if-if-and_binary64_13977 if-if-or-not_binary64_13976 if-if-or_binary64_13975 if-not_binary64_13974 if-same_binary64_13973 if-false_binary64_13972 if-true_binary64_13971 not-gte_binary64_13970 not-lte_binary64_13969 not-gt_binary64_13968 not-lt_binary64_13967 gte-same_binary64_13966 lte-same_binary64_13965 gt-same_binary64_13964 lt-same_binary64_13963 sinh---cosh_binary64_13910 sinh-+-cosh_binary64_13909 sinh-cosh_binary64_13908 tanh-def-c_binary64_13907 tanh-def-b_binary64_13906 tanh-def-a_binary64_13905 cosh-def_binary64_13904 sinh-def_binary64_13903 tan-neg_binary64_13850 cos-neg_binary64_13849 sin-neg_binary64_13848 tan-0_binary64_13847 cos-0_binary64_13846 sin-0_binary64_13845 hang-m-tan_binary64_13844 hang-p-tan_binary64_13843 hang-m0-tan_binary64_13842 hang-p0-tan_binary64_13841 hang-0m-tan_binary64_13840 hang-0p-tan_binary64_13839 tan-+PI/2_binary64_13838 tan-+PI_binary64_13837 tan-PI_binary64_13836 tan-PI/3_binary64_13835 tan-PI/4_binary64_13834 tan-PI/6_binary64_13833 cos-+PI/2_binary64_13832 cos-+PI_binary64_13831 cos-PI_binary64_13830 cos-PI/2_binary64_13829 cos-PI/3_binary64_13828 cos-PI/4_binary64_13827 cos-PI/6_binary64_13826 sin-+PI/2_binary64_13825 sin-+PI_binary64_13824 sin-PI_binary64_13823 sin-PI/2_binary64_13822 sin-PI/3_binary64_13821 sin-PI/4_binary64_13820 sin-PI/6_binary64_13819 sub-1-sin_binary64_13818 sub-1-cos_binary64_13817 -1-add-sin_binary64_13816 -1-add-cos_binary64_13815 1-sub-sin_binary64_13814 1-sub-cos_binary64_13813 cos-sin-sum_binary64_13812 log-E_binary64_13808 log-pow_binary64_13807 log-rec_binary64_13806 log-div_binary64_13805 log-prod_binary64_13804 pow-base-0_binary64_13802 unpow1/3_binary64_13785 unpow3_binary64_13784 unpow2_binary64_13783 unpow1/2_binary64_13782 pow-plus_binary64_13781 exp-to-pow_binary64_13780 pow-base-1_binary64_13778 unpow0_binary64_13777 unpow1_binary64_13776 unpow-1_binary64_13775 exp-lft-cube_binary64_13774 exp-lft-sqr_binary64_13773 exp-cbrt_binary64_13772 exp-sqrt_binary64_13771 exp-prod_binary64_13770 div-exp_binary64_13769 rec-exp_binary64_13768 prod-exp_binary64_13767 exp-diff_binary64_13766 exp-neg_binary64_13765 exp-sum_binary64_13764 e-exp-1_binary64_13763 exp-1-e_binary64_13761 exp-0_binary64_13760 rem-log-exp_binary64_13759 rem-exp-log_binary64_13758 cube-unmult_binary64_13755 cube-mult_binary64_13748 cube-div_binary64_13747 cube-prod_binary64_13746 cube-neg_binary64_13745 rem-3cbrt-rft_binary64_13744 rem-3cbrt-lft_binary64_13743 rem-cbrt-cube_binary64_13742 rem-cube-cbrt_binary64_13741 sqr-abs_binary64_13733 rem-sqrt-square_binary64_13731 rem-square-sqrt_binary64_13730 times-frac_binary64_13724 div-sub_binary64_13723 /-rgt-identity_binary64_13709 div0_binary64_13699 *-inverses_binary64_13698 lft-mult-inverse_binary64_13696 rgt-mult-inverse_binary64_13695 remove-double-div_binary64_13694 pow-sqr_binary64_13691 sqr-pow_binary64_13690 difference-of-sqr--1_binary64_13689 difference-of-sqr-1_binary64_13688 unswap-sqr_binary64_13686 distribute-neg-frac_binary64_13682 distribute-frac-neg_binary64_13681 count-2_binary64_13666 associate-/l/_binary64_13665 associate-/r/_binary64_13664 associate-/l*_binary64_13663 associate-/r*_binary64_13662 associate-*l/_binary64_13661 associate-*r/_binary64_13660
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02470
18358
223952
362628
4113528
5229928
6294128
7378128
8412128
9401128
10401128
11416828
12493428
13496928
033
133
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
12.5%87.4%0.1%7
18.7%81.1%0.1%8
34.3%65.5%0.1%9
39%60.8%0.1%10
41.3%58.5%0.1%11
52.7%47.2%0.1%12
54%45.7%0.2%13
55.3%43.8%0.9%14
Compiler

Compiled 16 to 10 computations (37.5% saved)

sample29.0ms (1%)

Algorithm
intervals
Results
6.0ms183×body128valid
3.0ms25×body1024valid
3.0ms18×body2048valid
2.0ms24×body512valid
1.0ms39×body128invalid
1.0msbody512invalid
0.0msbody1024invalid
0.0msbody256valid
0.0msbody256invalid
Compiler

Compiled 31 to 22 computations (29% saved)

simplify185.0ms (6.3%)

Algorithm
egg-herbie
Rules
1285×distribute-lft-out_binary64_13669
1036×distribute-lft-out--_binary64_13670
866×unsub-neg_binary64_13712
599×*-commutative_binary64_13649
503×sub-neg_binary64_13711
468×associate--l-_binary64_13656
426×+-commutative_binary64_13648
322×distribute-neg-out_binary64_13680
303×distribute-rgt-out_binary64_13671
298×distribute-rgt-out--_binary64_13672
280×distribute-rgt-in_binary64_13668
199×neg-sub0_binary64_13713
167×distribute-rgt-neg-in_binary64_13676
150×distribute-lft-in_binary64_13667
136×distribute-lft-neg-out_binary64_13677
134×distribute-neg-in_binary64_13679
133×cancel-sign-sub-inv_binary64_13684
128×neg-mul-1_binary64_13714
122×cancel-sign-sub_binary64_13683 distribute-lft-neg-in_binary64_13675
114×associate-*l*_binary64_13659
109×associate-*r*_binary64_13658
86×associate--r+_binary64_13654
84×associate-+l-_binary64_13653
71×associate--r-_binary64_13657
69×associate--l+_binary64_13655
67×associate-+r+_binary64_13650
61×distribute-rgt-neg-out_binary64_13678
58×associate-+l+_binary64_13651
43×associate-+r-_binary64_13652
33×mul0-lft_binary64_13700
32×mul0-rgt_binary64_13701
31×sub0-neg_binary64_13705
29×*-rgt-identity_binary64_13708
25×remove-double-neg_binary64_13706
18×*-lft-identity_binary64_13707
16×distribute-rgt1-in_binary64_13674
12×+-rgt-identity_binary64_13703
distribute-lft1-in_binary64_13673
--rgt-identity_binary64_13704
mul-1-neg_binary64_13710
+-lft-identity_binary64_13702
+-inverses_binary64_13697
1-exp_binary64_13762 sqr-neg_binary64_13732 difference-of-squares_binary64_13687 swap-sqr_binary64_13685
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_13981 erf-erfc_binary64_13980 erf-odd_binary64_13979 if-if-and-not_binary64_13978 if-if-and_binary64_13977 if-if-or-not_binary64_13976 if-if-or_binary64_13975 if-not_binary64_13974 if-same_binary64_13973 if-false_binary64_13972 if-true_binary64_13971 not-gte_binary64_13970 not-lte_binary64_13969 not-gt_binary64_13968 not-lt_binary64_13967 gte-same_binary64_13966 lte-same_binary64_13965 gt-same_binary64_13964 lt-same_binary64_13963 sinh---cosh_binary64_13910 sinh-+-cosh_binary64_13909 sinh-cosh_binary64_13908 tanh-def-c_binary64_13907 tanh-def-b_binary64_13906 tanh-def-a_binary64_13905 cosh-def_binary64_13904 sinh-def_binary64_13903 tan-neg_binary64_13850 cos-neg_binary64_13849 sin-neg_binary64_13848 tan-0_binary64_13847 cos-0_binary64_13846 sin-0_binary64_13845 hang-m-tan_binary64_13844 hang-p-tan_binary64_13843 hang-m0-tan_binary64_13842 hang-p0-tan_binary64_13841 hang-0m-tan_binary64_13840 hang-0p-tan_binary64_13839 tan-+PI/2_binary64_13838 tan-+PI_binary64_13837 tan-PI_binary64_13836 tan-PI/3_binary64_13835 tan-PI/4_binary64_13834 tan-PI/6_binary64_13833 cos-+PI/2_binary64_13832 cos-+PI_binary64_13831 cos-PI_binary64_13830 cos-PI/2_binary64_13829 cos-PI/3_binary64_13828 cos-PI/4_binary64_13827 cos-PI/6_binary64_13826 sin-+PI/2_binary64_13825 sin-+PI_binary64_13824 sin-PI_binary64_13823 sin-PI/2_binary64_13822 sin-PI/3_binary64_13821 sin-PI/4_binary64_13820 sin-PI/6_binary64_13819 sub-1-sin_binary64_13818 sub-1-cos_binary64_13817 -1-add-sin_binary64_13816 -1-add-cos_binary64_13815 1-sub-sin_binary64_13814 1-sub-cos_binary64_13813 cos-sin-sum_binary64_13812 log-E_binary64_13808 log-pow_binary64_13807 log-rec_binary64_13806 log-div_binary64_13805 log-prod_binary64_13804 pow-base-0_binary64_13802 unpow1/3_binary64_13785 unpow3_binary64_13784 unpow2_binary64_13783 unpow1/2_binary64_13782 pow-plus_binary64_13781 exp-to-pow_binary64_13780 pow-base-1_binary64_13778 unpow0_binary64_13777 unpow1_binary64_13776 unpow-1_binary64_13775 exp-lft-cube_binary64_13774 exp-lft-sqr_binary64_13773 exp-cbrt_binary64_13772 exp-sqrt_binary64_13771 exp-prod_binary64_13770 div-exp_binary64_13769 rec-exp_binary64_13768 prod-exp_binary64_13767 exp-diff_binary64_13766 exp-neg_binary64_13765 exp-sum_binary64_13764 e-exp-1_binary64_13763 exp-1-e_binary64_13761 exp-0_binary64_13760 rem-log-exp_binary64_13759 rem-exp-log_binary64_13758 cube-unmult_binary64_13755 cube-mult_binary64_13748 cube-div_binary64_13747 cube-prod_binary64_13746 cube-neg_binary64_13745 rem-3cbrt-rft_binary64_13744 rem-3cbrt-lft_binary64_13743 rem-cbrt-cube_binary64_13742 rem-cube-cbrt_binary64_13741 sqr-abs_binary64_13733 rem-sqrt-square_binary64_13731 rem-square-sqrt_binary64_13730 times-frac_binary64_13724 div-sub_binary64_13723 /-rgt-identity_binary64_13709 div0_binary64_13699 *-inverses_binary64_13698 lft-mult-inverse_binary64_13696 rgt-mult-inverse_binary64_13695 remove-double-div_binary64_13694 pow-sqr_binary64_13691 sqr-pow_binary64_13690 difference-of-sqr--1_binary64_13689 difference-of-sqr-1_binary64_13688 unswap-sqr_binary64_13686 distribute-neg-frac_binary64_13682 distribute-frac-neg_binary64_13681 count-2_binary64_13666 associate-/l/_binary64_13665 associate-/r/_binary64_13664 associate-/l*_binary64_13663 associate-/r*_binary64_13662 associate-*l/_binary64_13661 associate-*r/_binary64_13660
Counts
1 → 1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01019
12816
27213
31827
43557
510477
613867
713567
818207
917847
1018747
1120267
1227607
1329107
1431527
1532887
1633387
1733387
1833887
1934387
2057957

prune4.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112
Error
0.0b
Counts
2 → 1
Compiler

Compiled 10 to 10 computations (0% saved)

localize8.0ms (0.3%)

Local error

Found 1 expressions with local error:

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

rewrite30.0ms (1%)

Algorithm
rewrite-expression-head
Error
0b
Rules
add-sqr-sqrt_binary64_13740
*-un-lft-identity_binary64_13718
cancel-sign-sub-inv_binary64_13684
add-cube-cbrt_binary64_13753 associate-*r*_binary64_13658
distribute-rgt-in_binary64_13668 distribute-lft-in_binary64_13667
pow1_binary64_13779 add-exp-log_binary64_13756 add-cbrt-cube_binary64_13754 associate-*l*_binary64_13659
sub-neg_binary64_13711 associate-*r/_binary64_13660
pow-prod-down_binary64_13789 prod-exp_binary64_13767 add-log-exp_binary64_13757 cbrt-unprod_binary64_13751 unswap-sqr_binary64_13686 flip3--_binary64_13722 flip--_binary64_13693 difference-of-squares_binary64_13687 distribute-lft-out--_binary64_13670 *-commutative_binary64_13649
Counts
1 → 30
Calls

1 calls:

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

Compiled 338 to 111 computations (67.2% saved)

series351.0ms (12%)

Error
0.0b
Counts
1 → 15
Calls

1 calls:

344.0ms
(*.f64 y (-.f64 x z))
Compiler

Compiled 219 to 146 computations (33.3% saved)

simplify60.0ms (2%)

Algorithm
egg-herbie
Rules
620×distribute-neg-out_binary64_13680
402×neg-sub0_binary64_13713
392×associate-*l*_binary64_13659
385×neg-mul-1_binary64_13714
336×associate-*r*_binary64_13658
229×unswap-sqr_binary64_13686
222×distribute-rgt-neg-out_binary64_13678
208×distribute-lft-neg-out_binary64_13677
177×sqr-pow_binary64_13690
161×distribute-rgt-in_binary64_13668
158×exp-prod_binary64_13770
157×distribute-lft-in_binary64_13667
86×associate-+r+_binary64_13650
82×unsub-neg_binary64_13712
76×cancel-sign-sub-inv_binary64_13684 *-commutative_binary64_13649
69×associate-+l+_binary64_13651
62×+-commutative_binary64_13648
54×sub-neg_binary64_13711
53×swap-sqr_binary64_13685
46×exp-sum_binary64_13764 *-rgt-identity_binary64_13708 *-lft-identity_binary64_13707
34×pow-sqr_binary64_13691
26×distribute-lft-neg-in_binary64_13675 distribute-rgt-out_binary64_13671
24×times-frac_binary64_13724
23×div-sub_binary64_13723
22×exp-diff_binary64_13766 distribute-lft-out_binary64_13669
20×distribute-rgt-neg-in_binary64_13676
17×difference-of-squares_binary64_13687
16×cube-prod_binary64_13746
14×+-rgt-identity_binary64_13703 mul0-rgt_binary64_13701 mul0-lft_binary64_13700
12×sub0-neg_binary64_13705
11×sqr-neg_binary64_13732 +-lft-identity_binary64_13702
10×cube-unmult_binary64_13755 mul-1-neg_binary64_13710
log-prod_binary64_13804 distribute-frac-neg_binary64_13681 associate-+l-_binary64_13653
associate-/l*_binary64_13663 associate-+r-_binary64_13652
unpow3_binary64_13784 remove-double-neg_binary64_13706
unpow1/2_binary64_13782
pow-plus_binary64_13781 rem-sqrt-square_binary64_13731 distribute-neg-frac_binary64_13682 distribute-rgt-out--_binary64_13672
exp-neg_binary64_13765 --rgt-identity_binary64_13704
cube-mult_binary64_13748 cube-neg_binary64_13745 associate-*r/_binary64_13660 associate--r+_binary64_13654
1-exp_binary64_13762 exp-1-e_binary64_13761 rem-3cbrt-lft_binary64_13743 rem-square-sqrt_binary64_13730 cancel-sign-sub_binary64_13683 count-2_binary64_13666 associate-/l/_binary64_13665 associate-*l/_binary64_13661
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_13981 erf-erfc_binary64_13980 erf-odd_binary64_13979 if-if-and-not_binary64_13978 if-if-and_binary64_13977 if-if-or-not_binary64_13976 if-if-or_binary64_13975 if-not_binary64_13974 if-same_binary64_13973 if-false_binary64_13972 if-true_binary64_13971 not-gte_binary64_13970 not-lte_binary64_13969 not-gt_binary64_13968 not-lt_binary64_13967 gte-same_binary64_13966 lte-same_binary64_13965 gt-same_binary64_13964 lt-same_binary64_13963 sinh---cosh_binary64_13910 sinh-+-cosh_binary64_13909 sinh-cosh_binary64_13908 tanh-def-c_binary64_13907 tanh-def-b_binary64_13906 tanh-def-a_binary64_13905 cosh-def_binary64_13904 sinh-def_binary64_13903 tan-neg_binary64_13850 cos-neg_binary64_13849 sin-neg_binary64_13848 tan-0_binary64_13847 cos-0_binary64_13846 sin-0_binary64_13845 hang-m-tan_binary64_13844 hang-p-tan_binary64_13843 hang-m0-tan_binary64_13842 hang-p0-tan_binary64_13841 hang-0m-tan_binary64_13840 hang-0p-tan_binary64_13839 tan-+PI/2_binary64_13838 tan-+PI_binary64_13837 tan-PI_binary64_13836 tan-PI/3_binary64_13835 tan-PI/4_binary64_13834 tan-PI/6_binary64_13833 cos-+PI/2_binary64_13832 cos-+PI_binary64_13831 cos-PI_binary64_13830 cos-PI/2_binary64_13829 cos-PI/3_binary64_13828 cos-PI/4_binary64_13827 cos-PI/6_binary64_13826 sin-+PI/2_binary64_13825 sin-+PI_binary64_13824 sin-PI_binary64_13823 sin-PI/2_binary64_13822 sin-PI/3_binary64_13821 sin-PI/4_binary64_13820 sin-PI/6_binary64_13819 sub-1-sin_binary64_13818 sub-1-cos_binary64_13817 -1-add-sin_binary64_13816 -1-add-cos_binary64_13815 1-sub-sin_binary64_13814 1-sub-cos_binary64_13813 cos-sin-sum_binary64_13812 log-E_binary64_13808 log-pow_binary64_13807 log-rec_binary64_13806 log-div_binary64_13805 pow-base-0_binary64_13802 unpow1/3_binary64_13785 unpow2_binary64_13783 exp-to-pow_binary64_13780 pow-base-1_binary64_13778 unpow0_binary64_13777 unpow1_binary64_13776 unpow-1_binary64_13775 exp-lft-cube_binary64_13774 exp-lft-sqr_binary64_13773 exp-cbrt_binary64_13772 exp-sqrt_binary64_13771 div-exp_binary64_13769 rec-exp_binary64_13768 prod-exp_binary64_13767 e-exp-1_binary64_13763 exp-0_binary64_13760 rem-log-exp_binary64_13759 rem-exp-log_binary64_13758 cube-div_binary64_13747 rem-3cbrt-rft_binary64_13744 rem-cbrt-cube_binary64_13742 rem-cube-cbrt_binary64_13741 sqr-abs_binary64_13733 /-rgt-identity_binary64_13709 div0_binary64_13699 *-inverses_binary64_13698 +-inverses_binary64_13697 lft-mult-inverse_binary64_13696 rgt-mult-inverse_binary64_13695 remove-double-div_binary64_13694 difference-of-sqr--1_binary64_13689 difference-of-sqr-1_binary64_13688 distribute-neg-in_binary64_13679 distribute-rgt1-in_binary64_13674 distribute-lft1-in_binary64_13673 distribute-lft-out--_binary64_13670 associate-/r/_binary64_13664 associate-/r*_binary64_13662 associate--r-_binary64_13657 associate--l-_binary64_13656 associate--l+_binary64_13655
Counts
45 → 31
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
070416
1155386
2454386
31597386
42990386
55688386

prune18.0ms (0.6%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New30131
Fresh000
Picked011
Done000
Total30232
Error
0.0b
Counts
32 → 2
Compiler

Compiled 242 to 49 computations (79.8% saved)

localize6.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

rewrite20.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
add-log-exp_binary64_13757
sum-log_binary64_13809
neg-log_binary64_13811 pow1_binary64_13779 add-exp-log_binary64_13756 add-cbrt-cube_binary64_13754 add-cube-cbrt_binary64_13753 add-sqr-sqrt_binary64_13740 flip3-+_binary64_13721 *-un-lft-identity_binary64_13718 unsub-neg_binary64_13712 flip-+_binary64_13692 distribute-lft-neg-in_binary64_13675 distribute-rgt-out_binary64_13671 neg-sub0_binary64_13713 associate-+r-_binary64_13652 +-commutative_binary64_13648
Counts
1 → 15
Calls

1 calls:

7.0ms
(+.f64 (*.f64 x y) (neg.f64 (*.f64 z y)))
Compiler

Compiled 233 to 54 computations (76.8% saved)

series153.0ms (5.2%)

Error
0.0b
Counts
1 → 15
Calls

1 calls:

146.0ms
(+.f64 (*.f64 x y) (neg.f64 (*.f64 z y)))
Compiler

Compiled 225 to 154 computations (31.6% saved)

simplify69.0ms (2.3%)

Algorithm
egg-herbie
Rules
571×associate-*l*_binary64_13659
455×associate-*r*_binary64_13658
430×neg-mul-1_binary64_13714
364×distribute-rgt-neg-out_binary64_13678
341×distribute-rgt-out_binary64_13671
324×distribute-lft-neg-out_binary64_13677
273×times-frac_binary64_13724
223×distribute-lft-out_binary64_13669
199×distribute-rgt-in_binary64_13668
174×distribute-rgt-neg-in_binary64_13676
161×distribute-lft-in_binary64_13667
148×unsub-neg_binary64_13712
128×distribute-lft-neg-in_binary64_13675
110×cancel-sign-sub-inv_binary64_13684
101×cancel-sign-sub_binary64_13683
85×exp-prod_binary64_13770
81×distribute-rgt-out--_binary64_13672
75×*-commutative_binary64_13649
71×cube-prod_binary64_13746 neg-sub0_binary64_13713
69×sub-neg_binary64_13711
68×unswap-sqr_binary64_13686
59×sqr-pow_binary64_13690
52×distribute-neg-out_binary64_13680
47×distribute-neg-in_binary64_13679
41×distribute-lft-out--_binary64_13670
37×exp-sum_binary64_13764 div-sub_binary64_13723
33×associate-/l*_binary64_13663
32×exp-diff_binary64_13766
29×log-prod_binary64_13804
25×associate-+r+_binary64_13650
20×associate-+l-_binary64_13653
18×mul0-rgt_binary64_13701 mul0-lft_binary64_13700
17×swap-sqr_binary64_13685 associate--r+_binary64_13654
16×associate-+l+_binary64_13651 +-commutative_binary64_13648
15×remove-double-neg_binary64_13706
14×difference-of-squares_binary64_13687
13×unpow3_binary64_13784
12×cube-neg_binary64_13745 mul-1-neg_binary64_13710 *-rgt-identity_binary64_13708 *-lft-identity_binary64_13707
11×sub0-neg_binary64_13705 pow-sqr_binary64_13691
10×associate--l+_binary64_13655
cube-unmult_binary64_13755 cube-mult_binary64_13748 associate-+r-_binary64_13652
associate--r-_binary64_13657 associate--l-_binary64_13656
sqr-neg_binary64_13732 +-rgt-identity_binary64_13703
distribute-frac-neg_binary64_13681 associate-/l/_binary64_13665
associate-/r/_binary64_13664
--rgt-identity_binary64_13704 associate-/r*_binary64_13662
unpow1/2_binary64_13782 div-exp_binary64_13769 rec-exp_binary64_13768 prod-exp_binary64_13767 1-exp_binary64_13762 exp-1-e_binary64_13761 /-rgt-identity_binary64_13709 +-lft-identity_binary64_13702 associate-*r/_binary64_13660
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_13981 erf-erfc_binary64_13980 erf-odd_binary64_13979 if-if-and-not_binary64_13978 if-if-and_binary64_13977 if-if-or-not_binary64_13976 if-if-or_binary64_13975 if-not_binary64_13974 if-same_binary64_13973 if-false_binary64_13972 if-true_binary64_13971 not-gte_binary64_13970 not-lte_binary64_13969 not-gt_binary64_13968 not-lt_binary64_13967 gte-same_binary64_13966 lte-same_binary64_13965 gt-same_binary64_13964 lt-same_binary64_13963 sinh---cosh_binary64_13910 sinh-+-cosh_binary64_13909 sinh-cosh_binary64_13908 tanh-def-c_binary64_13907 tanh-def-b_binary64_13906 tanh-def-a_binary64_13905 cosh-def_binary64_13904 sinh-def_binary64_13903 tan-neg_binary64_13850 cos-neg_binary64_13849 sin-neg_binary64_13848 tan-0_binary64_13847 cos-0_binary64_13846 sin-0_binary64_13845 hang-m-tan_binary64_13844 hang-p-tan_binary64_13843 hang-m0-tan_binary64_13842 hang-p0-tan_binary64_13841 hang-0m-tan_binary64_13840 hang-0p-tan_binary64_13839 tan-+PI/2_binary64_13838 tan-+PI_binary64_13837 tan-PI_binary64_13836 tan-PI/3_binary64_13835 tan-PI/4_binary64_13834 tan-PI/6_binary64_13833 cos-+PI/2_binary64_13832 cos-+PI_binary64_13831 cos-PI_binary64_13830 cos-PI/2_binary64_13829 cos-PI/3_binary64_13828 cos-PI/4_binary64_13827 cos-PI/6_binary64_13826 sin-+PI/2_binary64_13825 sin-+PI_binary64_13824 sin-PI_binary64_13823 sin-PI/2_binary64_13822 sin-PI/3_binary64_13821 sin-PI/4_binary64_13820 sin-PI/6_binary64_13819 sub-1-sin_binary64_13818 sub-1-cos_binary64_13817 -1-add-sin_binary64_13816 -1-add-cos_binary64_13815 1-sub-sin_binary64_13814 1-sub-cos_binary64_13813 cos-sin-sum_binary64_13812 log-E_binary64_13808 log-pow_binary64_13807 log-rec_binary64_13806 log-div_binary64_13805 pow-base-0_binary64_13802 unpow1/3_binary64_13785 unpow2_binary64_13783 pow-plus_binary64_13781 exp-to-pow_binary64_13780 pow-base-1_binary64_13778 unpow0_binary64_13777 unpow1_binary64_13776 unpow-1_binary64_13775 exp-lft-cube_binary64_13774 exp-lft-sqr_binary64_13773 exp-cbrt_binary64_13772 exp-sqrt_binary64_13771 exp-neg_binary64_13765 e-exp-1_binary64_13763 exp-0_binary64_13760 rem-log-exp_binary64_13759 rem-exp-log_binary64_13758 cube-div_binary64_13747 rem-3cbrt-rft_binary64_13744 rem-3cbrt-lft_binary64_13743 rem-cbrt-cube_binary64_13742 rem-cube-cbrt_binary64_13741 sqr-abs_binary64_13733 rem-sqrt-square_binary64_13731 rem-square-sqrt_binary64_13730 div0_binary64_13699 *-inverses_binary64_13698 +-inverses_binary64_13697 lft-mult-inverse_binary64_13696 rgt-mult-inverse_binary64_13695 remove-double-div_binary64_13694 difference-of-sqr--1_binary64_13689 difference-of-sqr-1_binary64_13688 distribute-neg-frac_binary64_13682 distribute-rgt1-in_binary64_13674 distribute-lft1-in_binary64_13673 count-2_binary64_13666 associate-*l/_binary64_13661
Counts
30 → 26
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
045292
1137266
2546258
32010255
44163255
55032255

prune14.0ms (0.5%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New26026
Fresh000
Picked011
Done011
Total26228
Error
0.0b
Counts
28 → 2
Compiler

Compiled 191 to 40 computations (79.1% saved)

regimes103.0ms (3.5%)

Accuracy

Total 0.0b remaining (80%)

Threshold costs 0.0b (80%)

Compiler

Compiled 672 to 464 computations (31% saved)

bsearch0.0ms (0%)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_13649
sub-neg_binary64_13711 +-commutative_binary64_13648
neg-mul-1_binary64_13714 neg-sub0_binary64_13713
cancel-sign-sub-inv_binary64_13684 distribute-rgt-neg-in_binary64_13676
distribute-lft-neg-out_binary64_13677 distribute-lft-neg-in_binary64_13675
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_13978 if-if-and_binary64_13977 if-if-or-not_binary64_13976 if-if-or_binary64_13975 if-not_binary64_13974 if-same_binary64_13973 if-false_binary64_13972 if-true_binary64_13971 tan-0_binary64_13847 cos-0_binary64_13846 sin-0_binary64_13845 unpow1_binary64_13776 e-exp-1_binary64_13763 1-exp_binary64_13762 exp-1-e_binary64_13761 exp-0_binary64_13760 sqr-abs_binary64_13733 sqr-neg_binary64_13732 unsub-neg_binary64_13712 mul-1-neg_binary64_13710 /-rgt-identity_binary64_13709 *-rgt-identity_binary64_13708 *-lft-identity_binary64_13707 remove-double-neg_binary64_13706 sub0-neg_binary64_13705 --rgt-identity_binary64_13704 +-rgt-identity_binary64_13703 +-lft-identity_binary64_13702 cancel-sign-sub_binary64_13683 distribute-neg-frac_binary64_13682 distribute-frac-neg_binary64_13681 distribute-neg-out_binary64_13680 distribute-neg-in_binary64_13679 distribute-rgt-neg-out_binary64_13678
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11410
22410
33010
43410
53510
63510

end0.0ms (0%)

sample1.1s (36.7%)

Algorithm
intervals
Results
189.0ms5780×body128valid
101.0ms816×body1024valid
87.0ms527×body2048valid
54.0ms572×body512valid
46.0ms1238×body128invalid
24.0ms277×body512invalid
24.0ms204×body1024invalid
19.0ms305×body256valid
12.0ms189×body256invalid
Compiler

Compiled 187 to 131 computations (29.9% saved)

Profiling

Loading profile data...