Details

Time bar (total: 2.4s)

analyze46.0ms (1.9%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
25%74.9%0.1%4
37.5%62.4%0.1%5
62.4%37.5%0.1%6
71.8%28.1%0.1%7
76.5%21.9%1.7%8
80.4%16.4%3.2%9
82.3%11.7%6%10
84.1%8.8%7.1%11
85%6%9%12
85.8%4.5%9.7%13
86.2%3.1%10.7%14
Compiler

Compiled 6 to 5 computations (16.7% saved)

sample19.0ms (0.8%)

Algorithm
intervals
Results
10.0ms256×body128valid
0.0msbody128invalid
Compiler

Compiled 11 to 11 computations (0% saved)

simplify1.3s (55.8%)

Algorithm
egg-herbie
Rules
161×div-sub_binary64_16792
84×exp-prod_binary64_16839
47×times-frac_binary64_16793
46×sub-neg_binary64_16780
28×cancel-sign-sub-inv_binary64_16753
27×associate-/l*_binary64_16732
26×unsub-neg_binary64_16781
21×neg-mul-1_binary64_16783
20×associate-/r*_binary64_16731
19×neg-sub0_binary64_16782 distribute-rgt-out_binary64_16740
16×associate-*r*_binary64_16727
15×distribute-rgt-in_binary64_16737
10×distribute-neg-in_binary64_16748 distribute-rgt-out--_binary64_16741 associate--r+_binary64_16723 +-commutative_binary64_16717
associate-+l-_binary64_16722
/-rgt-identity_binary64_16778 div0_binary64_16768 *-commutative_binary64_16718
associate-+l+_binary64_16720
sub0-neg_binary64_16774 distribute-rgt-neg-in_binary64_16745 distribute-lft-neg-in_binary64_16744 associate-/l/_binary64_16734 associate-*l*_binary64_16728 associate-+r-_binary64_16721 associate-+r+_binary64_16719
exp-sum_binary64_16833 associate-/r/_binary64_16733
cube-unmult_binary64_16824 cube-div_binary64_16816 +-rgt-identity_binary64_16772 distribute-neg-frac_binary64_16751 distribute-frac-neg_binary64_16750 distribute-lft-in_binary64_16736
pow-plus_binary64_16850 cube-prod_binary64_16815 sqr-neg_binary64_16801 remove-double-neg_binary64_16775 mul0-lft_binary64_16769 *-inverses_binary64_16767 distribute-rgt1-in_binary64_16743 distribute-lft-out--_binary64_16739 distribute-lft-out_binary64_16738 associate-*r/_binary64_16729 associate--r-_binary64_16726
*-rgt-identity_binary64_16777 --rgt-identity_binary64_16773 +-lft-identity_binary64_16771 mul0-rgt_binary64_16770 sqr-pow_binary64_16759 distribute-rgt-neg-out_binary64_16747 distribute-lft-neg-out_binary64_16746 distribute-lft1-in_binary64_16742 count-2_binary64_16735 associate-*l/_binary64_16730
exp-lft-sqr_binary64_16842 1-exp_binary64_16831 *-lft-identity_binary64_16776 pow-sqr_binary64_16760 swap-sqr_binary64_16754 associate--l+_binary64_16724
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_17050 erf-erfc_binary64_17049 erf-odd_binary64_17048 if-if-and-not_binary64_17047 if-if-and_binary64_17046 if-if-or-not_binary64_17045 if-if-or_binary64_17044 if-not_binary64_17043 if-same_binary64_17042 if-false_binary64_17041 if-true_binary64_17040 not-gte_binary64_17039 not-lte_binary64_17038 not-gt_binary64_17037 not-lt_binary64_17036 gte-same_binary64_17035 lte-same_binary64_17034 gt-same_binary64_17033 lt-same_binary64_17032 sinh---cosh_binary64_16979 sinh-+-cosh_binary64_16978 sinh-cosh_binary64_16977 tanh-def-c_binary64_16976 tanh-def-b_binary64_16975 tanh-def-a_binary64_16974 cosh-def_binary64_16973 sinh-def_binary64_16972 tan-neg_binary64_16919 cos-neg_binary64_16918 sin-neg_binary64_16917 tan-0_binary64_16916 cos-0_binary64_16915 sin-0_binary64_16914 hang-m-tan_binary64_16913 hang-p-tan_binary64_16912 hang-m0-tan_binary64_16911 hang-p0-tan_binary64_16910 hang-0m-tan_binary64_16909 hang-0p-tan_binary64_16908 tan-+PI/2_binary64_16907 tan-+PI_binary64_16906 tan-PI_binary64_16905 tan-PI/3_binary64_16904 tan-PI/4_binary64_16903 tan-PI/6_binary64_16902 cos-+PI/2_binary64_16901 cos-+PI_binary64_16900 cos-PI_binary64_16899 cos-PI/2_binary64_16898 cos-PI/3_binary64_16897 cos-PI/4_binary64_16896 cos-PI/6_binary64_16895 sin-+PI/2_binary64_16894 sin-+PI_binary64_16893 sin-PI_binary64_16892 sin-PI/2_binary64_16891 sin-PI/3_binary64_16890 sin-PI/4_binary64_16889 sin-PI/6_binary64_16888 sub-1-sin_binary64_16887 sub-1-cos_binary64_16886 -1-add-sin_binary64_16885 -1-add-cos_binary64_16884 1-sub-sin_binary64_16883 1-sub-cos_binary64_16882 cos-sin-sum_binary64_16881 log-E_binary64_16877 log-pow_binary64_16876 log-rec_binary64_16875 log-div_binary64_16874 log-prod_binary64_16873 pow-base-0_binary64_16871 unpow1/3_binary64_16854 unpow3_binary64_16853 unpow2_binary64_16852 unpow1/2_binary64_16851 exp-to-pow_binary64_16849 pow-base-1_binary64_16847 unpow0_binary64_16846 unpow1_binary64_16845 unpow-1_binary64_16844 exp-lft-cube_binary64_16843 exp-cbrt_binary64_16841 exp-sqrt_binary64_16840 div-exp_binary64_16838 rec-exp_binary64_16837 prod-exp_binary64_16836 exp-diff_binary64_16835 exp-neg_binary64_16834 e-exp-1_binary64_16832 exp-1-e_binary64_16830 exp-0_binary64_16829 rem-log-exp_binary64_16828 rem-exp-log_binary64_16827 cube-mult_binary64_16817 cube-neg_binary64_16814 rem-3cbrt-rft_binary64_16813 rem-3cbrt-lft_binary64_16812 rem-cbrt-cube_binary64_16811 rem-cube-cbrt_binary64_16810 sqr-abs_binary64_16802 rem-sqrt-square_binary64_16800 rem-square-sqrt_binary64_16799 mul-1-neg_binary64_16779 +-inverses_binary64_16766 lft-mult-inverse_binary64_16765 rgt-mult-inverse_binary64_16764 remove-double-div_binary64_16763 difference-of-sqr--1_binary64_16758 difference-of-sqr-1_binary64_16757 difference-of-squares_binary64_16756 unswap-sqr_binary64_16755 cancel-sign-sub_binary64_16752 distribute-neg-out_binary64_16749 associate--l-_binary64_16725
Counts
1 → 2
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
057
1107
2187
3297
4517
5717
61427
74571
8231

prune4.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Compiler

Compiled 11 to 11 computations (0% saved)

localize3.0ms (0.1%)

Local error

Found 1 expressions with local error:

0.0b
(-.f64 1 (/.f64 y x))

rewrite37.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
0b
Rules
16×add-sqr-sqrt_binary64_16809
13×cancel-sign-sub-inv_binary64_16753
12×*-un-lft-identity_binary64_16787
11×times-frac_binary64_16793
add-cube-cbrt_binary64_16822
difference-of-squares_binary64_16756
add-log-exp_binary64_16826
diff-log_binary64_16879 pow1_binary64_16848 add-exp-log_binary64_16825 add-cbrt-cube_binary64_16823 flip3--_binary64_16791 sub-neg_binary64_16780 flip--_binary64_16762 div-inv_binary64_16784 distribute-lft-out--_binary64_16739
Counts
1 → 29
Calls

1 calls:

8.0ms
(-.f64 1 (/.f64 y x))
Compiler

Compiled 381 to 190 computations (50.1% saved)

series98.0ms (4%)

Error
0.0b
Counts
1 → 12
Calls

1 calls:

92.0ms
(-.f64 1 (/.f64 y x))
Compiler

Compiled 126 to 108 computations (14.3% saved)

simplify328.0ms (13.6%)

Algorithm
egg-herbie
Rules
331×neg-mul-1_binary64_16783
303×exp-prod_binary64_16839
283×div-sub_binary64_16792
237×associate-*l*_binary64_16728
226×associate-/l*_binary64_16732
200×unsub-neg_binary64_16781
193×associate-*l/_binary64_16730 associate-*r*_binary64_16727
151×distribute-lft-neg-out_binary64_16746
134×times-frac_binary64_16793
125×cancel-sign-sub-inv_binary64_16753
123×associate-*r/_binary64_16729
118×distribute-rgt-neg-out_binary64_16747
115×exp-diff_binary64_16835
100×distribute-frac-neg_binary64_16750
94×distribute-neg-frac_binary64_16751
92×sub-neg_binary64_16780
87×cube-prod_binary64_16815
86×distribute-rgt-neg-in_binary64_16745
85×neg-sub0_binary64_16782
77×sqr-neg_binary64_16801
76×*-commutative_binary64_16718
75×cube-div_binary64_16816 associate-+r+_binary64_16719
74×associate-/l/_binary64_16734
72×distribute-rgt-in_binary64_16737
66×sqr-pow_binary64_16759
65×distribute-rgt-out_binary64_16740 distribute-lft-in_binary64_16736
64×exp-sum_binary64_16833 associate-/r*_binary64_16731
62×distribute-lft-out_binary64_16738
59×associate-+l-_binary64_16722 associate-+l+_binary64_16720
57×distribute-lft-neg-in_binary64_16744 +-commutative_binary64_16717
54×swap-sqr_binary64_16754
51×exp-neg_binary64_16834
43×unswap-sqr_binary64_16755
42×pow-plus_binary64_16850
39×log-pow_binary64_16876
38×distribute-neg-out_binary64_16749 associate--l-_binary64_16725
36×exp-to-pow_binary64_16849 associate-/r/_binary64_16733
35×*-lft-identity_binary64_16776
32×pow-sqr_binary64_16760
31×unpow3_binary64_16853
26×mul0-rgt_binary64_16770 mul0-lft_binary64_16769
24×cube-mult_binary64_16817
20×log-prod_binary64_16873 *-rgt-identity_binary64_16777
19×distribute-rgt-out--_binary64_16741
18×div0_binary64_16768
17×pow-base-1_binary64_16847 div-exp_binary64_16838 associate--r+_binary64_16723
16×prod-exp_binary64_16836
15×distribute-rgt1-in_binary64_16743
14×/-rgt-identity_binary64_16778 associate-+r-_binary64_16721
11×cube-unmult_binary64_16824 remove-double-div_binary64_16763
cancel-sign-sub_binary64_16752
rem-sqrt-square_binary64_16800 difference-of-squares_binary64_16756
sub0-neg_binary64_16774
difference-of-sqr-1_binary64_16757 distribute-lft-out--_binary64_16739
rec-exp_binary64_16837 associate--l+_binary64_16724
rem-square-sqrt_binary64_16799 mul-1-neg_binary64_16779
log-div_binary64_16874 cube-neg_binary64_16814 rem-3cbrt-lft_binary64_16812 +-rgt-identity_binary64_16772
log-rec_binary64_16875 1-exp_binary64_16831 exp-1-e_binary64_16830 rem-log-exp_binary64_16828 rem-3cbrt-rft_binary64_16813 rem-cbrt-cube_binary64_16811 --rgt-identity_binary64_16773 count-2_binary64_16735
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_17050 erf-erfc_binary64_17049 erf-odd_binary64_17048 if-if-and-not_binary64_17047 if-if-and_binary64_17046 if-if-or-not_binary64_17045 if-if-or_binary64_17044 if-not_binary64_17043 if-same_binary64_17042 if-false_binary64_17041 if-true_binary64_17040 not-gte_binary64_17039 not-lte_binary64_17038 not-gt_binary64_17037 not-lt_binary64_17036 gte-same_binary64_17035 lte-same_binary64_17034 gt-same_binary64_17033 lt-same_binary64_17032 sinh---cosh_binary64_16979 sinh-+-cosh_binary64_16978 sinh-cosh_binary64_16977 tanh-def-c_binary64_16976 tanh-def-b_binary64_16975 tanh-def-a_binary64_16974 cosh-def_binary64_16973 sinh-def_binary64_16972 tan-neg_binary64_16919 cos-neg_binary64_16918 sin-neg_binary64_16917 tan-0_binary64_16916 cos-0_binary64_16915 sin-0_binary64_16914 hang-m-tan_binary64_16913 hang-p-tan_binary64_16912 hang-m0-tan_binary64_16911 hang-p0-tan_binary64_16910 hang-0m-tan_binary64_16909 hang-0p-tan_binary64_16908 tan-+PI/2_binary64_16907 tan-+PI_binary64_16906 tan-PI_binary64_16905 tan-PI/3_binary64_16904 tan-PI/4_binary64_16903 tan-PI/6_binary64_16902 cos-+PI/2_binary64_16901 cos-+PI_binary64_16900 cos-PI_binary64_16899 cos-PI/2_binary64_16898 cos-PI/3_binary64_16897 cos-PI/4_binary64_16896 cos-PI/6_binary64_16895 sin-+PI/2_binary64_16894 sin-+PI_binary64_16893 sin-PI_binary64_16892 sin-PI/2_binary64_16891 sin-PI/3_binary64_16890 sin-PI/4_binary64_16889 sin-PI/6_binary64_16888 sub-1-sin_binary64_16887 sub-1-cos_binary64_16886 -1-add-sin_binary64_16885 -1-add-cos_binary64_16884 1-sub-sin_binary64_16883 1-sub-cos_binary64_16882 cos-sin-sum_binary64_16881 log-E_binary64_16877 pow-base-0_binary64_16871 unpow1/3_binary64_16854 unpow2_binary64_16852 unpow1/2_binary64_16851 unpow0_binary64_16846 unpow1_binary64_16845 unpow-1_binary64_16844 exp-lft-cube_binary64_16843 exp-lft-sqr_binary64_16842 exp-cbrt_binary64_16841 exp-sqrt_binary64_16840 e-exp-1_binary64_16832 exp-0_binary64_16829 rem-exp-log_binary64_16827 rem-cube-cbrt_binary64_16810 sqr-abs_binary64_16802 remove-double-neg_binary64_16775 +-lft-identity_binary64_16771 *-inverses_binary64_16767 +-inverses_binary64_16766 lft-mult-inverse_binary64_16765 rgt-mult-inverse_binary64_16764 difference-of-sqr--1_binary64_16758 distribute-neg-in_binary64_16748 distribute-lft1-in_binary64_16742 associate--r-_binary64_16726
Counts
41 → 24
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
091387
1238372
2678372
32252372
43996372

prune15.0ms (0.6%)

Pruning

1 alts after pruning (0 fresh and 1 done)

PrunedKeptTotal
New24024
Fresh000
Picked011
Done000
Total24125
Error
0.0b
Counts
25 → 1
Compiler

Compiled 209 to 91 computations (56.5% saved)

regimes38.0ms (1.6%)

Accuracy

Total 0.0b remaining (92.1%)

Threshold costs 0.0b (92.1%)

Compiler

Compiled 99 to 103 computations (-4% saved)

bsearch0.0ms (0%)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
sub-neg_binary64_16780 +-commutative_binary64_16717
neg-mul-1_binary64_16783 neg-sub0_binary64_16782 *-commutative_binary64_16718
1-exp_binary64_16831 distribute-neg-frac_binary64_16751
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_17047 if-if-and_binary64_17046 if-if-or-not_binary64_17045 if-if-or_binary64_17044 if-not_binary64_17043 if-same_binary64_17042 if-false_binary64_17041 if-true_binary64_17040 tan-0_binary64_16916 cos-0_binary64_16915 sin-0_binary64_16914 unpow1_binary64_16845 e-exp-1_binary64_16832 exp-1-e_binary64_16830 exp-0_binary64_16829 sqr-abs_binary64_16802 sqr-neg_binary64_16801 unsub-neg_binary64_16781 mul-1-neg_binary64_16779 /-rgt-identity_binary64_16778 *-rgt-identity_binary64_16777 *-lft-identity_binary64_16776 remove-double-neg_binary64_16775 sub0-neg_binary64_16774 --rgt-identity_binary64_16773 +-rgt-identity_binary64_16772 +-lft-identity_binary64_16771 cancel-sign-sub-inv_binary64_16753 cancel-sign-sub_binary64_16752 distribute-frac-neg_binary64_16750 distribute-neg-out_binary64_16749 distribute-neg-in_binary64_16748 distribute-rgt-neg-out_binary64_16747 distribute-lft-neg-out_binary64_16746 distribute-rgt-neg-in_binary64_16745 distribute-lft-neg-in_binary64_16744
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
1107
2167
3207
4237
5247
Proof
(- f64 1 (/ f64 h0 h1))

end0.0ms (0%)

sample478.0ms (19.8%)

Algorithm
intervals
Results
160.0ms8000×body128valid
3.0ms174×body128invalid
Compiler

Compiled 39 to 41 computations (-5.1% saved)

Profiling

Loading profile data...