�
I�g�x � �< � d Z ddlmZmZ d� Zd� Z �d%d�Zd� Zd� Zd � Z d
Z
d� Zd� Zd
� Z
e�d&d�� � Zd� Zd� Zd� Zed� � � Zed� � � Z g ddg�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��d g�d��d�dg��d��d�dg�d��d�dg�d��d�d g�d��d
�dg�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��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��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�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
�dg�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��d g�d��d�dg�d��d�dg�d��d�dg�d��d�dg�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�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 � � t t t � � dz � � D ]�}t d|z d }t d|z d }||dz
k r�|dz
|k r�| � |� � }| � |� � }| j � |� � }| j � |� � }||z
dz
} ||z
}
t d|z dz }| ||g||g||gfc S ��|dz
}t
| |� � \ }}
}|g}|
g}|dk rK|dz }t
| |� � \ }}
}|� d|� � |� d|
� � |dk �K||z
dz
} |dz
}t
| |� � \ }}
}|� |� � |� |
� � |dk rI|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}| dk rd}| dk rd}| dk rd}|S )z(Precision needed to compute higher zeros�5 i ���? l h�] �F � @� �k �S � )r �wps r"