Details

Time bar (total: 24.0s)

analyze4.0s (16.8%)

Algorithm
search
egg-herbie
Rules
966×distribute-rgt-in_binary64_1733
910×unsub-neg_binary64_1777
843×distribute-lft-in_binary64_1732
580×distribute-rgt-neg-out_binary64_1743
450×distribute-lft-neg-out_binary64_1742
437×neg-sub0_binary64_1778
376×neg-mul-1_binary64_1779
344×distribute-rgt-neg-in_binary64_1741
295×sub-neg_binary64_1776
276×*-commutative_binary64_1714
230×cancel-sign-sub-inv_binary64_1749
180×distribute-neg-out_binary64_1745
165×distribute-lft-neg-in_binary64_1740
160×associate-*l*_binary64_1724 associate-*r*_binary64_1723 associate--r+_binary64_1719
137×remove-double-neg_binary64_1771
130×distribute-neg-in_binary64_1744
113×+-commutative_binary64_1713
100×associate-+l-_binary64_1718
73×*-lft-identity_binary64_1772
67×mul0-rgt_binary64_1766 mul0-lft_binary64_1765
60×+-lft-identity_binary64_1767
55×sub0-neg_binary64_1770
51×*-rgt-identity_binary64_1773
50×associate--r-_binary64_1722
30×distribute-lft-out_binary64_1734
25×--rgt-identity_binary64_1769
20×cancel-sign-sub_binary64_1748 associate--l+_binary64_1720
10×associate-+r-_binary64_1717 associate-+l+_binary64_1716 associate-+r+_binary64_1715
distribute-rgt-out--_binary64_1737
+-rgt-identity_binary64_1768
distribute-lft-out--_binary64_1735
1-exp_binary64_1827
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 unpow3_binary64_1849 unpow2_binary64_1848 unpow1/2_binary64_1847 pow-plus_binary64_1846 exp-to-pow_binary64_1845 pow-base-1_binary64_1843 unpow0_binary64_1842 unpow1_binary64_1841 unpow-1_binary64_1840 exp-lft-cube_binary64_1839 exp-lft-sqr_binary64_1838 exp-cbrt_binary64_1837 exp-sqrt_binary64_1836 exp-prod_binary64_1835 div-exp_binary64_1834 rec-exp_binary64_1833 prod-exp_binary64_1832 exp-diff_binary64_1831 exp-neg_binary64_1830 exp-sum_binary64_1829 e-exp-1_binary64_1828 exp-1-e_binary64_1826 exp-0_binary64_1825 rem-log-exp_binary64_1824 rem-exp-log_binary64_1823 cube-unmult_binary64_1820 cube-mult_binary64_1813 cube-div_binary64_1812 cube-prod_binary64_1811 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 times-frac_binary64_1789 div-sub_binary64_1788 mul-1-neg_binary64_1775 /-rgt-identity_binary64_1774 div0_binary64_1764 *-inverses_binary64_1763 +-inverses_binary64_1762 lft-mult-inverse_binary64_1761 rgt-mult-inverse_binary64_1760 remove-double-div_binary64_1759 pow-sqr_binary64_1756 sqr-pow_binary64_1755 difference-of-sqr--1_binary64_1754 difference-of-sqr-1_binary64_1753 difference-of-squares_binary64_1752 unswap-sqr_binary64_1751 swap-sqr_binary64_1750 distribute-neg-frac_binary64_1747 distribute-frac-neg_binary64_1746 distribute-rgt1-in_binary64_1739 distribute-lft1-in_binary64_1738 distribute-rgt-out_binary64_1736 count-2_binary64_1731 associate-/l/_binary64_1730 associate-/r/_binary64_1729 associate-/l*_binary64_1728 associate-/r*_binary64_1727 associate-*l/_binary64_1726 associate-*r/_binary64_1725 associate--l-_binary64_1721
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0131605
1263605
2417605
3512605
4598605
51028605
6994605
71659605
82449605
92458605
102534605
112537605
122537605
132903605
142948605
152948605
164374605
174909605
055
155
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
0%99.8%0.2%9
0%99.8%0.2%10
1.2%98.6%0.2%11
1.4%98.4%0.2%12
10.8%88.9%0.2%13
10.8%88.9%0.2%14
Compiler

Compiled 34 to 24 computations (29.4% saved)

sample232.0ms (1%)

Algorithm
intervals
Results
150.0ms129×body1024valid
33.0ms39×body512valid
21.0ms80×body128valid
3.0msbody256valid
3.0msbody2048valid
Compiler

Compiled 67 to 52 computations (22.4% saved)

simplify47.0ms (0.2%)

Algorithm
egg-herbie
Rules
103×unsub-neg_binary64_1777
90×associate-*l*_binary64_1724
88×distribute-rgt-in_binary64_1733
82×cancel-sign-sub-inv_binary64_1749
80×associate-*r*_binary64_1723
70×distribute-rgt-neg-in_binary64_1741
58×distribute-lft-neg-out_binary64_1742
57×distribute-lft-in_binary64_1732
56×distribute-rgt-neg-out_binary64_1743
49×sub-neg_binary64_1776
41×neg-sub0_binary64_1778
40×distribute-lft-neg-in_binary64_1740
34×neg-mul-1_binary64_1779
33×associate--r+_binary64_1719
28×*-commutative_binary64_1714
25×distribute-neg-in_binary64_1744
21×mul0-rgt_binary64_1766 mul0-lft_binary64_1765
17×+-commutative_binary64_1713
14×associate-+l-_binary64_1718
13×*-lft-identity_binary64_1772
12×remove-double-neg_binary64_1771
sub0-neg_binary64_1770 +-lft-identity_binary64_1767
*-rgt-identity_binary64_1773
associate--l+_binary64_1720 associate-+l+_binary64_1716
mul-1-neg_binary64_1775
--rgt-identity_binary64_1769 associate--r-_binary64_1722 associate--l-_binary64_1721 associate-+r+_binary64_1715
+-rgt-identity_binary64_1768
1-exp_binary64_1827 cancel-sign-sub_binary64_1748 associate-+r-_binary64_1717
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 unpow3_binary64_1849 unpow2_binary64_1848 unpow1/2_binary64_1847 pow-plus_binary64_1846 exp-to-pow_binary64_1845 pow-base-1_binary64_1843 unpow0_binary64_1842 unpow1_binary64_1841 unpow-1_binary64_1840 exp-lft-cube_binary64_1839 exp-lft-sqr_binary64_1838 exp-cbrt_binary64_1837 exp-sqrt_binary64_1836 exp-prod_binary64_1835 div-exp_binary64_1834 rec-exp_binary64_1833 prod-exp_binary64_1832 exp-diff_binary64_1831 exp-neg_binary64_1830 exp-sum_binary64_1829 e-exp-1_binary64_1828 exp-1-e_binary64_1826 exp-0_binary64_1825 rem-log-exp_binary64_1824 rem-exp-log_binary64_1823 cube-unmult_binary64_1820 cube-mult_binary64_1813 cube-div_binary64_1812 cube-prod_binary64_1811 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 times-frac_binary64_1789 div-sub_binary64_1788 /-rgt-identity_binary64_1774 div0_binary64_1764 *-inverses_binary64_1763 +-inverses_binary64_1762 lft-mult-inverse_binary64_1761 rgt-mult-inverse_binary64_1760 remove-double-div_binary64_1759 pow-sqr_binary64_1756 sqr-pow_binary64_1755 difference-of-sqr--1_binary64_1754 difference-of-sqr-1_binary64_1753 difference-of-squares_binary64_1752 unswap-sqr_binary64_1751 swap-sqr_binary64_1750 distribute-neg-frac_binary64_1747 distribute-frac-neg_binary64_1746 distribute-neg-out_binary64_1745 distribute-rgt1-in_binary64_1739 distribute-lft1-in_binary64_1738 distribute-rgt-out--_binary64_1737 distribute-rgt-out_binary64_1736 distribute-lft-out--_binary64_1735 distribute-lft-out_binary64_1734 count-2_binary64_1731 associate-/l/_binary64_1730 associate-/r/_binary64_1729 associate-/l*_binary64_1728 associate-/r*_binary64_1727 associate-*l/_binary64_1726 associate-*r/_binary64_1725
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02355
13955
26155
37255
48355
510755
613455
716455
821755
921655
1024055
1127555
1231755
1343155
1448655
1553455
1656755
1752155
1852355
1952555
2052655
2146355

prune5.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
0.2b
Counts
2 → 1
Compiler

Compiled 66 to 46 computations (30.3% saved)

localize27.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.1b
(*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))
0.3b
(*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))))
0.3b
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))
0.5b
(-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))

rewrite154.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
11×pow1_binary64_1844 add-exp-log_binary64_1821 add-cbrt-cube_binary64_1819
add-sqr-sqrt_binary64_1805
add-cube-cbrt_binary64_1818 *-un-lft-identity_binary64_1783
add-log-exp_binary64_1822 associate-*r*_binary64_1723
pow-prod-down_binary64_1854 prod-exp_binary64_1832 cbrt-unprod_binary64_1816 associate-*l*_binary64_1724
*-commutative_binary64_1714
diff-log_binary64_1875 flip3--_binary64_1787 sub-neg_binary64_1776 flip--_binary64_1758 cancel-sign-sub-inv_binary64_1749 asin-acos_binary64_1963 sin-mult_binary64_1938 unswap-sqr_binary64_1751
Counts
4 → 57
Calls

4 calls:

11.0ms
(*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))
7.0ms
(*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))))
4.0ms
(-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))
1.0ms
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))
Compiler

Compiled 2634 to 438 computations (83.4% saved)

series1.7s (7.1%)

Error
0.2b
Counts
4 → 42
Calls

4 calls:

640.0ms
(-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))
550.0ms
(*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))))
355.0ms
(*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))
107.0ms
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))
Compiler

Compiled 4192 to 1991 computations (52.5% saved)

simplify171.0ms (0.7%)

Algorithm
egg-herbie
Rules
470×distribute-rgt-in_binary64_1733
384×distribute-rgt-neg-in_binary64_1741
362×*-commutative_binary64_1714
354×distribute-lft-in_binary64_1732
341×distribute-lft-neg-in_binary64_1740
297×cancel-sign-sub-inv_binary64_1749
268×neg-mul-1_binary64_1779
195×sub-neg_binary64_1776
191×unsub-neg_binary64_1777
180×associate-*l*_binary64_1724
175×sqr-pow_binary64_1755
146×associate-*r*_binary64_1723
135×neg-sub0_binary64_1778
105×unswap-sqr_binary64_1751
94×times-frac_binary64_1789
67×associate-+l+_binary64_1716
66×exp-prod_binary64_1835 associate-+r+_binary64_1715
64×distribute-neg-in_binary64_1744
59×distribute-lft-neg-out_binary64_1742
58×+-commutative_binary64_1713
50×distribute-rgt-out_binary64_1736
48×distribute-rgt-neg-out_binary64_1743
43×cube-prod_binary64_1811 pow-sqr_binary64_1756 distribute-neg-out_binary64_1745
41×rem-sqrt-square_binary64_1796
38×exp-sum_binary64_1829
34×log-prod_binary64_1869
32×swap-sqr_binary64_1750 associate-+l-_binary64_1718
30×distribute-rgt-out--_binary64_1737
27×sub0-neg_binary64_1770
24×mul0-rgt_binary64_1766 mul0-lft_binary64_1765
20×associate-+r-_binary64_1717
19×cube-unmult_binary64_1820 +-rgt-identity_binary64_1768
18×difference-of-squares_binary64_1752
16×*-lft-identity_binary64_1772
15×unpow3_binary64_1849 *-rgt-identity_binary64_1773
14×unpow1/2_binary64_1847 exp-diff_binary64_1831
10×div-sub_binary64_1788 associate-/l*_binary64_1728 associate--r+_binary64_1719
distribute-lft-out_binary64_1734
associate--l+_binary64_1720
cube-mult_binary64_1813 +-lft-identity_binary64_1767 associate-/r*_binary64_1727
remove-double-neg_binary64_1771
sqr-neg_binary64_1797 distribute-rgt1-in_binary64_1739
cube-neg_binary64_1810 --rgt-identity_binary64_1769 cancel-sign-sub_binary64_1748 distribute-frac-neg_binary64_1746 distribute-lft-out--_binary64_1735
cos-neg_binary64_1914 unpow2_binary64_1848 pow-plus_binary64_1846 unpow1_binary64_1841 distribute-lft1-in_binary64_1738 associate-/l/_binary64_1730 associate-*r/_binary64_1725
sin-neg_binary64_1913 div-exp_binary64_1834 1-exp_binary64_1827 exp-1-e_binary64_1826 count-2_binary64_1731 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 cosh-def_binary64_1969 sinh-def_binary64_1968 tan-neg_binary64_1915 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 pow-base-0_binary64_1867 unpow1/3_binary64_1850 exp-to-pow_binary64_1845 pow-base-1_binary64_1843 unpow0_binary64_1842 unpow-1_binary64_1840 exp-lft-cube_binary64_1839 exp-lft-sqr_binary64_1838 exp-cbrt_binary64_1837 exp-sqrt_binary64_1836 rec-exp_binary64_1833 prod-exp_binary64_1832 exp-neg_binary64_1830 e-exp-1_binary64_1828 exp-0_binary64_1825 rem-log-exp_binary64_1824 rem-exp-log_binary64_1823 cube-div_binary64_1812 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-square-sqrt_binary64_1795 mul-1-neg_binary64_1775 /-rgt-identity_binary64_1774 div0_binary64_1764 *-inverses_binary64_1763 +-inverses_binary64_1762 lft-mult-inverse_binary64_1761 rgt-mult-inverse_binary64_1760 remove-double-div_binary64_1759 difference-of-sqr--1_binary64_1754 difference-of-sqr-1_binary64_1753 distribute-neg-frac_binary64_1747 associate-/r/_binary64_1729 associate-*l/_binary64_1726
Counts
99 → 70
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01483281
13403064
29983001
317803001
430872999
547342999
649902999

prune158.0ms (0.7%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New61970
Fresh000
Picked101
Done000
Total62971
Error
0.1b
Counts
71 → 9
Compiler

Compiled 3364 to 633 computations (81.2% saved)

localize31.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.3b
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))
0.5b
(-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (cbrt.f64 (pow.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) 3)))))
0.6b
(pow.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) 3)
7.1b
(cbrt.f64 (pow.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) 3))

rewrite165.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
12×cbrt-prod_binary64_1814
10×add-cube-cbrt_binary64_1818 add-sqr-sqrt_binary64_1805 *-un-lft-identity_binary64_1783
add-log-exp_binary64_1822 unpow-prod-down_binary64_1862 cube-prod_binary64_1811
pow1_binary64_1844 add-exp-log_binary64_1821 add-cbrt-cube_binary64_1819
pow-unpow_binary64_1860
unpow3_binary64_1849 cube-mult_binary64_1813 sqr-pow_binary64_1755
pow1/3_binary64_1865 rem-cbrt-cube_binary64_1807 pow-pow_binary64_1855 pow-to-exp_binary64_1852 pow-exp_binary64_1851 rem-cube-cbrt_binary64_1806 diff-log_binary64_1875 flip3--_binary64_1787 sub-neg_binary64_1776 flip--_binary64_1758 cancel-sign-sub-inv_binary64_1749 asin-acos_binary64_1963
Counts
4 → 64
Calls

4 calls:

4.0ms
(-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (cbrt.f64 (pow.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) 3)))))
3.0ms
(pow.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) 3)
3.0ms
(cbrt.f64 (pow.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) 3))
1.0ms
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))
Compiler

Compiled 3426 to 786 computations (77.1% saved)

series1.4s (5.9%)

Error
0.1b
Counts
4 → 39
Calls

4 calls:

632.0ms
(-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (cbrt.f64 (pow.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) 3)))))
504.0ms
(pow.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) 3)
113.0ms
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))
108.0ms
(cbrt.f64 (pow.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))) 3))
Compiler

Compiled 3990 to 2058 computations (48.4% saved)

simplify237.0ms (1%)

Algorithm
egg-herbie
Rules
511×associate-*l*_binary64_1724
426×associate-*r*_binary64_1723
414×log-prod_binary64_1869
291×exp-prod_binary64_1835
247×distribute-rgt-in_binary64_1733
233×unswap-sqr_binary64_1751
226×cube-prod_binary64_1811
204×distribute-lft-in_binary64_1732
155×swap-sqr_binary64_1750
143×sqr-pow_binary64_1755
134×unpow3_binary64_1849
112×cancel-sign-sub-inv_binary64_1749
89×pow-plus_binary64_1846
85×distribute-rgt-neg-in_binary64_1741
82×log-pow_binary64_1872 distribute-lft-neg-in_binary64_1740
77×associate-+l+_binary64_1716 *-commutative_binary64_1714
61×associate-/l*_binary64_1728
54×sub-neg_binary64_1776
46×distribute-lft-neg-out_binary64_1742
41×pow-sqr_binary64_1756
39×distribute-rgt-neg-out_binary64_1743
32×distribute-rgt-out_binary64_1736
31×neg-sub0_binary64_1778
28×neg-mul-1_binary64_1779 unsub-neg_binary64_1777
26×associate-+l-_binary64_1718
25×cube-unmult_binary64_1820
21×+-commutative_binary64_1713
17×distribute-lft-out_binary64_1734
15×cube-mult_binary64_1813
14×associate-+r-_binary64_1717
13×exp-sum_binary64_1829
12×associate-/l/_binary64_1730
11×count-2_binary64_1731
10×rem-sqrt-square_binary64_1796 difference-of-squares_binary64_1752 associate-+r+_binary64_1715
sub0-neg_binary64_1770 associate--l+_binary64_1720 associate--r+_binary64_1719
associate-*r/_binary64_1725
+-rgt-identity_binary64_1768 mul0-rgt_binary64_1766 mul0-lft_binary64_1765 associate-/r*_binary64_1727
exp-diff_binary64_1831
unpow2_binary64_1848 rem-cbrt-cube_binary64_1807 *-rgt-identity_binary64_1773 *-lft-identity_binary64_1772 distribute-neg-in_binary64_1744
mul-1-neg_binary64_1775 associate-*l/_binary64_1726
unpow1/2_binary64_1847 unpow1_binary64_1841 distribute-rgt-out--_binary64_1737 distribute-lft-out--_binary64_1735 associate-/r/_binary64_1729
div-exp_binary64_1834 1-exp_binary64_1827 rem-3cbrt-lft_binary64_1808 rem-cube-cbrt_binary64_1806 sqr-neg_binary64_1797 rem-square-sqrt_binary64_1795 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 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-rec_binary64_1871 log-div_binary64_1870 pow-base-0_binary64_1867 unpow1/3_binary64_1850 exp-to-pow_binary64_1845 pow-base-1_binary64_1843 unpow0_binary64_1842 unpow-1_binary64_1840 exp-lft-cube_binary64_1839 exp-lft-sqr_binary64_1838 exp-cbrt_binary64_1837 exp-sqrt_binary64_1836 rec-exp_binary64_1833 prod-exp_binary64_1832 exp-neg_binary64_1830 e-exp-1_binary64_1828 exp-1-e_binary64_1826 exp-0_binary64_1825 rem-log-exp_binary64_1824 rem-exp-log_binary64_1823 cube-div_binary64_1812 cube-neg_binary64_1810 rem-3cbrt-rft_binary64_1809 sqr-abs_binary64_1798 times-frac_binary64_1789 div-sub_binary64_1788 /-rgt-identity_binary64_1774 remove-double-neg_binary64_1771 --rgt-identity_binary64_1769 +-lft-identity_binary64_1767 div0_binary64_1764 *-inverses_binary64_1763 +-inverses_binary64_1762 lft-mult-inverse_binary64_1761 rgt-mult-inverse_binary64_1760 remove-double-div_binary64_1759 difference-of-sqr--1_binary64_1754 difference-of-sqr-1_binary64_1753 cancel-sign-sub_binary64_1748 distribute-neg-frac_binary64_1747 distribute-frac-neg_binary64_1746 distribute-neg-out_binary64_1745 distribute-rgt1-in_binary64_1739 distribute-lft1-in_binary64_1738
Counts
103 → 55
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01073966
12183576
25753535
323173535
447923535
549243532
649833532
748713532

prune119.0ms (0.5%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New55055
Fresh088
Picked011
Done000
Total55964
Error
0.1b
Counts
64 → 9
Compiler

Compiled 2923 to 580 computations (80.2% saved)

localize42.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.3b
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))
0.3b
(*.f64 (cos.f64 delta) (cos.f64 delta))
0.4b
(pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) 3)
0.4b
(pow.f64 (cos.f64 delta) 3)

rewrite303.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
15×pow1_binary64_1844
14×add-sqr-sqrt_binary64_1805
12×add-cube-cbrt_binary64_1818 *-un-lft-identity_binary64_1783
10×add-exp-log_binary64_1821 add-cbrt-cube_binary64_1819
pow-unpow_binary64_1860
unpow-prod-down_binary64_1862 add-log-exp_binary64_1822 cube-prod_binary64_1811
pow-pow_binary64_1855 pow-exp_binary64_1851 rem-cube-cbrt_binary64_1806 swap-sqr_binary64_1750 associate-*l*_binary64_1724 associate-*r*_binary64_1723
pow-to-exp_binary64_1852 unpow3_binary64_1849 cube-mult_binary64_1813 sqr-pow_binary64_1755 pow-prod-down_binary64_1854 prod-exp_binary64_1832 cbrt-unprod_binary64_1816
sin-mult_binary64_1938 cube-div_binary64_1812 cos-mult_binary64_1937 sqr-cos-a_binary64_1932 pow2_binary64_1864 pow-prod-up_binary64_1853 pow-plus_binary64_1846 pow-sqr_binary64_1756 unswap-sqr_binary64_1751 *-commutative_binary64_1714 asin-acos_binary64_1963
Counts
4 → 81
Calls

4 calls:

6.0ms
(pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) 3)
5.0ms
(*.f64 (cos.f64 delta) (cos.f64 delta))
3.0ms
(pow.f64 (cos.f64 delta) 3)
2.0ms
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))
Compiler

Compiled 7686 to 986 computations (87.2% saved)

series1.5s (6.2%)

Error
0.1b
Counts
4 → 26
Calls

4 calls:

1.1s
(pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1))))))) 3)
143.0ms
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))
68.0ms
(pow.f64 (cos.f64 delta) 3)
43.0ms
(*.f64 (cos.f64 delta) (cos.f64 delta))
Compiler

Compiled 6684 to 2032 computations (69.6% saved)

simplify119.0ms (0.5%)

Algorithm
egg-herbie
Rules
653×sqr-pow_binary64_1755
355×*-commutative_binary64_1714
306×log-prod_binary64_1869
300×exp-prod_binary64_1835
284×associate-+l+_binary64_1716
235×cube-prod_binary64_1811
224×associate-+r+_binary64_1715
222×pow-sqr_binary64_1756
144×distribute-rgt-in_binary64_1733
137×distribute-lft-in_binary64_1732
136×swap-sqr_binary64_1750
122×associate-*r*_binary64_1723
115×associate-*l*_binary64_1724
89×associate-/l*_binary64_1728
79×unsub-neg_binary64_1777
69×unpow3_binary64_1849
66×cube-mult_binary64_1813 neg-mul-1_binary64_1779 distribute-rgt-neg-in_binary64_1741
64×distribute-lft-neg-in_binary64_1740
62×log-pow_binary64_1872 neg-sub0_binary64_1778
47×pow-plus_binary64_1846
46×sub-neg_binary64_1776
40×cancel-sign-sub-inv_binary64_1749
38×unswap-sqr_binary64_1751
25×count-2_binary64_1731
24×rem-sqrt-square_binary64_1796
23×distribute-rgt-out_binary64_1736
22×*-rgt-identity_binary64_1773
21×*-lft-identity_binary64_1772 +-commutative_binary64_1713
17×associate-/l/_binary64_1730
15×cube-unmult_binary64_1820
12×distribute-rgt-neg-out_binary64_1743 distribute-lft-neg-out_binary64_1742 associate-/r*_binary64_1727 associate-*r/_binary64_1725
11×times-frac_binary64_1789
10×distribute-lft-out_binary64_1734
mul0-rgt_binary64_1766 mul0-lft_binary64_1765
unpow1/2_binary64_1847 associate-/r/_binary64_1729
unpow2_binary64_1848
unpow1_binary64_1841 sub0-neg_binary64_1770 associate-+l-_binary64_1718
rem-cbrt-cube_binary64_1807 +-rgt-identity_binary64_1768 associate-*l/_binary64_1726 associate-+r-_binary64_1717
sqr-neg_binary64_1797 /-rgt-identity_binary64_1774 distribute-rgt-out--_binary64_1737
cos-neg_binary64_1914 cos-0_binary64_1911 1-exp_binary64_1827 exp-1-e_binary64_1826 cube-neg_binary64_1810 rem-cube-cbrt_binary64_1806 rem-square-sqrt_binary64_1795 remove-double-neg_binary64_1771 +-inverses_binary64_1762 distribute-lft-out--_binary64_1735
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 sin-neg_binary64_1913 tan-0_binary64_1912 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-rec_binary64_1871 log-div_binary64_1870 pow-base-0_binary64_1867 unpow1/3_binary64_1850 exp-to-pow_binary64_1845 pow-base-1_binary64_1843 unpow0_binary64_1842 unpow-1_binary64_1840 exp-lft-cube_binary64_1839 exp-lft-sqr_binary64_1838 exp-cbrt_binary64_1837 exp-sqrt_binary64_1836 div-exp_binary64_1834 rec-exp_binary64_1833 prod-exp_binary64_1832 exp-diff_binary64_1831 exp-neg_binary64_1830 exp-sum_binary64_1829 e-exp-1_binary64_1828 exp-0_binary64_1825 rem-log-exp_binary64_1824 rem-exp-log_binary64_1823 cube-div_binary64_1812 rem-3cbrt-rft_binary64_1809 rem-3cbrt-lft_binary64_1808 sqr-abs_binary64_1798 div-sub_binary64_1788 mul-1-neg_binary64_1775 --rgt-identity_binary64_1769 +-lft-identity_binary64_1767 div0_binary64_1764 *-inverses_binary64_1763 lft-mult-inverse_binary64_1761 rgt-mult-inverse_binary64_1760 remove-double-div_binary64_1759 difference-of-sqr--1_binary64_1754 difference-of-sqr-1_binary64_1753 difference-of-squares_binary64_1752 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-rgt1-in_binary64_1739 distribute-lft1-in_binary64_1738 associate--r-_binary64_1722 associate--l-_binary64_1721 associate--l+_binary64_1720 associate--r+_binary64_1719
Counts
107 → 84
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01272230
12542011
28941958
318351958
438691958
551401958

prune291.0ms (1.2%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New81384
Fresh167
Picked101
Done011
Total831093
Error
0.0b
Counts
93 → 10
Compiler

Compiled 8136 to 1206 computations (85.2% saved)

localize53.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.3b
(*.f64 (cos.f64 delta) (cos.f64 delta))
0.4b
(pow.f64 (sin.f64 phi1) 3)
0.4b
(pow.f64 (cos.f64 delta) 3)
0.5b
(pow.f64 (sin.f64 (asin.f64 (+.f64 (*.f64 (cos.f64 delta) (sin.f64 phi1)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))) 3)

rewrite368.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
19×add-sqr-sqrt_binary64_1805
17×add-cube-cbrt_binary64_1818 *-un-lft-identity_binary64_1783
14×pow1_binary64_1844
unpow-prod-down_binary64_1862 pow-unpow_binary64_1860 add-exp-log_binary64_1821 add-cbrt-cube_binary64_1819 cube-prod_binary64_1811
add-log-exp_binary64_1822
pow-pow_binary64_1855 pow-to-exp_binary64_1852 pow-exp_binary64_1851 unpow3_binary64_1849 cube-mult_binary64_1813 rem-cube-cbrt_binary64_1806 sqr-pow_binary64_1755 swap-sqr_binary64_1750 associate-*l*_binary64_1724 associate-*r*_binary64_1723
cos-mult_binary64_1937 sqr-cos-a_binary64_1932 pow2_binary64_1864 pow-prod-down_binary64_1854 pow-prod-up_binary64_1853 pow-plus_binary64_1846 prod-exp_binary64_1832 cbrt-unprod_binary64_1816 pow-sqr_binary64_1756 unswap-sqr_binary64_1751 *-commutative_binary64_1714
Counts
4 → 96
Calls

4 calls:

5.0ms
(*.f64 (cos.f64 delta) (cos.f64 delta))
4.0ms
(pow.f64 (sin.f64 (asin.f64 (+.f64 (*.f64 (cos.f64 delta) (sin.f64 phi1)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))) 3)
3.0ms
(pow.f64 (sin.f64 phi1) 3)
3.0ms
(pow.f64 (cos.f64 delta) 3)
Compiler

Compiled 9216 to 1402 computations (84.8% saved)

series1.0s (4.3%)

Error
0.0b
Counts
4 → 20
Calls

4 calls:

768.0ms
(pow.f64 (sin.f64 (asin.f64 (+.f64 (*.f64 (cos.f64 delta) (sin.f64 phi1)) (*.f64 (cos.f64 theta) (*.f64 (sin.f64 delta) (cos.f64 phi1)))))) 3)
77.0ms
(pow.f64 (sin.f64 phi1) 3)
70.0ms
(pow.f64 (cos.f64 delta) 3)
48.0ms
(*.f64 (cos.f64 delta) (cos.f64 delta))
Compiler

Compiled 5118 to 1795 computations (64.9% saved)

simplify111.0ms (0.5%)

Algorithm
egg-herbie
Rules
851×sqr-pow_binary64_1755
396×log-prod_binary64_1869
380×exp-prod_binary64_1835
352×*-commutative_binary64_1714
323×pow-sqr_binary64_1756
284×cube-prod_binary64_1811
129×swap-sqr_binary64_1750
123×associate-*r*_binary64_1723
121×distribute-rgt-in_binary64_1733
120×associate-*l*_binary64_1724
113×log-pow_binary64_1872
111×associate-/l*_binary64_1728
109×distribute-lft-in_binary64_1732
93×unpow3_binary64_1849
89×cube-mult_binary64_1813
83×pow-plus_binary64_1846
60×unswap-sqr_binary64_1751
40×count-2_binary64_1731
39×distribute-rgt-out_binary64_1736
38×rem-sqrt-square_binary64_1796
30×*-rgt-identity_binary64_1773
29×*-lft-identity_binary64_1772
26×+-commutative_binary64_1713
23×associate-+l+_binary64_1716 associate-+r+_binary64_1715
18×distribute-lft-out_binary64_1734
17×cube-unmult_binary64_1820 neg-mul-1_binary64_1779 sub-neg_binary64_1776 distribute-rgt-neg-in_binary64_1741 associate-/l/_binary64_1730
16×cancel-sign-sub-inv_binary64_1749
15×neg-sub0_binary64_1778 distribute-lft-neg-in_binary64_1740
12×unpow2_binary64_1848 associate-/r*_binary64_1727 associate-*r/_binary64_1725
11×times-frac_binary64_1789
unpow1/2_binary64_1847
associate-/r/_binary64_1729
unpow1_binary64_1841
rem-cbrt-cube_binary64_1807 unsub-neg_binary64_1777
rem-cube-cbrt_binary64_1806 rem-square-sqrt_binary64_1795 associate-*l/_binary64_1726
/-rgt-identity_binary64_1774 sub0-neg_binary64_1770 mul0-rgt_binary64_1766 mul0-lft_binary64_1765 associate-+l-_binary64_1718
cos-0_binary64_1911 1-exp_binary64_1827 exp-1-e_binary64_1826 +-rgt-identity_binary64_1768 +-inverses_binary64_1762 associate-+r-_binary64_1717
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 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-rec_binary64_1871 log-div_binary64_1870 pow-base-0_binary64_1867 unpow1/3_binary64_1850 exp-to-pow_binary64_1845 pow-base-1_binary64_1843 unpow0_binary64_1842 unpow-1_binary64_1840 exp-lft-cube_binary64_1839 exp-lft-sqr_binary64_1838 exp-cbrt_binary64_1837 exp-sqrt_binary64_1836 div-exp_binary64_1834 rec-exp_binary64_1833 prod-exp_binary64_1832 exp-diff_binary64_1831 exp-neg_binary64_1830 exp-sum_binary64_1829 e-exp-1_binary64_1828 exp-0_binary64_1825 rem-log-exp_binary64_1824 rem-exp-log_binary64_1823 cube-div_binary64_1812 cube-neg_binary64_1810 rem-3cbrt-rft_binary64_1809 rem-3cbrt-lft_binary64_1808 sqr-abs_binary64_1798 sqr-neg_binary64_1797 div-sub_binary64_1788 mul-1-neg_binary64_1775 remove-double-neg_binary64_1771 --rgt-identity_binary64_1769 +-lft-identity_binary64_1767 div0_binary64_1764 *-inverses_binary64_1763 lft-mult-inverse_binary64_1761 rgt-mult-inverse_binary64_1760 remove-double-div_binary64_1759 difference-of-sqr--1_binary64_1754 difference-of-sqr-1_binary64_1753 difference-of-squares_binary64_1752 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-rgt1-in_binary64_1739 distribute-lft1-in_binary64_1738 distribute-rgt-out--_binary64_1737 distribute-lft-out--_binary64_1735 associate--r-_binary64_1722 associate--l-_binary64_1721 associate--l+_binary64_1720 associate--r+_binary64_1719
Counts
116 → 75
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01311893
12641678
29441633
319941633
436901633
553241633

prune237.0ms (1%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New75075
Fresh088
Picked011
Done011
Total751085
Error
0.0b
Counts
85 → 10
Compiler

Compiled 6885 to 1023 computations (85.1% saved)

regimes1.8s (7.4%)

Accuracy

Total 0.1b remaining (57.8%)

Threshold costs 0.1b (57.8%)

Compiler

Compiled 26339 to 12936 computations (50.9% saved)

bsearch0.0ms (0%)

simplify8.0ms (0%)

Algorithm
egg-herbie
Rules
12×*-commutative_binary64_1714
+-commutative_binary64_1713
sub-neg_binary64_1776
neg-mul-1_binary64_1779 neg-sub0_binary64_1778
cancel-sign-sub-inv_binary64_1749 distribute-rgt-neg-in_binary64_1741
distribute-lft-neg-out_binary64_1742 distribute-lft-neg-in_binary64_1740
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_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
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
039145
153145
263145
369145
473145
574145
674145

end0.0ms (0%)

sample9.7s (40.5%)

Algorithm
intervals
Results
5.1s3992×body1024valid
986.0ms1329×body512valid
470.0ms2154×body128valid
255.0ms511×body256valid
42.0ms14×body2048valid
Compiler

Compiled 3864 to 1894 computations (51% saved)

Profiling

Loading profile data...