� I�g�x��<�dZddlmZmZd�Zd�Z �d%d�Zd�Zd�Zd �Z d Z d �Z d �Z d �Z e�d&d���Zd�Zd�Zd�Zed���Zed���Z gddg�d�ddg�d�ddg�d�ddg�d�d d!g�d�d"d#g�d�d$d%g�d�d&d'g�d�d(d)g�d�d*d+g�d�d,d-g�d�d.d/g�d�d0d1g�d�d2d3g�d4�d5d6g�d�d7d8g�d�d9d:g�d�d;d<g�d�d=d>g�d�d?d@g�d�dAdBg�d�dCdDg�d�dEdFg�d�dGdHg�d�dIdJg�d�dKdLg�d�dMdNg�d�dOdPg�d�dQdRg�d�dSdTg�d�dUdVg�d�dWdXg�d�dYdZg�d�d[d\g�d�d]d^g�d�d_d`g�d�dadbg�d�dcddg�d�dedfg�d�dgdhg�d�didjg�d�dkdlg�d�dmdng�d�dodpg�d�dqdrg�d�dsdtg�d�dudvg�d�dwdxg�d�dydzg�d�d{d|g�d�d}d~g�d�dd�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d4�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d͑d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d֑d�d�g�d�d�d�g�d͑d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d֑d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d�d�g�d�d��dg�d��d�dg��d��d�dg�d��d�dg�d��d�d g�d��d �d g�d��d �d g�d��d�dg�d��d�dg�d��d�dg�d��d�dg�d��d�dg�d��d�dg�d��d�dg�d��d�dg�d��d�dg�d��d �d!g�d��d"�d#g�d��d$�d%g�d��d&�d'g�d��d(�d)g�d��d*�d+g�d��d,�d-g�d��d.�d/g�d��d0�d1g�d͑�d2�d3g�d��d4�d5g�d��d6�d7g�d��d8�d9g�d��d:�d;g�d��d<�d=g�d��d>�d?g�d��d@�dAg�d��dB�dCg�d��dD�dEg�d��dF�dGg�d��dH�dIg�d��dJ�dKg�d��dL�dMg�d��dN�dOg��dP��dQ�dRg�d��dS�dTg�d��dU�dVg��dW��dX�dYg�d��dZ�d[g�d��d\�d]g�d��d^�d_g�d��d`�dag�d��db�dcg�d��dd�deg�d��df�dgg�d��dh�dig�d��dj�dkg�d��dl�dmg�d��dn�dog�d��dp�dqg�d��dr�dsg�d��dt�dug�d��dv�dwg�d��dx�dyg�d��dz�d{g�d��d|�d}g�d��d~�dg�d͑�d��d�g�d��d��d�g�d��d��d�g�d��d��d�g��dW��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d֑�d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��dd�g�d��dĐd�g�d��dƐd�g�d��dȐd�g�d��dʐd�g�d��d̐d�g�d��dΐd�g�d��dАd�g�d��dҐd�g�d��dԐd�g�d��d֐d�g�d��dؐd�g�d��dڐd�g�d��dܐd�g�d֑�dސd�g�d��d��d�g�d��d�d�g�d��d�d�g�d��d�d�g�d��d�d�g�d��d�d�g�d��d�d�g�d��d�d�g�d��d�d�g�d��d�d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g��d��d��d�g�d��d�dg�d��d�dg�d��d�dg�d��d�dg�d��d�d g�d��d �d g�d��d �d g�d��d�dg�d��d�dg�d��d�dg�d��d�dg�d��d�dg�d4��d�dg�d��d�dg�d��d�dg�d��d�dg�d��d �d!g�d��d"�d#g�d��d$�d%g��dW��d&�d'g�d��d(�d)g�d��d*�d+g�d��d,�d-g�d��d.�d/g�d��d0�d1g�d��d2�d3g�d��d4�d5g�d��d6�d7g�d��d8�d9g�d��d:�d;g�d��d<�d=g�d��d>�d?g�d��d@�dAg�d��dB�dCg�d��dD�dEg�d��dF�dGg�d��dH�dIg�d��dJ�dKg�d��dL�dMg�d��dN�dOg�d֑�dP�dQg�d��dR�dSg�d��dT�dUg�d��dV�dWg�d��dX�dYg�d��dZ�d[g�d��d\�d]g�d��d^�d_g�d��d`�dag�d��db�dcg�d��dd�deg�d��df�dgg�d��dh�dig�d��dj�dkg�d��dl�dmg�d��dn�dog�d��dp�dqg�d��dr�dsg�d��dt�dug�d��dv�dwg�d��dx�dyg�d��dz�d{g�d��d|�d}g�d��d~�dg�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d4��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g��dW��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g��d���d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g��d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��dÐd�g�d��dŐd�g�d��dǐd�g�d��dɐd�g�d��dːd�g�d��d͐d�g�d��dϐd�g��dW��dѐd�g�d��dӐd�g�d��dՐd�g�d��dאd�g�d͑�dِd�g�d��dېd�g�d��dݐd�g�d��dߐd�g�d��d�d�g�d͑�d�d�g�d��d�d�g�d��d�d�g�d��d�d�g�d��d�d�g�d֑�d�d�g�d��d�d�g�d��d�d�g�d��d�d�g�d֑�d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��d�g�d��d��dg�d��d�dg�d��d�dg�d��d�dg�d��d�dg�d��d �d g�d��d��d�g��d���d �d g��d���d �dg��d��d�dg��d��d�dg��d��d�dg��d���d�dg��d��d�dg��d���d�dg��d��d�d g��d��d!�d"g��d��d#�d$g��d�ZdS('a� The function zetazero(n) computes the n-th nontrivial zero of zeta(s). The general strategy is to locate a block of Gram intervals B where we know exactly the number of zeros contained and which of those zeros is that which we search. If n <= 400 000 000 we know exactly the Rosser exceptions, contained in a list in this file. Hence for n<=400 000 000 we simply look at these list of exceptions. If our zero is implicated in one of these exceptions we have our block B. In other case we simply locate the good Rosser block containing our zero. For n > 400 000 000 we apply the method of Turing, as complemented by Lehman, Brent and Trudgian to find a suitable B. �)�defun� defun_wrappedc��ttt��dz��D]�}td|zd}td|zd}||dz kr�|dz |kr�|�|��}|�|��}|j�|��}|j�|��}||z dz } ||z } td|zdz} | ||g||g||gfcS��|dz }t ||��\} } }| g}| g}|dkrK|dz}t ||��\} } }|�d| ��|�d| ��|dk�K||z dz } |dz }t ||��\} } }|�| ��|�| ��|dkrI|dz }t ||��\} } }|�| ��|�| ��|dk�I| ||g||fS)z;for n<400 000 000 determines a block were one find our zero��r) �range�len�_ROSSER_EXCEPTIONS� grampoint�_fp�siegelz�compute_triple_tvb�insert�append)�ctx�n�k�a�b�t0�t1�v0�v1�my_zero_number�zero_number_block�pattern�t�v�T�V�ms �j/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/mpmath/functions/zetazeros.py�find_rosser_block_zeror#s)�� �3�)�*�*�A�-� .� .� =� =�� �Q�q�S� !�!� $�� �Q�q�S� !�!� $�� ��1��W�W�1�Q�3�!�8�8����q�!�!�B����q�!�!�B������$�$�B������$�$�B��q�S��U�N� !�!�� �(��1��Q��/�G�"�Q�q�E�B�r�7�R��G�<� <� <� <�� �!��A� �s�A� &� &�E�A�a�� ��A� ��A� �a�%�%� �Q���"�3��*�*���!�A� ����1� � � � ����1� � � � �a�%�%� �q�S��U�N� �!��A� �s�A� &� &�E�A�a���H�H�Q�K�K�K��H�H�Q�K�K�K� �a�%�%� �Q���"�3��*�*���!�A� ���� � � � ���� � � � �a�%�%� �Q�q�E�1�a� (�(�c�:�d}|dkrd}|dkrd}|dkrd}|S)z(Precision needed to compute higher zeros�5i���?lh�]�F�@� �k�S�)r�wps r"�wpzerosr-7s6�� �B��7�{�{� ���6�z�z� ���6�z�z� �� �Ir$Nc���|��j}d}t|��}||k�r�||k�r�|d}|d} |g} | g} d}tdt|����D�]%} || } || }|| zdkr'��|| z ��}||z| z|dzz }n|| zdz }|dkrC�j�|��}t|��|kr��|��}n��|��}| |zdkr|dz }| �|��| �|��|| }||zdkr|dz }| �| ��| �|��| }|} ��'| }| }|dz }|tkr�|dkr�|dz|kr�d}d}d}tdt|����D]1}||||dz z }||kr|}|}|}�#||kr||kr|}�2|d|zkr��fd�}||dz }||}�� |||fdd d � ��}��|��} ||krA||kr;| ||zdkr,|� ||��|� || ��t|��}||kr||k���||krd }nd }|||fS) z^Separate the zeros contained in the block T, limitloop determines how long one must searchNrrr� �c�2����|d���S)Nr�� derivative)�rs_z��xrs �r"�<lambda>z)separate_zeros_in_block.<locals>.<lambda>ys���c�h�h�q�A�h�6�6�r$�illinoisF)�solver�verify�verboseT) �inf�count_variationsrr �sqrtr r �absr�ITERATION_LIMIT�findrootr)rrrr � limitloop� fp_tolerance� loopnumber� variationsrr�newT�newVr�b2�u�alphar�w�dtMax�dtSec�kMax�k1�dt�frrr� separateds` r"�separate_zeros_in_blockrSBs<������G� ��J�!�!�$�$�J� �*� *� *��Y�1F�1F� �a�D�� �a�D���s���s��� ��q��Q����� � �A��1��B��!��A��!��A�������1�� � ���!�G�B�J��q��)����r�T�1�H���b� � ��G�O�O�A�&�&���q�6�6�,�&�&�� � �A���A���+�+�a�.�.����s�1�u�u��a�� � �K�K��N�N�N� �K�K��N�N�N��!��A���s�A�v�v��a�� � �K�K��O�O�O� �K�K��N�N�N��A��A�A� �� ���Q�� � �o� %� %�*�Q�,�,�:�a�<�IZ�;Z�;Z��E��E��D��A�c�!�f�f�o�o� � ���r�U�1�R��T�7�]����:�:��D�!�E��E�E��%�x�x�R��Y�Y��E���Q�u�W�}�}�6�6�6�6���T�!�V�9���t�W���,�,�q�B�r�7�J�e�UZ�,�[�[���K�K��N�N���q�D�D�q��t�t�!�A�d�G�)�A�+�+��H�H�T�!�$�$�$��H�H�T�!�$�$�$�%�a�(�(� �o �*� *� *��Y�1F�1F�p�&�&�&�� � �� � �a�� �r$c�p��d}|d}tdt|����D]&}||} || zdkr|dz }||kr|} |} | } | }�'|| } || dz }|�_t|��|��z��}d��|��z}�jdzg}d}|dd|zkr,|dz }|ddzdzd|zzg|z}|dd|zk�,|d|z�_���fd�|| fdd� ��}��d |��}|dd �D]e}||z�_|��|����|d� ��z z }��d �� |����}�f�� |��S) zPIf we know which zero of this block is mine, the function separates the zerorr�rr0c�.����|��S)N�r r5s �r"r7z"separate_my_zero.<locals>.<lambda>�s���c�k�k�!�n�n�r$r8F)r9r;��?Nr2) rr �precr-�log�magrA�mpc�zeta�im)rrrrr rYrErrr�k0�leftv�rightvrr�wpz�guard�precs�index�r�z�znews` r"�separate_my_zerori�s�����J� �1��B� �1�S��V�V�_�_���� �q�T�� �b�5�1�9�9� ��N�J��^�+�+������� ��� �2��B� �2�a�4��B��C�H� �.�����!8�!8�8� 9� 9�C� �c�g�g�n�%�%� %�E� �X�a�Z�L�E� �E� ��(�Q�s�U� � � �� ���q��Q���!�!�E�'�)�*�U�2�� ��(�Q�s�U� � ��Q�x�%��C�H� � � �,�,�,�,�r�"�g�z�SX� �Y�Y�A� �g�g�c�!�n�n�A��a�b�b� �$�$���%�<����3�8�8�A�;�;����!���!:�!:�:�:�� �'�'�#�c�f�f�T�l�l� #� #��� �6�6�!�9�9�r$c��|dkrdS|�|dz ��}|j�|��}d|dzzd|zz}d|dzzd|zz}|�t ||����}t |��}|S)aThe number of good Rosser blocks needed to apply Turing method References: R. P. Brent, On the Zeros of the Riemann Zeta Function in the Critical Strip, Math. Comp. 33 (1979) 1361--1372 T. Trudgian, Improvements to Turing Method, Math. Comp.i�� r�dg�HP�x?g{�G�z�?ga��+ei?g)\���(�?)r r �ln�ceil�min�int)rr�g�lg�brent�trudgian�Ns r"�sure_number_blockru�s��� �7�{�{��q� � � �a��e���A� ����A���B� �R��U�N�D��G� #�E���A��~�t�B�w�&�H� ����U�8�$�$�%�%�A� �A���A� �Hr$c��|�|��}|j�|��}|�t |����|�|��dz kr|�|��}|d|zz}|||fS)N�-�����)r r r r[r?)rrrrrs r"rr�sv�� � � �a���A� �������A� �w�w�s�1�v�v���s�w�w�q�z�z�"�}�$�$� �K�K��N�N�� �2��'� �A� �Q�q�5�Lr$rUc�L �t||��}d}|dz }t||��\}}}|g} |g} |dkrI|dz }t||��\}}}| �|��| �|��|dk�I|g} |g} |g} |d|zk�rC|dz }t||��\}}}| �|��| �|��|dkrI|dz }t||��\}}}| �|��| �|��|dk�I| �|��t| ��dz }t ||| | t |���\}}}| ���| �|��| ���| �|��|r|dz }nd}|g} |g} |d|zk��Cd}|dz }t||��\}}}| �d|��| �d|��|dkrK|dz}t||��\}}}| �d|��| �d|��|dk�K| �d|��|g} |g} |d|zk�r(|dz}t||��\}}}| �d|��| �d|��|dkrK|dz}t||��\}}}| �d|��| �d|��|dk�K| �d|��t| ��dz }t ||| | t |���\}}}|���|| z} |���|| z} |r|dz }nd}|g} |g} |d|zk��(| d|z}t| ��}| |d|zz dz }t||��\}}}| � |��}t||��\}}}| � |��}| ||dz�} | ||dz�} ||z }t ||| | t |���\}}}|r||z dz ||g||fS| |}t| ��}| ||z dz }t||��\}}} | � |��}!t||��\}"}#}$| � |"��}%| |!|%dz�} | |!|%dz�} ||z dz ||g| | fS)zTo use for n>400 000 000rrr�rBrC) rurrr rSr@�pop�extendrre)&rrrC�sb�number_goodblocks�m2rrr�Tf�Vf� goodpointsrr �zn�A�BrRrfrq�s�tr�vr�br�ar�ts�vs�bs�as1�q�tq�vq�bq�aq�tt�vt�bt�ats& r"�search_supergood_blockr��s��� �3�� "� "�B��� �1��B� ��b�)�)�G�A�q�!� ��B� ��B� �a�%�%� �a���"�3��+�+���!�A� � � �!� � � � � � �!� � � � �a�%�%� ��J� ��A� ��A� �a��d� "� "� �a���$�S�"�-�-���1�a� ���� � � � ���� � � ��!�e�e� �!�G�B�&�s�B�/�/�E�A�a�� �H�H�Q�K�K�K� �H�H�Q�K�K�K� �!�e�e� ���"���� ��V�V�A�X�� "�3��A�q�O�)� +� +� +� ��1�i� ������ � � �!� � � � ������ � � �!� � � � � "� �� "� � � !� � �C�� �C��1 �a��d� "� "�4�� �1��B� ��b�)�)�G�A�q�!��I�I�a��N�N�N��I�I�a��N�N�N� �a�%�%� �a���"�3��+�+���!�A� � � �!�A���� � � �!�A���� �a�%�%� ���a����� ��A� ��A� �a��d� "� "� �a���$�S�"�-�-���1�a� ����1� � � � ����1� � � ��!�e�e� �!�G�B�&�s�B�/�/�E�A�a�� �H�H�Q�q�M�M�M� �H�H�Q�q�M�M�M� �!�e�e� ���!�B���� ��V�V�A�X�� "�3��A�q�O�Zf� g� g� g� ��1�i� ������ �r�T�� ������ �r�T�� � "� �� "� � � !� � �C�� �C��/ �a��d� "� "�0 �1�R�4��A� �Z���B��2�a��d�7�1�9��A�#�C��+�+�J�B��B� ���"���B�#�C��+�+�J�B��B� �(�(�2�,�,�C� �2�c�!�e�8� �A� �2�c�!�e�8� �A� �1��B��s�B�q��_�S_�`�`�`��A�q�)��!��!��A��q��e�A�a� � ��2��A� �Z���B��2�b�5��7��A�#�C��+�+�J�B��B� ���"���B�#�C��+�+�J�B��B� ���"���B� �2�b��d�7� �A� �2�b��d�7� �A� �a�C��E�1�Q�%��!� �r$c��d}|d}tdt|����D]}||}||zdkr|dz }|}�|S�Nrr)rr )r �count�voldr�vnews r"r=r=2sZ�� �E� �Q�4�D� �1�c�!�f�f� � ������t�� ��9�q�=�=� �A�I�E���� �Lr$c���d}|d}|d}t||��\}}} d} d} t|dz|dz��D]�} t|| ��\} }}t|��}| |kr#|| | kr| dz } | |kr || | k�|| | �}|�|��|�d|��t |��}|d|zz}|dkr|dz}| } | ||} }}��|dd�}|S)N�(rrz%sz)(rx)rrr rrr=)r�blockrr rrrrr�b0rr_rrr�b1�lgT�Lr�s r"�pattern_constructr�<s,���G� �a��A� �a��A�!�#�q�)�)�H�B�r�"� �A� �B� �1�Q�3�q��s�^�^� � ��%�c�1�-�-���2�b� ��V�V���3�w�w�Q�q�T�R�Z�Z� ��F�A��3�w�w�Q�q�T�R�Z�Z� �b��d�G�� ���� � � � ����2���� ��#�#���T�E�\�*�� ��6�6���n�G� ���b��b�2����c�r�c�l�G� �Nr$FTc��t|��}|dkr(|�| �����S|dkrtd���|j} t ||��\}}||_|dkrt ||��\}}} } nt|||��\}}} } |d|dz } t|| | | |j |���\} } } |rt||| | ��} t||��}t||| | | |��}|� d|��}||_n #||_wxYw|r| }|r|||| fS|S)a� Computes the `n`-th nontrivial zero of `\zeta(s)` on the critical line, i.e. returns an approximation of the `n`-th largest complex number `s = \frac{1}{2} + ti` for which `\zeta(s) = 0`. Equivalently, the imaginary part `t` is a zero of the Z-function (:func:`~mpmath.siegelz`). **Examples** The first few zeros:: >>> from mpmath import * >>> mp.dps = 25; mp.pretty = True >>> zetazero(1) (0.5 + 14.13472514173469379045725j) >>> zetazero(2) (0.5 + 21.02203963877155499262848j) >>> zetazero(20) (0.5 + 77.14484006887480537268266j) Verifying that the values are zeros:: >>> for n in range(1,5): ... s = zetazero(n) ... chop(zeta(s)), chop(siegelz(s.imag)) ... (0.0, 0.0) (0.0, 0.0) (0.0, 0.0) (0.0, 0.0) Negative indices give the conjugate zeros (`n = 0` is undefined):: >>> zetazero(-1) (0.5 - 14.13472514173469379045725j) :func:`~mpmath.zetazero` supports arbitrarily large `n` and arbitrary precision:: >>> mp.dps = 15 >>> zetazero(1234567) (0.5 + 727690.906948208j) >>> mp.dps = 50 >>> zetazero(1234567) (0.5 + 727690.9069482075392389420041147142092708393819935j) >>> chop(zeta(_)/_) 0.0 with *info=True*, :func:`~mpmath.zetazero` gives additional information:: >>> mp.dps = 15 >>> zetazero(542964976,info=True) ((0.5 + 209039046.578535j), [542964969, 542964978], 6, '(013111110)') This means that the zero is between Gram points 542964969 and 542964978; it is the 6-th zero between them. Finally (01311110) is the pattern of zeros in this interval. The numbers indicate the number of zeros in each Gram interval (Rosser blocks between parenthesis). In this case there is only one Rosser block of length nine. rzn must be nonzero���rrzrX)ro�zetazero� conjugate� ValueErrorrY�comp_fp_tolerancer#r�rSr<r��maxrir\)rr�info�round� wpinitialrbrCrr�rr rrRrrYrrs r"r�r�Ts���x �A���A��1�u�u��|�|�Q�B���)�)�+�+�+��A�v�v��,�-�-�-���I��-�c�1�5�5���\���� �y�=�=� #�C�� +� +� (�N�E�1�a�a�$�C��L� 9� 9� (�N�E�1�a�!�!�H�U�1�X�-��1�#�7H�!�Q��g�L�:�:�:���1�i� � 7�'��E�!�A�6�6�G��9�c�"�"�� �S�.�2C�A�a�� M� M�� �G�G�C��N�N�������9������� �� �2�� ���%��w�/�/��s �C D,�, D5c���|dkrd|�|d��z}nd}|j} |xj|z c_t|�|��|jz ��}||_n #||_wxYw|S)Nl �a$r0r/r)rZrYro� siegeltheta�pi)rrr,rY�hs r"� gram_indexr��s����6�z�z� �s�w�w�q�"�~�~� ��� �� �8�D�� ���B���� �����"�"�3�6�)� *� *�������4������� �Is �:A-�- A6c���d}|d}|d}|d}d}||kr+||} || zdkr|dz }| }|dz }||}||k�+|�|��} | |zdkr|dz }|Sr�rW) rrrr r�r��told�tnewrr�rs r"�count_tor��s��� �E� �Q�4�D� �Q�4�D� �Q�4�D� �A� ��(�(���t�� ��9�q�=�=� �Q�J�E��� �Q�����t�� ��(�(� � � �A���A���v��z�z� �� �� �Lr$c�|�t||�|��z��}|dkrd}n |dkrd}nd}||fS)Ni/hYg����Mb@?r)g�������?rk)r-rZ)rrrbrCs r"r�r��sM�� �!�C�G�G�A�J�J�,� � �C��8�|�|�� � � �f���� � �� � � � �r$c��|dkrdSt||��}t|�|����}|j}t ||��\}}||_|�|��}|dkr|dkrdS|dkr|dkrdS|dzdkrt ||dz��}nt||dz|��}|d\} } | | z dkr/|dd} || zdkr ||_|dzS||_|dzS|\} } }}| | z }t|||||j |���\}}}t||||��}||_|| zdzS) a Computes the number of zeros of the Riemann zeta function in `(0,1) \times (0,t]`, usually denoted by `N(t)`. **Examples** The first zero has imaginary part between 14 and 15:: >>> from mpmath import * >>> mp.dps = 15; mp.pretty = True >>> nzeros(14) 0 >>> nzeros(15) 1 >>> zetazero(1) (0.5 + 14.1347251417347j) Some closely spaced zeros:: >>> nzeros(10**7) 21136125 >>> zetazero(21136125) (0.5 + 9999999.32718175j) >>> zetazero(21136126) (0.5 + 10000000.2400236j) >>> nzeros(545439823.215) 1500000001 >>> zetazero(1500000001) (0.5 + 545439823.201985j) >>> zetazero(1500000002) (0.5 + 545439823.325697j) This confirms the data given by J. van de Lune, H. J. J. te Riele and D. T. Winter in 1986. g%f���D,@rrxrrr�r0rz) r�ro�floorrYr�r r#r�rSr<r�)rrr6rr�rbrCr�Rblock�n1�n2rrr�rr rrRrs r"�nzerosr��s���J � ����q��3����A� �C�I�I�a�L�L���A���I�)�#�q�1�1��C���C�H� � � �A���A��B�w�w�1�q�5�5��q� �b���Q��U�U��q���s�Y���'��Q�q�S�1�1���'��Q�q�S�,�?�?�� �A�Y�F�B�� �"�u��z�z� �1�I�a�L�� �Q�3��7�7� �C�H��Q�3�J� �C�H��Q�3�J�!'��N�5�!�Q��2���-�c�.?��A�8;��9E�G�G�G�O�A�q�)� ��a��A���A��C�H� �R�4��6�Mr$c�n�|�|��dz |�|��|jz z S)aw Computes the function `S(t) = \operatorname{arg} \zeta(\frac{1}{2} + it) / \pi`. See Titchmarsh Section 9.3 for details of the definition. **Examples** >>> from mpmath import * >>> mp.dps = 15; mp.pretty = True >>> backlunds(217.3) 0.16302205431184 Generally, the value is a small number. At Gram points it is an integer, frequently equal to 0:: >>> chop(backlunds(grampoint(200))) 0.0 >>> backlunds(extraprec(10)(grampoint)(211)) 1.0 >>> backlunds(extraprec(10)(grampoint)(232)) -1.0 The number of zeros of the Riemann zeta function up to height `t` satisfies `N(t) = \theta(t)/\pi + 1 + S(t)` (see :func:nzeros` and :func:`siegeltheta`):: >>> t = 1234.55 >>> nzeros(t) 842 >>> siegeltheta(t)/pi+1+backlunds(t) 842.0 r)r�r�r�)rrs r"� backlundsr�!s1��H �:�:�a�=�=��?�3�?�?�1�-�-�c�f�4� 4�4r$i���i���z(00)3ia��id��i���i���z3(00)i��=i��=i �oi�oiK��iN��i�'�i�'�iD�iD�i�5�i�5�i�"i�"i͜JiМJi+�di.�diOe�iRe�i6٧i:٧z(00)40i �(i�(iR4yiU4yi�ýi�ýi�e�i�e�i���i���i2�i5�i^RiaRi�(i�(iL�=iO�=i�Gi"�Giv�i"v�i���i���i��i��i Ui Ui��_i��_i�ei�ei��hi��hi$.�i'.�i�;�i�;�i��i��i�~)i�~)i�<i �<i�@i�@iZ�Di]�Dip�Nis�Ni�b�i�b�i(�i(�i���i���ivx�iyx�i���i���ik��in��i7�/i:�/i�(7i�(7io�Eir�EiOeIiReIi��pi��pi5�i5�i ��i��iEŵiHŵi:��i=��i#��i&��i� i� i.� i1� i�� iÁ i&�& i)�& iĺ? iǺ? iϴB iҴB i��_ i��_ i�_ i�_ i�&g i�&g itqo iwqo i� � i� � ic�� if�� i�=� i�=� i�v� i�v� i��� i��� id�� ig�� iL � iO � i�; i�; i�0 i�0 iS�' iV�' i�, i�, i��@ i�@ i�1T i�1T i�[ i�[ i�` i��` i�`c i�`c i��f i��f i�!y i�!y i�Պ i�Պ i�� i�� i �� i�� iWC� iZC� i>h� iAh� i[b� i^b� i��� i��� z22(00)iǂ� iʂ� it4d iw4d i��d i��d i��f i�f z(00)22i�y i�y i��� i��� iך i ך i�׬ i�׬ is� is� i��� i��� i� � i� � iZ�� i]�� i�t� i�t� i�� i�� i!� i!� i�{� i�{� i"�� i%�� i�y i�y i{� i~� i�i i�i i=& i=& i�|E i�|E iw�L iz�L i�Y i�Y ioY irY i��] i��] z3(010)i$�` i'�` i��f i��f iˁg i΁g ib�| ie�| i�`� i�`� i3�� i6�� i��� i��� i߀� i�� i(>� i+>� iO� iR� i�� i�� i��� iÀ� i�� i�� i�� i�� ie� ih� ij� im� i.W i1W i0` i3` i)T/ i,T/ i �S i �S i�X i�X i]�Y i`�Y i<Ng i@Ng i��m i��m i�� i�� i*� i-� i w� iw� i_� ib� i�٤ i�٤ i�� i�� i=g� i@g� i�#� i�#� i��� i��� i`~� ic~� ib� ie� i?�iB�i<�i?�i�7(i�7(z04(00)i//Ni2/Niz|Qi}|Qi�Nci�Ncz(010)3i˾eiξei��hi��hiD�hiG�hihʇikʇi��i��i��i��i��i��ii��il��i�Цi�ЦiS;�iV;�i��i��i%�i(�i���i���i-� i0� i'i*i55i55i�Z7i�Z7i"Mi"Mi��`i��`iS�giW�gi��ti�ti?��iB��i�v�i�v�i���i���i"A�i%A�i�k�i�k�i#��i&��i��i��i��i ��i�0�i�0�i[��i^��iX�i[�i�R%i�R%iO'iR'iz�7i}�7iaI?idI?i!�Wi$�WiKYiNYi��hi��hi�}li�}lio�qir�qih�rik�ri y�iy�i���i���i��i��i(�i (�i$ �i' �im(�ip(�i[�i^�iѓ�iԓ�iqx�itx�i@Q�iCQ�i�S�i�S�iC�iF�ie,�ih,�iw)�iz)�iߥi�i8�i;�i��i��i��i��i��i��ic�!if�!i��'i��'i��(i��(i�:6i�:6i��Ji��Ji��Oi��Oi]�^i`�^iq�sit�sie�xih�xi&�|i)�|i�"�i�"�i�b�i�b�i��i��i��i���iA��iD��i��i��i�a�i�a�i��i��i��i��i�i�i�1!i�1!iʺ*iκ*iP�2iS�2i�.Ii�.Ii�;Mi�;Mi��Si��Si��di��dij�nim�ni���i���iɭ�i̭�iI�iL�i���i���i!�i!�i�ڜi�ڜi�k�i�k�i�*�i�*�i��i��i��i��ii��il��i'D�i*D�i��i��i~�i��i)��i,��iF�iI�iK\iN\izB-i}B-i*Vi*Vi��mi��mi��xi��xiPyiSyi׸�iڸ�i$Îi'Îiĩ�iǩ�i�ϐi�ϐi���i���i��i��im�ip�i�5�i�5�i�%�i�%�i>K�iAK�i{~�i~~�iV �iY �iH�iH�i���i���i�*�i�*�i��i��i�i�i3�i6�i�i�i�i�i�Y#i�Y#i��#i��#i��$i��$iN�giQ�gid�lig�li�ůi�ůi�p�i�p�i�\�i�\�i׊�iڊ�iN��iQ��i��i���i��i��i�A�i�A�i .�i .�i�2�i�2�i�p�i�p�i��i��i��i��i�ii'�*i*�*iZ35i^35i�<7i�<7i'�=i*�=i�Ai�Ai��Ei�Ei��Ei��Ei�PUi�PUi�{Xi�{Xi�fi�fi���i���in��ir��i�1�i�1�i@�i@�i���i���i?�i?�i��i��i���i���i*��i-��i$�i$�z04(010)i9��i<��i��i��iImiLmi�si�siІ4iԆ4iZ�6i]�6i�;i�;i�Bi�Bi��ci��ci� vi� vi�dzi�dzi��}i��}i�8�i�8�i�5�i�5�ix��i{��i�ʯi�ʯiGS�iJS�i���i���iQN�iTN�i�p�i�p�i���i���iz��i~��i���i���i�6�i�6�i�}i�}i�Vi�Vi�/i�/iMo%iPo%i��*i��*i�-i�-i�A@i�A@iN�AiR�AiG�CiJ�CizXi�zXi'\i*\i�\i�\i�'li�'li1�li4�lifrifriTKxiWKxi��|i��|i꣗i���i�љi�љi���i���i��i��i��i��i2j�i5j�iۣi�i ]i]z032(00)i΄c,iӄc,z(010)40i�ӹ,i�ӹ,i��9i��9i�%�:i�%�:z(00)410i�w�;i�w�;i�t�?i�t�?z(00)230iq�Hiv�Hi }�Ji}�Ji��Qi��Q)NN)FT)�__doc__� functionsrrr#r-rSrirurr@r�r=r�r�r�r�r�r�r�r r+r$r"�<module>r�s�/����",�+�+�+�+�+�+�+�!)�!)�!)�F � � �EI��D�D�D�D�L#�#�#�J � � �"�����f�f�f�P������0�Y�Y�Y���Y�v � � ����$����E�E���E�N�#5�#5���#5�L&�^C�(�H��C�w�C� �8��C��C� �8��C��C� �8��C��C� �8�� C�� C�  �8�� C� � C�  �8�� C� � C� �8��C��C� �8��C��C� �8��C��C� �8��C��C� �8��C��C� �8��C��C� �8��C��C� �8��C��C� �8��C��C�  �8��!C� �!C�" �8��#C�"�#C�$ �8��%C�$�%C�& �8��'C�&�'C�( �8��)C�(�)C�* �8��+C�*�+C�, �8��-C�,�-C�. �8��/C�.�/C�0 �8��1C�0�1C�2 �I��3C�2 �3C�4 �I��5C�4 �5C�6 �I��7C�6 �7C�8 �I��9C�8 �9C�: �I��;C�: �;C�< �I��=C�< �=C�> �I��?C�> �?C�@ �I��AC�@ �AC�B �I��CC�B �CC�D �I��EC�D �EC�F �I��GC�F �GC�H �I��IC�H �IC�J �I��KC�J �KC�L �I��MC�L �MC�N �I��OC�N �OC�P �I��QC�P �QC�R �I��SC�R �SC�T �I��UC�T �UC�V �I��WC�V �WC�X �I��YC�X �YC�Z �I��[C�Z �[C�\ �I��]C�\ �]C�^ �I��_C�^ �_C�` �I��aC�` �aC�b �I��cC�b �cC�d �I��eC�d �eC�f �I��gC�f �gC�h �I��iC�h �iC�j �I��kC�j �kC�l �I��mC�l �mC�n �I��oC�n �oC�p �I��qC�p �qC�r �I��sC�r �sC�t �I��uC�t �uC�v �I��wC�v �wC�x �I��yC�x �yC�z �I��{C�z �{C�| �I��}C�| �}C�~ �I��C�~ �C�@ �I��AC�@ �AC�B �I��CC�B �CC�D �I��EC�D �EC�F �I��GC�F �GC�H �I��IC�H �IC�J �I��KC�J!�KC�L �I��MC�L �MC�N �I��OC�N �OC�P �I��QC�P �QC�R �I��SC�R �SC�T �I��UC�T �UC�V �I��WC�V �WC�X �I��YC�X �YC�Z �I��[C�Z �[C�\ �I��]C�\ �]C�^ �I��_C�^ �_C�` �I��aC�` �aC�b �I��cC�b �cC�d �I��eC�d �eC�f �I��gC�f �gC�h �I��iC�h �iC�j �I��kC�j �kC�l �I��mC�l �mC�n �I��oC�n �oC�p �I��qC�p �qC�r �I��sC�r!�sC�t �I��uC�t �uC�v �I��wC�v �wC�x �I��yC�x �yC�z �I��{C�z!�{C�| �I��}C�| �}C�~ �I��C�~!�C�@ �I��AC�@ �AC�B �I��CC�B �CC�D �I��EC�D �EC�F �I��GC�F �GC�H �I��IC�H �IC�J �I��KC�J �KC�L �I��MC�L �MC�N �I��OC�N �OC�P �I��QC�P �QC�R �I��SC�R �SC�T �I��UC�T �UC�V �I��WC�V!�WC�X �I��YC�X �YC�Z �I��[C�Z �[C�\ �I��]C�\ �]C�^ �I��_C�^ �_C�` �I��aC�` �aC�b �I��cC�b �cC�d �I��eC�d �eC�f �I��gC�f!�gC�h �I��iC�h �iC�j �I��kC�j �kC�l �I��mC�l �mC�n �I��oC�n �oC�p �I��qC�p �qC�r �I��sC�r �sC�t �I��uC�t �uC�v �I��wC�v �wC�x �I��yC�x �yC�z �I��{C�z �{C�| �I��}C�| �}C�~ �I��C�~ �C�@ �I��AC�@ �AC�B �I��CC�B �CC�D �I��EC�D �EC�F �I��GC�F �GC�H �I��IC�H �IC�J �I��KC�J �KC�L �I��MC�L �MC�N �I��OC�N �OC�P �I��QC�P �QC�R �I��SC�R �SC�T �I��UC�T!�UC�V �I��WC�V �WC�X �I��YC�X �YC�Z �I��[C�Z �[C�\ �I��]C�\ �]C�^ �I��_C�^ �_C�` �I��aC�` �aC�b �I��cC�b �cC�d �I��eC�d �eC�f �I��gC�f �gC�h �I��iC�h �iC�j �I��kC�j �kC�l �I��mC�l �mC�n �I��oC�n �oC�p �I��qC�p �qC�r �I��sC�r!�sC�t �I��uC�t �uC�v �I��wC�v �wC�x �I��yC�x!�yC�z �I��{C�z �{C�| �I��}C�| �}C�~ �I��C�~ �C�@ �I��AC�@ �AC�B �I��CC�B �CC�D �I��EC�D �EC�F �I��GC�F �GC�H �I��IC�H �IC�J �I��KC�J �KC�L �I��MC�L �MC�N �I��OC�N �OC�P �I��QC�P �QC�R �I��SC�R �SC�T �I��UC�T �UC�V �I��WC�V �WC�X �I��YC�X �YC�Z �I��[C�Z �[C�\ �I��]C�\ �]C�^ �I��_C�^ �_C�` �I��aC�`!�aC�b �I��cC�b �cC�d �I��eC�d �eC�f �I��gC�f �gC�h �I��iC�h!�iC�j �I��kC�j �kC�l �I��mC�l �mC�n �I��oC�n �oC�p �I��qC�p �qC�r �I��sC�r �sC�t �I��uC�t �uC�v �I��wC�v �wC�x �I��yC�x �yC�z �I��{C�z �{C�| �I��}C�| �}C�~ �I��C�~ �C�@ �I��AC�@ �AC�B �I��CC�B �CC�D �I��EC�D �EC�F �I��GC�F �GC�H �I��IC�H �IC�J �I��KC�J �KC�L �I��MC�L �MC�N �I��OC�N!�OC�P �I��QC�P �QC�R �I��SC�R �SC�T �I��UC�T �UC�V �I��WC�V �WC�X �I��YC�X �YC�Z �I��[C�Z �[C�\ �I��]C�\ �]C�^ �I��_C�^ �_C�` �I��aC�` �aC�b �I��cC�b �cC�d �I��eC�d �eC�f �I��gC�f �gC�h �I��iC�h �iC�j �I��kC�j �kC�l �I��mC�l �mC�n �I��oC�n �oC�p �I��qC�p �qC�r �I��sC�r �sC�t �I��uC�t �uC�v �I��wC�v �wC�x �I��yC�x �yC�z �I��{C�z �{C�| �I��}C�| �}C�~ �I��C�~!�C�@ �I��AC�@ �AC�B �I��CC�B �CC�D �I��EC�D �EC�F �I��GC�F �GC�H �I��IC�H �IC�J �I��KC�J �KC�L �I��MC�L �MC�N �I��OC�N �OC�P �I��QC�P �QC�R �I��SC�R �SC�T �I��UC�T �UC�V �I��WC�V �WC�X �I��YC�X �YC�Z �I��[C�Z �[C�\ �I��]C�\ �]C�^ �I��_C�^!�_C�` �I��aC�` �aC�b �I��cC�b �cC�d �I��eC�d �eC�f �I��gC�f �gC�h �I��iC�h �iC�j �I��kC�j �kC�l �I��mC�l �mC�n �I��oC�n �oC�p �I��qC�p �qC�r �I��sC�r �sC�t �I��uC�t �uC�v �I��wC�v �wC�x �I��yC�x!�yC�z �I��{C�z �{C�| �I��}C�| �}C�~ �I��C�~ �C�@ �I��AC�@ �AC�B �I��CC�B �CC�D �I��EC�D �EC�F �I��GC�F!�GC�H �I��IC�H �IC�J �I��KC�J �KC�L �I��MC�L �MC�N �I��OC�N �OC�P �I��QC�P �QC�R �I��SC�R �SC�T �I��UC�T �UC�V �I��WC�V �WC�X �I��YC�X �YC�Z �I��[C�Z �[C�\ �I��]C�\ �]C�^ �I��_C�^ �_C�` �I��aC�` �aC�b �I��cC�b �cC�d �I��eC�d �eC�f �I��gC�f �gC�h �I��iC�h �iC�j �I��kC�j �kC�l �I��mC�l �mC�n �I��oC�n �oC�p �I��qC�p!�qC�r �I��sC�r �sC�t �I��uC�t �uC�v �I��wC�v �wC�x �I��yC�x �yC�z �I��{C�z �{C�| �I��}C�| �}C�~ �I��C�~ �C�@  �I��A C�@  �A C�B  �I��C C�B  �C C�D  �I��E C�D  �E C�F  �I��G C�F  �G C�H  �I��I C�H  �I C�J  �I��K C�J  �K C�L  �I��M C�L  �M C�N  �I��O C�N  �O C�P  �I��Q C�P  �Q C�R  �I��S C�R  �S C�T  �I��U C�T  �U C�V  �I��W C�V  �W C�X  �I��Y C�X  �Y C�Z  �I��[ C�Z  �[ C�\  �I��] C�\  �] C�^  �I��_ C�^  �_ C�`  �I��a C�`  �a C�b  �I��c C�b  �c C�d  �I��e C�d  �e C�f  �I��g C�f  �g C�h  �I��i C�h !�i C�j  �I��k C�j  �k C�l  �I��m C�l  �m C�n  �I��o C�n  �o C�p  �I��q C�p  �q C�r  �I��s C�r  �s C�t  �I��u C�t  �u C�v  �I��w C�v  �w C�x  �I��y C�x  �y C�z  �I��{ C�z  �{ C�|  �I��} C�| !�} C�~  �I�� C�~  � C�@  �I��A C�@  �A C�B  �I��C C�B  �C C�D  �I��E C�D  �E C�F  �I��G C�F  �G C�H  �I��I C�H  �I C�J  �I��K C�J  �K C�L  �I��M C�L "�M C�N  �I��O C�N  �O C�P  �I��Q C�P  �Q C�R  �I��S C�R  �S C�T  �I��U C�T  �U C�V  �I��W C�V !�W C�X  �I��Y C�X  �Y C�Z  �I��[ C�Z  �[ C�\  �I��] C�\  �] C�^  �I��_ C�^  �_ C�`  �I��a C�`  �a C�b  �I��c C�b  �c C�d  �I��e C�d  �e C�f  �I��g C�f  �g C�h  �I��i C�h  �i C�j  �I��k C�j  �k C�l  �I��m C�l  �m C�n  �I��o C�n  �o C�p  �I��q C�p !�q C�r  �I��s C�r  �s C�t  �I��u C�t  �u C�v  �I��w C�v  �w C�x  �I��y C�x !�y C�z  �I��{ C�z  �{ C�|  �I��} C�|  �} C�~  �I�� C�~  � C�@  �I��A C�@  �A C�B  �I��C C�B !�C C�D  �I��E C�D  �E C�F  �I��G C�F  �G C�H  �I��I C�H  �I C�J  �I��K C�J  �K C�L  �I��M C�L !�M C�N  �I��O C�N  �O C�P  �I��Q C�P  �Q C�R  �I��S C�R  �S C�T  �I��U C�T !�U C�V  �I��W C�V  �W C�X  �I��Y C�X  �Y C�Z  �I��[ C�Z  �[ C�\  �I��] C�\  �] C�^  �I��_ C�^  �_ C�`  �I��a C�`  �a C�b  �I��c C�b  �c C�d  �I��e C�d  �e C�f  �I��g C�f  �g C�h  �I��i C�h  �i C�j  �I��k C�j  �k C�n  �I��o C�n "�o C�p  �I��q C�p "�q C�r  �I��s C�r "�s C�t  �I��u C�t "�u C�v  �I��w C�v "�w C�x  �I��y C�x "�y C�z  �I��{ C�z "�{ C�|  �Z��} C�| $�} C�~  �Z�� C�~ $� C�@  �Z��A C�@ $�A C�B  �Z��C C�B $�C C�D  �Z��E C�D $�E C���r$
Memory