Details

Time bar (total: 8.0s)

analyze2.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
100%0%0%2
Compiler

Compiled 9 to 8 computations (11.1% saved)

sample15.0ms (0.2%)

Algorithm
intervals
Results
7.0ms256×body128valid
Compiler

Compiled 17 to 16 computations (5.9% saved)

simplify1.2s (15.3%)

Algorithm
egg-herbie
Rules
1574×exp-prod_binary64_1835
440×associate--l+_binary64_1720
408×distribute-rgt-neg-in_binary64_1741
367×distribute-rgt-out--_binary64_1737
363×distribute-rgt-out_binary64_1736
351×associate-*r*_binary64_1723
336×exp-diff_binary64_1831
293×associate--r+_binary64_1719
240×distribute-rgt1-in_binary64_1739
233×associate-*l*_binary64_1724
206×sub-neg_binary64_1776
188×associate-+r+_binary64_1715
145×associate-+l+_binary64_1716
144×pow-plus_binary64_1846
136×distribute-lft-neg-in_binary64_1740
131×unswap-sqr_binary64_1751
118×distribute-lft-out_binary64_1734
115×distribute-lft-out--_binary64_1735
95×associate-/r/_binary64_1729
87×unsub-neg_binary64_1777
78×associate-/l*_binary64_1728
73×distribute-rgt-neg-out_binary64_1743
66×distribute-lft-neg-out_binary64_1742
56×cancel-sign-sub-inv_binary64_1749
47×associate--r-_binary64_1722
43×exp-sum_binary64_1829
40×times-frac_binary64_1789
38×sqr-pow_binary64_1755
36×div-sub_binary64_1788
34×associate--l-_binary64_1721
31×+-commutative_binary64_1713
26×associate-+r-_binary64_1717
25×pow-sqr_binary64_1756
24×exp-lft-sqr_binary64_1838 associate-+l-_binary64_1718
23×distribute-rgt-in_binary64_1733
21×distribute-neg-out_binary64_1745 distribute-neg-in_binary64_1744
20×neg-sub0_binary64_1778
18×exp-sqrt_binary64_1836 neg-mul-1_binary64_1779 distribute-lft1-in_binary64_1738 associate-/l/_binary64_1730 *-commutative_binary64_1714
17×+-inverses_binary64_1762
13×distribute-neg-frac_binary64_1747
12×cube-prod_binary64_1811
11×*-lft-identity_binary64_1772 distribute-lft-in_binary64_1732
10×swap-sqr_binary64_1750 count-2_binary64_1731 associate-*r/_binary64_1725
cube-unmult_binary64_1820
pow-base-1_binary64_1843
*-rgt-identity_binary64_1773
difference-of-squares_binary64_1752
sqr-neg_binary64_1797 /-rgt-identity_binary64_1774 remove-double-neg_binary64_1771 distribute-frac-neg_binary64_1746
unpow3_binary64_1849
exp-neg_binary64_1830 sub0-neg_binary64_1770 div0_binary64_1764 difference-of-sqr--1_binary64_1754
*-inverses_binary64_1763 associate-*l/_binary64_1726
unpow1_binary64_1841 div-exp_binary64_1834 prod-exp_binary64_1832 1-exp_binary64_1827 exp-1-e_binary64_1826 cube-div_binary64_1812 --rgt-identity_binary64_1769 +-rgt-identity_binary64_1768 +-lft-identity_binary64_1767 mul0-rgt_binary64_1766 mul0-lft_binary64_1765
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_2046 erf-erfc_binary64_2045 erf-odd_binary64_2044 if-if-and-not_binary64_2043 if-if-and_binary64_2042 if-if-or-not_binary64_2041 if-if-or_binary64_2040 if-not_binary64_2039 if-same_binary64_2038 if-false_binary64_2037 if-true_binary64_2036 not-gte_binary64_2035 not-lte_binary64_2034 not-gt_binary64_2033 not-lt_binary64_2032 gte-same_binary64_2031 lte-same_binary64_2030 gt-same_binary64_2029 lt-same_binary64_2028 sinh---cosh_binary64_1975 sinh-+-cosh_binary64_1974 sinh-cosh_binary64_1973 tanh-def-c_binary64_1972 tanh-def-b_binary64_1971 tanh-def-a_binary64_1970 cosh-def_binary64_1969 sinh-def_binary64_1968 tan-neg_binary64_1915 cos-neg_binary64_1914 sin-neg_binary64_1913 tan-0_binary64_1912 cos-0_binary64_1911 sin-0_binary64_1910 hang-m-tan_binary64_1909 hang-p-tan_binary64_1908 hang-m0-tan_binary64_1907 hang-p0-tan_binary64_1906 hang-0m-tan_binary64_1905 hang-0p-tan_binary64_1904 tan-+PI/2_binary64_1903 tan-+PI_binary64_1902 tan-PI_binary64_1901 tan-PI/3_binary64_1900 tan-PI/4_binary64_1899 tan-PI/6_binary64_1898 cos-+PI/2_binary64_1897 cos-+PI_binary64_1896 cos-PI_binary64_1895 cos-PI/2_binary64_1894 cos-PI/3_binary64_1893 cos-PI/4_binary64_1892 cos-PI/6_binary64_1891 sin-+PI/2_binary64_1890 sin-+PI_binary64_1889 sin-PI_binary64_1888 sin-PI/2_binary64_1887 sin-PI/3_binary64_1886 sin-PI/4_binary64_1885 sin-PI/6_binary64_1884 sub-1-sin_binary64_1883 sub-1-cos_binary64_1882 -1-add-sin_binary64_1881 -1-add-cos_binary64_1880 1-sub-sin_binary64_1879 1-sub-cos_binary64_1878 cos-sin-sum_binary64_1877 log-E_binary64_1873 log-pow_binary64_1872 log-rec_binary64_1871 log-div_binary64_1870 log-prod_binary64_1869 pow-base-0_binary64_1867 unpow1/3_binary64_1850 unpow2_binary64_1848 unpow1/2_binary64_1847 exp-to-pow_binary64_1845 unpow0_binary64_1842 unpow-1_binary64_1840 exp-lft-cube_binary64_1839 exp-cbrt_binary64_1837 rec-exp_binary64_1833 e-exp-1_binary64_1828 exp-0_binary64_1825 rem-log-exp_binary64_1824 rem-exp-log_binary64_1823 cube-mult_binary64_1813 cube-neg_binary64_1810 rem-3cbrt-rft_binary64_1809 rem-3cbrt-lft_binary64_1808 rem-cbrt-cube_binary64_1807 rem-cube-cbrt_binary64_1806 sqr-abs_binary64_1798 rem-sqrt-square_binary64_1796 rem-square-sqrt_binary64_1795 mul-1-neg_binary64_1775 lft-mult-inverse_binary64_1761 rgt-mult-inverse_binary64_1760 remove-double-div_binary64_1759 difference-of-sqr-1_binary64_1753 cancel-sign-sub_binary64_1748 associate-/r*_binary64_1727
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
11513
22013
32913
44413
58513
621913
7226413
8398213

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
0.0b
Counts
1 → 1
Compiler

Compiled 8 to 7 computations (12.5% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
0.0b
(/.f64 2 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))

rewrite64.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
0b
Rules
22×*-un-lft-identity_binary64_1783
15×times-frac_binary64_1789
12×add-cube-cbrt_binary64_1818 add-sqr-sqrt_binary64_1805
cosh-undef_binary64_1977 distribute-lft-out_binary64_1734 associate-/r*_binary64_1727
add-exp-log_binary64_1821 add-log-exp_binary64_1822 add-cbrt-cube_binary64_1819
associate-/l*_binary64_1728
pow1_binary64_1844 flip3-+_binary64_1786 associate-/r/_binary64_1729 flip-+_binary64_1757
div-exp_binary64_1834 cbrt-undiv_binary64_1817 frac-2neg_binary64_1794 clear-num_binary64_1782 div-inv_binary64_1780 sum-log_binary64_1874 +-commutative_binary64_1713
Counts
2 → 50
Calls

2 calls:

7.0ms
(/.f64 2 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
5.0ms
(+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
Compiler

Compiled 807 to 304 computations (62.3% saved)

series124.0ms (1.5%)

Error
0.0b
Counts
2 → 12
Calls

2 calls:

84.0ms
(/.f64 2 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
29.0ms
(+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
Compiler

Compiled 266 to 229 computations (13.9% saved)

simplify585.0ms (7.3%)

Algorithm
egg-herbie
Rules
391×*-commutative_binary64_1714
341×cancel-sign-sub-inv_binary64_1749
219×times-frac_binary64_1789
218×distribute-rgt-in_binary64_1733
177×distribute-lft-in_binary64_1732
153×distribute-rgt-out_binary64_1736
146×associate-/l*_binary64_1728
143×associate-+l+_binary64_1716
139×associate-+r+_binary64_1715
127×associate-*r*_binary64_1723
118×log-div_binary64_1870
114×distribute-rgt-neg-in_binary64_1741
103×associate-/r*_binary64_1727
101×associate-+l-_binary64_1718
100×associate--l+_binary64_1720
98×distribute-lft-neg-in_binary64_1740
92×associate-*r/_binary64_1725
90×sub-neg_binary64_1776
89×exp-prod_binary64_1835 associate-*l*_binary64_1724
85×associate-/l/_binary64_1730
80×distribute-lft-out_binary64_1734 associate--l-_binary64_1721
79×associate-*l/_binary64_1726
77×log-prod_binary64_1869
75×cube-prod_binary64_1811
72×swap-sqr_binary64_1750
69×distribute-rgt-out--_binary64_1737
67×associate-+r-_binary64_1717 +-commutative_binary64_1713
66×prod-exp_binary64_1832
62×unswap-sqr_binary64_1751
58×log-pow_binary64_1872
54×sqr-pow_binary64_1755 associate-/r/_binary64_1729
47×div-sub_binary64_1788
45×cube-div_binary64_1812 distribute-neg-frac_binary64_1747
36×unsub-neg_binary64_1777
34×pow-sqr_binary64_1756
32×div-exp_binary64_1834
30×distribute-lft-neg-out_binary64_1742
29×associate--r+_binary64_1719
28×neg-sub0_binary64_1778
25×neg-mul-1_binary64_1779
23×*-rgt-identity_binary64_1773 distribute-lft-out--_binary64_1735
21×distribute-neg-out_binary64_1745
20×distribute-rgt1-in_binary64_1739
17×distribute-rgt-neg-out_binary64_1743
15×*-lft-identity_binary64_1772
14×+-rgt-identity_binary64_1768
13×exp-sum_binary64_1829 sub0-neg_binary64_1770
12×log-rec_binary64_1871 /-rgt-identity_binary64_1774
cube-unmult_binary64_1820 difference-of-squares_binary64_1752 associate--r-_binary64_1722
exp-lft-sqr_binary64_1838 distribute-neg-in_binary64_1744
exp-sqrt_binary64_1836 exp-diff_binary64_1831
unpow3_binary64_1849 pow-plus_binary64_1846 distribute-lft1-in_binary64_1738
rec-exp_binary64_1833 count-2_binary64_1731
cube-mult_binary64_1813 distribute-frac-neg_binary64_1746
rem-log-exp_binary64_1824 remove-double-div_binary64_1759 difference-of-sqr--1_binary64_1754 difference-of-sqr-1_binary64_1753
exp-neg_binary64_1830 remove-double-neg_binary64_1771
cosh-def_binary64_1969 unpow2_binary64_1848 pow-base-1_binary64_1843 unpow1_binary64_1841 1-exp_binary64_1827 mul0-rgt_binary64_1766 mul0-lft_binary64_1765 div0_binary64_1764 *-inverses_binary64_1763 +-inverses_binary64_1762 lft-mult-inverse_binary64_1761 cancel-sign-sub_binary64_1748
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_2046 erf-erfc_binary64_2045 erf-odd_binary64_2044 if-if-and-not_binary64_2043 if-if-and_binary64_2042 if-if-or-not_binary64_2041 if-if-or_binary64_2040 if-not_binary64_2039 if-same_binary64_2038 if-false_binary64_2037 if-true_binary64_2036 not-gte_binary64_2035 not-lte_binary64_2034 not-gt_binary64_2033 not-lt_binary64_2032 gte-same_binary64_2031 lte-same_binary64_2030 gt-same_binary64_2029 lt-same_binary64_2028 sinh---cosh_binary64_1975 sinh-+-cosh_binary64_1974 sinh-cosh_binary64_1973 tanh-def-c_binary64_1972 tanh-def-b_binary64_1971 tanh-def-a_binary64_1970 sinh-def_binary64_1968 tan-neg_binary64_1915 cos-neg_binary64_1914 sin-neg_binary64_1913 tan-0_binary64_1912 cos-0_binary64_1911 sin-0_binary64_1910 hang-m-tan_binary64_1909 hang-p-tan_binary64_1908 hang-m0-tan_binary64_1907 hang-p0-tan_binary64_1906 hang-0m-tan_binary64_1905 hang-0p-tan_binary64_1904 tan-+PI/2_binary64_1903 tan-+PI_binary64_1902 tan-PI_binary64_1901 tan-PI/3_binary64_1900 tan-PI/4_binary64_1899 tan-PI/6_binary64_1898 cos-+PI/2_binary64_1897 cos-+PI_binary64_1896 cos-PI_binary64_1895 cos-PI/2_binary64_1894 cos-PI/3_binary64_1893 cos-PI/4_binary64_1892 cos-PI/6_binary64_1891 sin-+PI/2_binary64_1890 sin-+PI_binary64_1889 sin-PI_binary64_1888 sin-PI/2_binary64_1887 sin-PI/3_binary64_1886 sin-PI/4_binary64_1885 sin-PI/6_binary64_1884 sub-1-sin_binary64_1883 sub-1-cos_binary64_1882 -1-add-sin_binary64_1881 -1-add-cos_binary64_1880 1-sub-sin_binary64_1879 1-sub-cos_binary64_1878 cos-sin-sum_binary64_1877 log-E_binary64_1873 pow-base-0_binary64_1867 unpow1/3_binary64_1850 unpow1/2_binary64_1847 exp-to-pow_binary64_1845 unpow0_binary64_1842 unpow-1_binary64_1840 exp-lft-cube_binary64_1839 exp-cbrt_binary64_1837 e-exp-1_binary64_1828 exp-1-e_binary64_1826 exp-0_binary64_1825 rem-exp-log_binary64_1823 cube-neg_binary64_1810 rem-3cbrt-rft_binary64_1809 rem-3cbrt-lft_binary64_1808 rem-cbrt-cube_binary64_1807 rem-cube-cbrt_binary64_1806 sqr-abs_binary64_1798 sqr-neg_binary64_1797 rem-sqrt-square_binary64_1796 rem-square-sqrt_binary64_1795 mul-1-neg_binary64_1775 --rgt-identity_binary64_1769 +-lft-identity_binary64_1767 rgt-mult-inverse_binary64_1760
Counts
62 → 88
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01091127
12371042
2593930
31889928
44920928

prune94.0ms (1.2%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New86288
Fresh000
Picked101
Done000
Total87289
Error
0b
Counts
89 → 2
Compiler

Compiled 1343 to 709 computations (47.2% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(/.f64 1 (cosh.f64 x))
0.0b
(/.f64 1 (cosh.f64 x))

rewrite79.0ms (1%)

Algorithm
rewrite-expression-head
Error
0b
Rules
18×add-cube-cbrt_binary64_1818 add-sqr-sqrt_binary64_1805 times-frac_binary64_1789 *-un-lft-identity_binary64_1783
10×add-exp-log_binary64_1821
add-cbrt-cube_binary64_1819 associate-/l*_binary64_1728 associate-/r*_binary64_1727
pow1_binary64_1844 div-exp_binary64_1834
inv-pow_binary64_1868 pow-flip_binary64_1857 1-exp_binary64_1827 rec-exp_binary64_1833 add-log-exp_binary64_1822 cbrt-undiv_binary64_1817 frac-2neg_binary64_1794 clear-num_binary64_1782 div-inv_binary64_1780 cosh-def_binary64_1969 associate-/r/_binary64_1729
Counts
2 → 64
Calls

2 calls:

4.0ms
(/.f64 1 (cosh.f64 x))
3.0ms
(/.f64 1 (cosh.f64 x))
Compiler

Compiled 1074 to 684 computations (36.3% saved)

series221.0ms (2.8%)

Error
0b
Counts
2 → 12
Calls

2 calls:

110.0ms
(/.f64 1 (cosh.f64 x))
98.0ms
(/.f64 1 (cosh.f64 x))
Compiler

Compiled 458 to 382 computations (16.6% saved)

simplify577.0ms (7.2%)

Algorithm
egg-herbie
Rules
854×div-sub_binary64_1788
288×associate-*l*_binary64_1724
281×associate-*l/_binary64_1726
263×associate-/l/_binary64_1730
230×associate-*r*_binary64_1723
228×associate-/l*_binary64_1728
226×associate-/r/_binary64_1729
173×associate-*r/_binary64_1725
136×cancel-sign-sub-inv_binary64_1749
130×associate-/r*_binary64_1727
121×exp-prod_binary64_1835
81×log-div_binary64_1870
79×cube-div_binary64_1812
78×*-commutative_binary64_1714
69×log-prod_binary64_1869
65×distribute-rgt-in_binary64_1733
63×cube-prod_binary64_1811
62×sub-neg_binary64_1776
60×associate-+l-_binary64_1718
52×distribute-lft-in_binary64_1732
49×unsub-neg_binary64_1777
42×associate--l-_binary64_1721
39×sqr-pow_binary64_1755
38×distribute-rgt-neg-in_binary64_1741
34×exp-sqrt_binary64_1836
32×distribute-lft-neg-in_binary64_1740
31×+-commutative_binary64_1713
30×times-frac_binary64_1789
27×associate-+r-_binary64_1717 associate-+l+_binary64_1716
26×exp-to-pow_binary64_1845 neg-sub0_binary64_1778
25×exp-lft-sqr_binary64_1838 exp-diff_binary64_1831
24×neg-mul-1_binary64_1779
23×associate-+r+_binary64_1715
22×pow-sqr_binary64_1756 associate--l+_binary64_1720
20×exp-sum_binary64_1829 unswap-sqr_binary64_1751
19×pow-plus_binary64_1846 distribute-lft-neg-out_binary64_1742
15×*-rgt-identity_binary64_1773 sub0-neg_binary64_1770
13×log-pow_binary64_1872 distribute-neg-frac_binary64_1747 associate--r+_binary64_1719
12×swap-sqr_binary64_1750
11×prod-exp_binary64_1832 cube-unmult_binary64_1820 /-rgt-identity_binary64_1774
10×log-rec_binary64_1871 *-lft-identity_binary64_1772 distribute-rgt-neg-out_binary64_1743
unpow3_binary64_1849 cube-mult_binary64_1813 distribute-rgt-out--_binary64_1737 distribute-rgt-out_binary64_1736
div-exp_binary64_1834
distribute-frac-neg_binary64_1746
+-lft-identity_binary64_1767 distribute-neg-out_binary64_1745 associate--r-_binary64_1722
distribute-neg-in_binary64_1744
pow-base-1_binary64_1843 +-rgt-identity_binary64_1768 distribute-lft-out--_binary64_1735 distribute-lft-out_binary64_1734
rec-exp_binary64_1833 exp-neg_binary64_1830 mul0-rgt_binary64_1766 mul0-lft_binary64_1765
sqr-neg_binary64_1797 rem-sqrt-square_binary64_1796 remove-double-div_binary64_1759 cancel-sign-sub_binary64_1748 distribute-rgt1-in_binary64_1739
cosh-def_binary64_1969 unpow2_binary64_1848 unpow1_binary64_1841 1-exp_binary64_1827 exp-1-e_binary64_1826 rem-log-exp_binary64_1824 rem-exp-log_binary64_1823 cube-neg_binary64_1810 rem-cbrt-cube_binary64_1807 --rgt-identity_binary64_1769 *-inverses_binary64_1763 rgt-mult-inverse_binary64_1760 count-2_binary64_1731
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_2046 erf-erfc_binary64_2045 erf-odd_binary64_2044 if-if-and-not_binary64_2043 if-if-and_binary64_2042 if-if-or-not_binary64_2041 if-if-or_binary64_2040 if-not_binary64_2039 if-same_binary64_2038 if-false_binary64_2037 if-true_binary64_2036 not-gte_binary64_2035 not-lte_binary64_2034 not-gt_binary64_2033 not-lt_binary64_2032 gte-same_binary64_2031 lte-same_binary64_2030 gt-same_binary64_2029 lt-same_binary64_2028 sinh---cosh_binary64_1975 sinh-+-cosh_binary64_1974 sinh-cosh_binary64_1973 tanh-def-c_binary64_1972 tanh-def-b_binary64_1971 tanh-def-a_binary64_1970 sinh-def_binary64_1968 tan-neg_binary64_1915 cos-neg_binary64_1914 sin-neg_binary64_1913 tan-0_binary64_1912 cos-0_binary64_1911 sin-0_binary64_1910 hang-m-tan_binary64_1909 hang-p-tan_binary64_1908 hang-m0-tan_binary64_1907 hang-p0-tan_binary64_1906 hang-0m-tan_binary64_1905 hang-0p-tan_binary64_1904 tan-+PI/2_binary64_1903 tan-+PI_binary64_1902 tan-PI_binary64_1901 tan-PI/3_binary64_1900 tan-PI/4_binary64_1899 tan-PI/6_binary64_1898 cos-+PI/2_binary64_1897 cos-+PI_binary64_1896 cos-PI_binary64_1895 cos-PI/2_binary64_1894 cos-PI/3_binary64_1893 cos-PI/4_binary64_1892 cos-PI/6_binary64_1891 sin-+PI/2_binary64_1890 sin-+PI_binary64_1889 sin-PI_binary64_1888 sin-PI/2_binary64_1887 sin-PI/3_binary64_1886 sin-PI/4_binary64_1885 sin-PI/6_binary64_1884 sub-1-sin_binary64_1883 sub-1-cos_binary64_1882 -1-add-sin_binary64_1881 -1-add-cos_binary64_1880 1-sub-sin_binary64_1879 1-sub-cos_binary64_1878 cos-sin-sum_binary64_1877 log-E_binary64_1873 pow-base-0_binary64_1867 unpow1/3_binary64_1850 unpow1/2_binary64_1847 unpow0_binary64_1842 unpow-1_binary64_1840 exp-lft-cube_binary64_1839 exp-cbrt_binary64_1837 e-exp-1_binary64_1828 exp-0_binary64_1825 rem-3cbrt-rft_binary64_1809 rem-3cbrt-lft_binary64_1808 rem-cube-cbrt_binary64_1806 sqr-abs_binary64_1798 rem-square-sqrt_binary64_1795 mul-1-neg_binary64_1775 remove-double-neg_binary64_1771 div0_binary64_1764 +-inverses_binary64_1762 lft-mult-inverse_binary64_1761 difference-of-sqr--1_binary64_1754 difference-of-sqr-1_binary64_1753 difference-of-squares_binary64_1752 distribute-lft1-in_binary64_1738
Counts
76 → 200
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0771042
1140982
2331724
3772724
43251724

prune303.0ms (3.8%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New2000200
Fresh011
Picked011
Done000
Total2002202
Error
0b
Counts
202 → 2
Compiler

Compiled 4157 to 2584 computations (37.8% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 2 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
0.0b
(cbrt.f64 (/.f64 1 (cosh.f64 x)))
0.0b
(cbrt.f64 (/.f64 1 (cosh.f64 x)))
0.0b
(cbrt.f64 (/.f64 2 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))))

rewrite212.0ms (2.7%)

Algorithm
rewrite-expression-head
Error
0b
Rules
51×*-un-lft-identity_binary64_1783
49×cbrt-prod_binary64_1814
48×times-frac_binary64_1789
37×add-cube-cbrt_binary64_1818 add-sqr-sqrt_binary64_1805
cosh-undef_binary64_1977 distribute-lft-out_binary64_1734
add-exp-log_binary64_1821 add-cbrt-cube_binary64_1819 associate-/r/_binary64_1729
associate-/r*_binary64_1727
pow1_binary64_1844 add-log-exp_binary64_1822 div-inv_binary64_1780
pow1/3_binary64_1865 cbrt-div_binary64_1815 associate-/l*_binary64_1728
flip3-+_binary64_1786 flip-+_binary64_1757 cosh-def_binary64_1969
div-exp_binary64_1834 cbrt-undiv_binary64_1817 frac-2neg_binary64_1794 clear-num_binary64_1782
Counts
4 → 113
Calls

4 calls:

7.0ms
(/.f64 2 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
7.0ms
(cbrt.f64 (/.f64 2 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))))
3.0ms
(cbrt.f64 (/.f64 1 (cosh.f64 x)))
3.0ms
(cbrt.f64 (/.f64 1 (cosh.f64 x)))
Compiler

Compiled 3354 to 1834 computations (45.3% saved)

series957.0ms (12%)

Error
0b
Counts
4 → 24
Calls

4 calls:

300.0ms
(cbrt.f64 (/.f64 2 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))))
266.0ms
(cbrt.f64 (/.f64 1 (cosh.f64 x)))
263.0ms
(cbrt.f64 (/.f64 1 (cosh.f64 x)))
91.0ms
(/.f64 2 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
Compiler

Compiled 1500 to 1162 computations (22.5% saved)

simplify1.8s (22%)

Algorithm
egg-herbie
Rules
425×associate-*r*_binary64_1723
401×associate-*l*_binary64_1724
343×times-frac_binary64_1789
305×unswap-sqr_binary64_1751
225×associate-/l*_binary64_1728
191×cancel-sign-sub-inv_binary64_1749
173×sub-neg_binary64_1776 *-commutative_binary64_1714
151×associate-/r*_binary64_1727
131×associate-*r/_binary64_1725
122×associate-/l/_binary64_1730
116×log-prod_binary64_1869
104×cube-prod_binary64_1811 associate-*l/_binary64_1726
97×sqr-pow_binary64_1755
95×exp-prod_binary64_1835
72×distribute-rgt-neg-in_binary64_1741
71×associate-/r/_binary64_1729
65×prod-exp_binary64_1832
63×neg-sub0_binary64_1778
62×div-sub_binary64_1788
61×pow-sqr_binary64_1756
59×unsub-neg_binary64_1777
57×neg-mul-1_binary64_1779
55×distribute-lft-neg-in_binary64_1740
53×log-div_binary64_1870 distribute-rgt-in_binary64_1733
51×cube-div_binary64_1812
47×+-commutative_binary64_1713
41×associate-+l-_binary64_1718
36×associate--l+_binary64_1720
35×distribute-lft-in_binary64_1732 associate-+l+_binary64_1716
33×associate-+r-_binary64_1717
32×div-exp_binary64_1834
31×*-rgt-identity_binary64_1773
28×distribute-rgt-out_binary64_1736 associate-+r+_binary64_1715
22×/-rgt-identity_binary64_1774
21×pow-plus_binary64_1846 sub0-neg_binary64_1770 +-rgt-identity_binary64_1768
20×associate--r+_binary64_1719
19×*-lft-identity_binary64_1772 distribute-rgt-out--_binary64_1737
18×distribute-lft-neg-out_binary64_1742
17×cube-unmult_binary64_1820
16×log-pow_binary64_1872
13×exp-sum_binary64_1829
difference-of-squares_binary64_1752 swap-sqr_binary64_1750
unpow3_binary64_1849 distribute-neg-in_binary64_1744
exp-diff_binary64_1831 distribute-lft-out_binary64_1734
log-rec_binary64_1871 unpow1/3_binary64_1850 rec-exp_binary64_1833 cube-mult_binary64_1813 rem-sqrt-square_binary64_1796 distribute-neg-frac_binary64_1747
exp-lft-sqr_binary64_1838 count-2_binary64_1731
exp-sqrt_binary64_1836 rem-log-exp_binary64_1824 remove-double-div_binary64_1759 difference-of-sqr--1_binary64_1754 difference-of-sqr-1_binary64_1753 distribute-neg-out_binary64_1745 distribute-rgt1-in_binary64_1739 distribute-lft-out--_binary64_1735
exp-neg_binary64_1830 rem-3cbrt-lft_binary64_1808 remove-double-neg_binary64_1771 distribute-lft1-in_binary64_1738
cosh-def_binary64_1969 unpow2_binary64_1848 pow-base-1_binary64_1843 unpow1_binary64_1841 1-exp_binary64_1827 rem-cbrt-cube_binary64_1807 mul0-rgt_binary64_1766 mul0-lft_binary64_1765 div0_binary64_1764 *-inverses_binary64_1763 +-inverses_binary64_1762 lft-mult-inverse_binary64_1761 distribute-rgt-neg-out_binary64_1743 associate--r-_binary64_1722 associate--l-_binary64_1721
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_2046 erf-erfc_binary64_2045 erf-odd_binary64_2044 if-if-and-not_binary64_2043 if-if-and_binary64_2042 if-if-or-not_binary64_2041 if-if-or_binary64_2040 if-not_binary64_2039 if-same_binary64_2038 if-false_binary64_2037 if-true_binary64_2036 not-gte_binary64_2035 not-lte_binary64_2034 not-gt_binary64_2033 not-lt_binary64_2032 gte-same_binary64_2031 lte-same_binary64_2030 gt-same_binary64_2029 lt-same_binary64_2028 sinh---cosh_binary64_1975 sinh-+-cosh_binary64_1974 sinh-cosh_binary64_1973 tanh-def-c_binary64_1972 tanh-def-b_binary64_1971 tanh-def-a_binary64_1970 sinh-def_binary64_1968 tan-neg_binary64_1915 cos-neg_binary64_1914 sin-neg_binary64_1913 tan-0_binary64_1912 cos-0_binary64_1911 sin-0_binary64_1910 hang-m-tan_binary64_1909 hang-p-tan_binary64_1908 hang-m0-tan_binary64_1907 hang-p0-tan_binary64_1906 hang-0m-tan_binary64_1905 hang-0p-tan_binary64_1904 tan-+PI/2_binary64_1903 tan-+PI_binary64_1902 tan-PI_binary64_1901 tan-PI/3_binary64_1900 tan-PI/4_binary64_1899 tan-PI/6_binary64_1898 cos-+PI/2_binary64_1897 cos-+PI_binary64_1896 cos-PI_binary64_1895 cos-PI/2_binary64_1894 cos-PI/3_binary64_1893 cos-PI/4_binary64_1892 cos-PI/6_binary64_1891 sin-+PI/2_binary64_1890 sin-+PI_binary64_1889 sin-PI_binary64_1888 sin-PI/2_binary64_1887 sin-PI/3_binary64_1886 sin-PI/4_binary64_1885 sin-PI/6_binary64_1884 sub-1-sin_binary64_1883 sub-1-cos_binary64_1882 -1-add-sin_binary64_1881 -1-add-cos_binary64_1880 1-sub-sin_binary64_1879 1-sub-cos_binary64_1878 cos-sin-sum_binary64_1877 log-E_binary64_1873 pow-base-0_binary64_1867 unpow1/2_binary64_1847 exp-to-pow_binary64_1845 unpow0_binary64_1842 unpow-1_binary64_1840 exp-lft-cube_binary64_1839 exp-cbrt_binary64_1837 e-exp-1_binary64_1828 exp-1-e_binary64_1826 exp-0_binary64_1825 rem-exp-log_binary64_1823 cube-neg_binary64_1810 rem-3cbrt-rft_binary64_1809 rem-cube-cbrt_binary64_1806 sqr-abs_binary64_1798 sqr-neg_binary64_1797 rem-square-sqrt_binary64_1795 mul-1-neg_binary64_1775 --rgt-identity_binary64_1769 +-lft-identity_binary64_1767 rgt-mult-inverse_binary64_1760 cancel-sign-sub_binary64_1748 distribute-frac-neg_binary64_1746
Counts
137 → 384
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02123048
13992932
210522258
338802164

prune946.0ms (11.8%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New3840384
Fresh000
Picked011
Done011
Total3842386
Error
0b
Counts
386 → 2
Compiler

Compiled 12040 to 7136 computations (40.7% saved)

regimes84.0ms (1%)

Accuracy

Total 0.1b remaining (99.7%)

Threshold costs 0.1b (99.7%)

Compiler

Compiled 624 to 488 computations (21.8% saved)

bsearch0.0ms (0%)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_1713
neg-mul-1_binary64_1779 neg-sub0_binary64_1778 sub-neg_binary64_1776 *-commutative_binary64_1714
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_2043 if-if-and_binary64_2042 if-if-or-not_binary64_2041 if-if-or_binary64_2040 if-not_binary64_2039 if-same_binary64_2038 if-false_binary64_2037 if-true_binary64_2036 tan-0_binary64_1912 cos-0_binary64_1911 sin-0_binary64_1910 unpow1_binary64_1841 e-exp-1_binary64_1828 1-exp_binary64_1827 exp-1-e_binary64_1826 exp-0_binary64_1825 sqr-abs_binary64_1798 sqr-neg_binary64_1797 unsub-neg_binary64_1777 mul-1-neg_binary64_1775 /-rgt-identity_binary64_1774 *-rgt-identity_binary64_1773 *-lft-identity_binary64_1772 remove-double-neg_binary64_1771 sub0-neg_binary64_1770 --rgt-identity_binary64_1769 +-rgt-identity_binary64_1768 +-lft-identity_binary64_1767 cancel-sign-sub-inv_binary64_1749 cancel-sign-sub_binary64_1748 distribute-neg-frac_binary64_1747 distribute-frac-neg_binary64_1746 distribute-neg-out_binary64_1745 distribute-neg-in_binary64_1744 distribute-rgt-neg-out_binary64_1743 distribute-lft-neg-out_binary64_1742 distribute-rgt-neg-in_binary64_1741 distribute-lft-neg-in_binary64_1740
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01017
11517
21717
31817
Proof
(log f64 (exp f64 (/ f64 2 (+ f64 (exp f64 h0) (exp f64 (neg f64 h0))))))

end0.0ms (0%)

sample720.0ms (9%)

Algorithm
intervals
Results
236.0ms8000×body128valid
Compiler

Compiled 217 to 172 computations (20.7% saved)

Profiling

Loading profile data...