� H�g;C����ddlZddlmZddlmZddlmZmZmZmZm Z m Z m Z m Z m Z mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m)Z)m+Z+m,Z,m-Z-m.Z.m/Z/ddl0m1Z1e e fZ2ddl3m4Z4e5j6Z7d�Z8Gd �d e5��Z9Gd �d e5��Z:d �Z;e;ee%��\e9_<e9_=e:_<e:_=e;ee&��\e9_>e9_?e:_>e:_?e;ee'��\e9_@e9_Ae:_@e:_Ae;ee(��\e9_Be9_Ce:_Be:_Ce;e!e)��\e9_De9_Ee:_De:_Ee9jBe9_Fe9jCe9_Ge:jBe:_Fe:jCe:_GGd�de9��ZHGd�de4��ZI ddlJZJeJjK�Le:��eJjM�Le9��dS#eN$rYdSwxYw)�N�)�libmp)� basestring),� int_types�MPZ_ONE� prec_to_dps� dps_to_prec�repr_dps� round_floor� round_ceiling�fzero�finf�fninf�fnan�mpf_le�mpf_neg�from_int� from_float�from_str� from_rational�mpi_mid� mpi_delta�mpi_str�mpi_abs�mpi_pos�mpi_neg�mpi_add�mpi_sub�mpi_mul�mpi_div� mpi_pow_int�mpi_pow� mpi_from_str�mpci_pos�mpci_neg�mpci_add�mpci_sub�mpci_mul�mpci_div�mpci_pow�mpci_absr*�mpci_exp�mpci_log� ComplexResult�mpf_hash�mpc_hash)�_matrix)�StandardBaseContextc�"�t|d��r|jSt|t��rt |||��St|t ��rt |||��St|t��rt|||��St�)N�_mpf_) �hasattrr4� isinstancerr�floatrrr�NotImplementedError)�x�prec�roundings �]/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/mpmath/ctx_iv.py� convert_mpf_r=s����q�'���*�1�7�N��!�Y���C���D�(�(C�(C�!C��!�U���A�J�q�$��$A�$A�A��!�Z� � �D��!�T�8�)D�)D�"D� ��c�D�eZdZdZd!d�Zd�Zd�Zd�Zd�Zd�Z e d ���Z e d ���Z d �Z e d ���Ze d ���Ze d���Ze d���Ze d���Zd�ZeZeZeZeZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd"d �Z dS)#�ivmpfzH Interval arithmetic class. Precision is controlled by iv.prec. rc�6�|j�|��S�N)�ctx�convert)�clsr9s r<�__new__z ivmpf.__new__+s���w���q�!�!�!r>c�X�|j\}}||kr|||����St�rB)�_mpi_� ValueError)�selfrE� f_convert�a�bs r<�castz ivmpf.cast.s4���z���1� ��6�6��3�y�y��|�|�$�$� $��r>c�L�|�ttj��SrB)rN�intr�to_int�rJs r<�__int__z ivmpf.__int__4s���y�y��e�l�+�+�+r>c�L�|�ttj��SrB)rNr7r�to_floatrRs r<� __float__zivmpf.__float__7s���y�y����/�/�/r>c�L�|�ttj��SrB)rN�complexrrUrRs r<� __complex__zivmpf.__complex__:s���y�y��%�.�1�1�1r>c�h�|j\}}||krt|��St|j��SrB)rHr/�hash�rJrLrMs r<�__hash__zivmpf.__hash__=s2���z���1� ��6�6��A�;�;� ��� �#�#� #r>c��|SrB�rRs r<�realz ivmpf.realDs���Kr>c��|jjSrB)rC�zerorRs r<�imagz ivmpf.imagGs ���8�=�(r>c��|SrBr_rRs r<� conjugatezivmpf.conjugateJs���r>c�N�|j\}}|j�||f��SrB�rHrC�make_mpfr\s r<rLzivmpf.aL�'���z���1��x� � �!�Q��(�(�(r>c�N�|j\}}|j�||f��SrBrgr\s r<rMzivmpf.bQrir>c�r�|j}t|j|j��}|�||f��SrB)rCrrHr:rh�rJrC�vs r<�midz ivmpf.midVs2���h�� �D�J��� )� )���|�|�Q��F�#�#�#r>c�r�|j}t|j|j��}|�||f��SrB)rCrrHr:rhrls r<�deltaz ivmpf.delta\s2���h�� �d�j�#�(� +� +���|�|�Q�q�E�"�"�"r>c��|jtfSrB)rH�mpi_zerorRs r<�_mpci_z ivmpf._mpci_bs���z�8�#�#r>c� �td���)Nz-no ordering relation is defined for intervals�� TypeError)�argss r<�_comparezivmpf._comparefs���G�H�H�Hr>c�v�|j�|��}|j|jko|j|jkSrB)rC�mpfrLrM)rJ�ts r<� __contains__zivmpf.__contains__ns.�� �H�L�L��O�O����!�#� �2�A�C�4�6�M�2r>c�@�t|j|jj��SrB)rrHrCr:rRs r<�__str__z ivmpf.__str__rs���t�z�4�8�=�1�1�1r>c���|jjrt|��S|j\}}t |jj��}t j||��}t j||��}d|�d|�d�S)Nzmpi(�, �))rC�pretty�strrHr r:r�to_str)rJrLrM�ns r<�__repr__zivmpf.__repr__usm�� �8�?� ��t�9�9� ��z���1� �T�X�]� #� #�� �L��A� � �� �L��A� � ��� !���1�1�1�%�%r>c��t|d��s* |j�|��}n#tcYSxYw||j|j��S)NrH)r5rCrD�NotImplementedrH)�sr{�cmpfuns r<rxzivmpf._compare~sY���q�'�"�"� &� &��E�M�M�!�$�$���� &�%�%�%�%�����v�a�g�q�w�'�'�'s�-� 8c�B�|�|tj��SrB)rxr�mpi_eq�r�r{s r<�__eq__z ivmpf.__eq__����Q�Z�Z��5�<�8�8�8r>c�B�|�|tj��SrB)rxr�mpi_ner�s r<�__ne__z ivmpf.__ne__�r�r>c�B�|�|tj��SrB)rxr�mpi_ltr�s r<�__lt__z ivmpf.__lt__�r�r>c�B�|�|tj��SrB)rxr�mpi_ler�s r<�__le__z ivmpf.__le__�r�r>c�B�|�|tj��SrB)rxr�mpi_gtr�s r<�__gt__z ivmpf.__gt__�r�r>c�B�|�|tj��SrB)rxr�mpi_ger�s r<�__ge__z ivmpf.__ge__�r�r>c�p�|j�t|j|jj����SrB)rCrhrrHr:rRs r<�__abs__z ivmpf.__abs__��(���x� � ����T�X�]�!C�!C�D�D�Dr>c�p�|j�t|j|jj����SrB)rCrhrrHr:rRs r<�__pos__z ivmpf.__pos__�r�r>c�p�|j�t|j|jj����SrB)rCrhrrHr:rRs r<�__neg__z ivmpf.__neg__�r�r>Nc�<�|j�||||��SrB�rC�almosteq�r�r{�rel_eps�abs_epss r<�aezivmpf.ae�����u�~�~�a��G�W�5�5�5r>)r�NN)!�__name__� __module__� __qualname__�__doc__rFrNrSrVrYr]�propertyr`rcrerLrMrnrprsrxr�r�r�r|r~r�r�r�r�r�r�r�r�r_r>r<r@r@&s��������"�"�"�"���� ,�,�,�0�0�0�2�2�2�$�$�$�����X�� �(�(��X�(�$�$�$� �)�)��X�)��)�)��X�)��$�$��X�$� �#�#��X�#� �$�$��X�$�I�I�I��F� �F� �F� �F�3�3�3�2�2�2�&�&�&�(�(�(�9�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�E�E�E�E�E�E�E�E�E�6�6�6�6�6�6r>r@c���eZdZdd�Zd�Zd�Zd�Zed���Zed���Z ed���Z ed ���Z ed ���Z ed ���Z d �Zd �Zd�Zdd�Zd�Zd�Zd�ZexZxZZd�Zd�Zd�Zdd�ZdS)�ivmpcrc��|j�|��}|j�|��}t|��}|j|jf|_|SrB)rCrD�newrHrs)rE�re�im�ys r<rFz ivmpc.__new__�sH�� �W�_�_�R� � �� �W�_�_�R� � �� ��H�H���8�R�X�%����r>c��|j\\}}\}}||kr||krt||f��St|j��SrB)rsr0r[�rJrLrM�c�ds r<r]zivmpc.__hash__�sH��� � ���A���1� ��6�6�a�1�f�f��Q��F�#�#� #��� �$�$� $r>c��|jjrt|��Sdt|j���dt|j���d�S)Nziv.mpc(r�r�)rCr�r��reprr`rc�r�s r<r�zivmpc.__repr__�sA�� �5�<� ��q�6�6�M� �#'���<�<�<�<��a�f�����>�>r>c�\�dt|j���dt|j���d�S)N�(� + �*j))r�r`rcr�s r<r~z ivmpc.__str__�s'��� #�A�F� � � � �S���[�[�[�[�9�9r>c�Z�|j\\}}\}}|j�||f��SrB�rsrCrhr�s r<rLzivmpc.a��/��� � ���A���1��x� � �!�Q��(�(�(r>c�Z�|j\\}}\}}|j�||f��SrBr�r�s r<rMzivmpc.b�r�r>c�Z�|j\\}}\}}|j�||f��SrBr�r�s r<r�zivmpc.c�r�r>c�Z�|j\\}}\}}|j�||f��SrBr�r�s r<r�zivmpc.d�r�r>c�L�|j�|jd��S�Nr�rCrhrsr�s r<r`z ivmpc.real�����u�~�~�a�h�q�k�*�*�*r>c�L�|j�|jd��S�Nrr�r�s r<rcz ivmpc.imag�r�r>c�h�|j\}}|j�|t|��f��SrB)rsrC�make_mpcr)r�rLrMs r<rezivmpc.conjugate�s+���x���1��u�~�~�q�'�!�*�*�o�.�.�.r>c�.�|j�|��}|j|jcxko |jkncp\|j|jcxko |jkncp=|j|jcxko |jkncp|j|jcxko |jknc}|j|jcxko |jkncp\|j|jcxko |jkncp=|j|jcxko |jkncp|j|jcxko |jknc}|o|SrB)rCrDrLrMr�r�)r�r{� real_overlap� imag_overlaps r<�overlapz ivmpc.overlap�sh�� �E�M�M�!� � ����q�s�)�)�)�)�a�c�)�)�)�)�o�q�s�a�c�/@�/@�/@�/@�Q�S�/@�/@�/@�/@�o�a�c�Q�S�FW�FW�FW�FW�TU�TW�FW�FW�FW�FW�o�]^�]`�de�dg�]n�]n�]n�]n�kl�kn�]n�]n�]n�]n� ���q�s�)�)�)�)�a�c�)�)�)�)�o�q�s�a�c�/@�/@�/@�/@�Q�S�/@�/@�/@�/@�o�a�c�Q�S�FW�FW�FW�FW�TU�TW�FW�FW�FW�FW�o�]^�]`�de�dg�]n�]n�]n�]n�kl�kn�]n�]n�]n�]n� ��,� �,r>c�n�|j�|��}|j|jvo |j|jvSrB)rCrDr`rcr�s r<r|zivmpc.__contains__�s2�� �E�M�M�!� � ���v����4�A�F�a�f�$4�4r>Fc�&�t||jj��s* |j�|��}n#tcYSxYwt |d��r|jtf}nt |d��r|j}|r |j|kS|j|kS�NrHrs) r6rC�_typesrDr�r5rHrrrs)r�r{�ne�tvals r<rxzivmpc._compare�s����!�Q�U�\�*�*� &� &��E�M�M�!�$�$���� &�%�%�%�%���� �1�g� � � ��7�H�$�D�D� �Q�� !� !� ��8�D� � $��8�t�#� #��x�4��s �7� Ac�,�|�|��SrB�rxr�s r<r�z ivmpc.__eq__�s��Q�Z�Z��]�]�*r>c�.�|�|d��S)NTr�r�s r<r�z ivmpc.__ne__�s��Q�Z�Z��4�0�0�0r>c� �td���)Nz#complex intervals cannot be orderedrur�s r<r�z ivmpc.__lt__�s��I�&K�L�L�Lr>c�p�|j�t|j|jj����SrB)rCr�r%rsr:r�s r<r�z ivmpc.__neg__��%��1�5�>�>�(�1�8�Q�U�Z�*H�*H�I�I�Ir>c�p�|j�t|j|jj����SrB)rCr�r$rsr:r�s r<r�z ivmpc.__pos__�r�r>c�p�|j�t|j|jj����SrB)rCrhr+rsr:r�s r<r�z ivmpc.__abs__�r�r>Nc�<�|j�||||��SrBr�r�s r<r�zivmpc.ae�r�r>)rr)Fr�)r�r�r�rFr]r�r~r�rLrMr�r�r`rcrer�r|rxr�r�r�r�r�r�r�r�r�r�r_r>r<r�r��s�����������%�%�%�?�?�?� :�:�:��)�)��X�)��)�)��X�)��)�)��X�)��)�)��X�)��+�+��X�+��+�+��X�+�/�/�/�-�-�-� 5�5�5�  �  �  �  �+�*�*�0�0�0�L�L�L�%�%�F�%�V�f�I�I�I�I�I�I�I�I�I�6�6�6�6�6�6r>r�c�X������fd����fd����fd�}��fd�}�fd�}�fd�}||||fS)Nc�N��|��|||j����SrB)r�r:)rC�svalr�� f_complexs �r<� g_complexz_binary_op.<locals>.g_complex�s%����|�|�I�I�d�D�#�(�;�;�<�<�<r>c��� |��|||j����S#t$r"|tf}|tf}�|||��cYSwxYwrB)rhr:r.rr)rCr�r��f_realr�s ��r<�g_realz_binary_op.<locals>.g_real�ss��� .��<�<���t�T�3�8� <� <�=�=� =��� .� .� .��(�#�D��(�#�D��9�S�$��-�-� -� -� -� .���s�$(�)A�Ac�V��t|t��rtS|j}t||j��s|�|��}t |d��r�||j|j��St |d��r�||jtf|j ��StSr�) r6r1r�rCr�rDr5rHrrrs�r�r{rCr�r�s ��r<�lop_realz_binary_op.<locals>.lop_real�s���� �a�� !� !�8�.�#8��e���!�S�Z�(�(�<�c�k�k�!�n�n�!� �1�g� � �D�v�v�c�1�7�A�G�'D�'D� D� �1�h� � �U� � �#����7J�A�H�(U�(U�!U��r>c���|j}t||j��s|�|��}t |d��r�||j|j��St |d��r�||j|jtf��StSr�) rCr6r�rDr5rHrsrrr�r�s ��r<�rop_realz_binary_op.<locals>.rop_reals�����e���!�S�Z�(�(�<�c�k�k�!�n�n�!� �1�g� � �D�v�v�c�1�7�A�G�'D�'D� D� �1�h� � �U� � �#�q�x�!�'�8�AT�(U�(U�!U��r>c� ��t|t��rtS|j}t||jj��s: |j�|��}n#t tf$r tcYSwxYw�||j|j��SrB) r6r1r�rCr�rDrIrvrs�r�r{rCr�s �r<� lop_complexz_binary_op.<locals>.lop_complex s���� �a�� !� !�8�.�#8��e���!�Q�U�\�*�*� &� &��E�M�M�!�$�$����� �*� &� &� &�%�%�%�%� &�����y��a�h���1�1�1s�A�A6�5A6c���|j}t||jj��s|j�|��}�||j|j��SrB)rCr6r�rDrsr�s �r<� rop_complexz_binary_op.<locals>.rop_complexsK����e���!�Q�U�\�*�*� !��� � �a� � �A��y��a�h���1�1�1r>r_)r�r�r�r�r�r�r�r�s`` @@r<� _binary_opr��s�������=�=�=�=�=�.�.�.�.�.�.������������� 2�2�2�2�2�2�2�2�2�2� �X�{�K� 7�7r>c�0�eZdZd�Zd�Zee��ZdS)�ivmpf_constantc�2�t|��}||_|SrB)r��_f)rE�frJs r<rFzivmpf_constant.__new__%s���3�x�x������ r>c��|jjd}|�|t��}|�|t��}||fSr�)rC�_precr�r r )rJr:rLrMs r<� _get_mpi_zivmpf_constant._get_mpi_)s?���x�~�a� �� �G�G�D�+� &� &�� �G�G�D�-� (� (���!�t� r>N)r�r�r�rFrr�rHr_r>r<r�r�$s=������������ �H�Y� � �E�E�Er>r�c���eZdZd�Zdd�Zd�Zdd�Zed���Zd�Z d�Z e d �e ��Z e d �e ��Z d �Zd �Zd �Zd�Zdd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd d�ZdS)!�MPIntervalContextc� �tdtfi��|_tdtfi��|_|j|jf|_tdt fi��|_dg|_|� d��|jt|jgx|j_ x|j_ |j_ |x|j_ x|j_ |j_ d|_ tj|��|���dS)Nr@r�r��5F)�typer@rzr��mpcr�r�� _constantr� _set_precr��_ctxdatarCr�r2�__init__�_init_builtins�rCs r<r zMPIntervalContext.__init__2s����w���"�-�-����w���"�-�-����g�s�w�'�� ��-��/@�"�E�E�� ��D�� � � � �b����HK��QT�VY�V_�G`�`�� ��`���!1�C�G�4D�8;�;�� ��;�C�G�K�#�'�+��� ��$�S�)�)�)� �������r>Nc�^�|�|�|��S|�||f��SrB)rz)rCrLrMs r<�_mpizMPIntervalContext._mpi?s+�� �9��7�7�1�:�:� ��w�w��!�u�~�~�r>c���|�d��|_|�d��|_|�d��|_|j |_|�d��|_|�dd��|_|�tj tj ��|_ |�tj ��|_|�tjtj��|_|�tjtj��|_|�tjtj��|_|�tj��|_|�tjtj��|_|�tjtj��|_|�tj tj!��|_"|�tj#tj$��|_%|j%|_&|�'d���|_(|�'tj)��|_*|�'tj+��|_,|�'tj-��|_.|�'tj/��|_0|�'tj1��|_2|�'tj3��|_4|�'tj5��|_6|�'tj7��|_8|�'tj9��|_:|�'tj;��|_<dS)Nrr�inf�nanc��dtd|z dfS�Nrr)r)r:�rnds r<�<lambda>z2MPIntervalContext._init_builtins.<locals>.<lambda>Ws��1�g�q��v�q�2I�r>)=rz�onerbr�ninfrr�j�_wrap_mpi_functionr�mpi_expr,�exp�mpi_sqrt�sqrt�mpi_logr-�ln�mpi_cos�mpci_cos�cos�mpi_sin�mpci_sin�sin�mpi_tan�tan� mpi_gamma� mpci_gamma�gamma� mpi_loggamma� mpci_loggamma�loggamma� mpi_rgamma� mpci_rgamma�rgamma� mpi_factorial�mpci_factorial� factorial�facr�eps�mpf_pi�pi�mpf_e�e�mpf_ln2�ln2�mpf_ln10�ln10�mpf_phi�phi� mpf_euler�euler� mpf_catalan�catalan� mpf_glaisher�glaisher� mpf_khinchin�khinchin� mpf_twinprime� twinprimer s r<r z MPIntervalContext._init_builtinsDsk���'�'�!�*�*����7�7�1�:�:����'�'�%�.�.����G�8����'�'�%�.�.�������!� � ����(�(�����G�G����)�)�%�.�9�9����'�'�� �u�~�F�F����(�(�����G�G����(�(�����G�G����(�(���7�7����*�*�5�?�E�<L�M�M�� ��-�-�e�.@�%�BU�V�V�� ��+�+�E�,<�e�>O�P�P�� ��.�.�u�/B�E�DX�Y�Y�� ��-����-�-� I� I�J�J������u�|�,�,���� � �e�k�*�*����-�-�� �.�.����=�=���0�0����-�-�� �.�.����M�M�%�/�2�2�� ��m�m�E�$5�6�6�� ��}�}�U�%7�8�8�� ��}�}�U�%7�8�8�� �� � �e�&9�:�:�� � � r>c��������fd�}|S)Nc�n��|r"|�d�jd��}n �jd}��|��}t|d��r$���|j|����St|d��r$���|j|����St�)Nr:rrHrs) �getrrDr5rhrHr�rsrI)r9�kwargsr:rCr�r�s ���r<�gz/MPIntervalContext._wrap_mpi_function.<locals>.gds����� $��z�z�&�#�)�A�,�7�7����y��|��� � �A���A��q�'�"�"� ;��|�|�F�F�1�7�D�$9�$9�:�:�:��q�(�#�#� ?��|�|�I�I�a�h��$=�$=�>�>�>�� r>r_)rCr�r�rOs``` r<rz$MPIntervalContext._wrap_mpi_functioncs/����� � � � � � � ��r>c�>��|r�fd�}n�}t|||��dS)Nc����|j��fd�|D��}|j} |xjdz c_�|g|�Ri|��}||_n #||_wxYw| S)Nc�&��g|] }�|����Sr_r_)�.0rLrDs �r<� <listcomp>zFMPIntervalContext._wrap_specfun.<locals>.f_wrapped.<locals>.<listcomp>vs!���1�1�1�q���� � �1�1�1r>� )rDr:)rCrwrNr:�retvalrDr�s @�r<� f_wrappedz2MPIntervalContext._wrap_specfun.<locals>.f_wrappedts}�����+��1�1�1�1�D�1�1�1���x��$��H�H��N�H�H��Q�s�4�T�4�4�4�V�4�4�F�#�C�H�H��t�C�H�O�O�O�O��w�s �A� A )�setattr)rE�namer��wraprWs ` r<� _wrap_specfunzMPIntervalContext._wrap_specfunqsH��� � � � � � � � ��I���T�9�%�%�%�%�%r>c�x�tdt|����|jd<t|��|_dS)Nrr)�maxrPrr�_dps�rCr�s r<r zMPIntervalContext._set_prec�s,���1�c�!�f�f�~�~�� �!� ��q�>�>����r>c�x�t|��|jd<tdt|����|_dSr)r rr]rPr^r_s r<�_set_dpszMPIntervalContext._set_dps�s,��"�1�~�~�� �!� ��q�#�a�&�&�>�>����r>c��|jdSr�)rr s r<rzMPIntervalContext.<lambda>�s ��� �!� �r>c��|jSrB)r^r s r<rzMPIntervalContext.<lambda>�s��s�x�r>c�<�t|j��}||_|SrB)r�rzrH�rCrmrLs r<rhzMPIntervalContext.make_mpf�s�� ���L�L������r>c�<�t|j��}||_|SrB)r�rrsres r<r�zMPIntervalContext.make_mpc�s�� ���L�L������r>c��|\}}tj|||jt��}tj|||jt��}|�||f��SrB)rrr:r r rh)rC�pq�p�qrLrMs r<�_mpqzMPIntervalContext._mpq�sQ�����1� � ��1�c�h� � <� <�� � ��1�c�h� � >� >���|�|�Q��F�#�#�#r>c���t||j|jf��r|St||j��r| St|t��st |d��rJ|�|j��}|�|j��}|�||��St|t��r*t||j ��}|� |��St |d��r |j \}}n� |\}}n#ttf$r|x}}YnwxYwt |d��r|j d}nt!||j t"��}t |d��r|j d}nt!||j t$��}|t&ks |t&krt(}t*}t-||��s Jd���|� ||f��S)N�_mpc_rHrrz"endpoints must be properly ordered)r6rzrrrXr5rDr`rcrr#r:rhrHrvrIr=r r rrrr)rCr9r�r�rmrLrMs r<rDzMPIntervalContext.convert�s��� �a�#�'�3�7�+� ,� ,� ��H� �a��� '� '� ��2�I� �a�� !� !� "�W�Q��%8�%8� "����Q�V�$�$�B����Q�V�$�$�B��7�7�2�b�>�>� !� �a�� $� $� #��Q���)�)�A��<�<��?�?� "� �1�g� � � =��7�D�A�q�q� ����1�1���z�*� � � �� ��A�A�A� �����q�'�"�"� ;��G�A�J��� ��C�H�k�:�:���q�'�"�"� =��G�A�J��� ��C�H�m�<�<�� ��9�9��T� � ��A��A��a��|�|�A�A�A�A�A�|��|�|�Q��F�#�#�#s�D�D�D�c �*�|�|��}t|d��rtj|j|fi|��St|d��rEtj|jd|fi|��}tj|jd|fi|��}d|�d|�d�SdS)NrHrsrrr�r�r�)rDr5r� mpi_to_strrHrs)rCr9r�rNr�r�s r<�nstrzMPIntervalContext.nstr�s��� �K�K��N�N�� �1�g� � � :��#�A�G�Q�9�9�&�9�9� 9� �1�h� � � ,��!�!�(�1�+�q�;�;�F�;�;�B��!�!�(�1�+�q�;�;�F�;�;�B�B�$&�B�B����+� +� ,� ,r>c��|�|��}t||j��rCt|�|j��|�|j����dzStj|j ��\}}|\}}}}|r||zS|tkr|j S|tkr|j S|jSr�)rDr6rr]�magr`rcrrrHr rrrr�rCr9rLrM�sign�manr�bcs r<rszMPIntervalContext.mag�s��� �K�K��N�N�� �a��� !� !� =��s�w�w�q�v����������8�8�1�<� <��}�Q�W�%�%���1����c�3�� � ��r�6�M� ��:�:��8�O� ��9�9��7�N��w�r>c��dS)NFr_�rCr9s r<�isnanzMPIntervalContext.isnan�s���ur>c��||jkSrB)rrys r<�isinfzMPIntervalContext.isinf�s���C�G�|�r>c��|�|��}|j\}}||kr|\}}}}|r|dkS|tkSdSr�)rDrHr rts r<�isintzMPIntervalContext.isint�sS�� �K�K��N�N���w���1� ��6�6�!"� �D�#�s�B�� ��a�x����:� ��tr>c��|�|��j\}}tj||��}tj||��}|�||f��SrB)rDrHr� mpf_shiftrh)rCr9r�rLrMs r<�ldexpzMPIntervalContext.ldexp�sP���{�{�1�~�~�#���1� �O�A�q� !� !�� �O�A�q� !� !���|�|�Q�q�E�"�"�"r>c�P�t|�|����jSrB)�absrDrLrys r<�absminzMPIntervalContext.absmin�����3�;�;�q�>�>�"�"�$�$r>c�P�t|�|����jSrB)r�rDrMrys r<�absmaxzMPIntervalContext.absmax�r�r>c���|�|��j}|�|��j}|�tj|||j����SrB)rDrHrhr� mpi_atan2r:)rCr�r9s r<�atan2zMPIntervalContext.atan2�sH�� �K�K��N�N� �� �K�K��N�N� ���|�|�E�O�A�a���9�9�:�:�:r>c�h�t|tj��r|dfSt|t��r2|\}}|�|��|�|��z dfS|�|��}t||j��r|dfSt||j��r|dfSt�)N�Z�R�C)r6rr�tuplerzrDrrI)rCr9rirjs r<�_convert_paramz MPIntervalContext._convert_param�s��� �a��� )� )� ��c�6�M� �a�� � � 2��D�A�q��G�G�A�J�J�������+�S�1� 1� �K�K��N�N�� �a��� !� !� ��c�6�M� �a��� !� !� ��c�6�M��r>c�V�t||j��pt|t��SrB)r6rzr�rC�zs r<� _is_real_typezMPIntervalContext._is_real_types#���!�S�W�%�%�A��A�y�)A�)A�Ar>c�,�t||j��SrB)r6rr�s r<�_is_complex_typez"MPIntervalContext._is_complex_types���!�S�W�%�%�%r>�pc ��t|��}t|��}t|||z��} |jx} } d} |D]} | || | zz} �| D]} | || | zz} �| dz } | | z} | |z} | | z } | dkr| S| |kr|j��Pr)�list�ranger� NoConvergence)rCrirj�types�coeffsr��maxtermsrN�num�denr�r{�k�is r<�hypsumzMPIntervalContext.hypsum s����f�����A�h�h���A�a��c�l�l������A� �� (�� ,� ,��!��q� �!� �,�!�!�� ,� ,��!��q� �!� �,�!�!� ��F�A�A��F�A�A��F�A�A��F�A��A�v�v����8�|�|��'�'� (r>rB)rn)r�)r�r�r�r rr r� classmethodr[r rar�r:�dpsrhr�rkrDrqrsrzr|r~r�r�r�r�r�r�r�r�r_r>r<rr0s������� � � ����� ;�;�;�> � � � ��&�&��[�&� "�"�"�"�"�"� �8�,�,�i� 8� 8�D� �(�'�'�� 2� 2�C���� ��� $�$�$� $�$�$�B,�,�,�,� � � ����������#�#�#� %�%�%�%�%�%�;�;�;� � � �B�B�B�&�&�&�(�(�(�(�(�(r>r)O�operator�r� libmp.backendrrrrr r r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r/r0�matrices.matricesr1rr�ctx_baser2�objectrFr�r=r@r�r��__add__�__radd__�__sub__�__rsub__�__mul__�__rmul__�__div__�__rdiv__�__pow__�__rpow__� __truediv__� __rtruediv__r�r�numbers�Complex�register�Real� ImportErrorr_r>r<�<module>r�sR������������%�%�%�%�%�%���������������������������������������������������������������������������������������������'�&�&�&�&�&� �5�>��)�)�)�)�)�)� �n�����o6�o6�o6�o6�o6�F�o6�o6�o6�b[6�[6�[6�[6�[6�F�[6�[6�[6�z%8�%8�%8�N@J�z�'�S[�?\�?\�<�� �u�~�u�}�e�n�?I�z�'�S[�?\�?\�<�� �u�~�u�}�e�n�?I�z�'�S[�?\�?\�<�� �u�~�u�}�e�n�?I�z�'�S[�?\�?\�<�� �u�~�u�}�e�n�?I�z�'�S[�?\�?\�<�� �u�~�u�}�e�n��M�����5�#5��M�����5�#5�  �  �  �  �  �U�  �  �  �i(�i(�i(�i(�i(�+�i(�i(�i(�d ��N�N�N� �O���U�#�#�#� �L���%� � � � � ��� � � ��D�D� ���s�,8G&�&G/�.G/
Memory