U
    9%eV`  ă                   @   s(  d dl mZmZmZ d dlmZ d dl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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& d dl'm(Z(m)Z) d dl*m+Z+ d dl,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6 d dl7m8Z8 d dl9m:Z:m;Z; d	d
 Z<dd Z=dd Z>dd Z?dd Z@dd ZAdd ZBdd ZCdd ZDdd ZEdd ZFdd  ZGd!d" ZHd#d$ ZId%d& ZJd'd( ZKd)d* ZLd+d, ZMd-d. ZNd/d0 ZOd1d2 ZPd3d4 ZQd5d6 ZRd7d8 ZSd9d: ZTd;d< ZUd=d> ZVd?d@ ZWdAdB ZXdCdD ZYdEdF ZZdGdH Z[dIdJ Z\e)dKdL Z]dMS )Né    )ÚQQÚEXÚRR)Úring) Ú_invert_monomsÚrs_integrateÚrs_truncÚrs_mulÚ	rs_squareÚrs_powÚ_has_constant_termÚrs_hadamard_expÚrs_series_from_listÚrs_expÚrs_logÚ	rs_newtonÚrs_series_inversionÚrs_compose_addÚrs_asinÚrs_atanÚrs_atanhÚrs_tanÚrs_cotÚrs_sinÚrs_cosÚ
rs_cos_sinÚrs_sinhÚrs_coshÚrs_tanhÚ_tan1Úrs_funÚrs_nth_rootÚrs_LambertWÚrs_series_reversionÚrs_is_puiseuxÚ	rs_series)ÚraisesÚslow)Úsymbols)
ÚsinÚcosÚexpÚtanÚcotÚatanÚatanhÚtanhÚlogÚsqrt)ÚRational)ÚexpandÚSc                 C   s   d}t | | |k std S )Ngť˝×Ůß|Ű=)ÚabsÚAssertionError)ÚaÚbZtolŠ r:   úa/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/sympy/polys/tests/test_ring_series.pyÚis_close   s    r<   c                  C   s  t dt\} }|d d|d   d|  d }t|d|d  d|d   d|  d ks^tt||d d |d d  d|  d kstt dt\} }|d d|d   d|  d }t|||d d |d d  d|d  d  d|  ksútt dt\} }}|d |d  | d }t|||d |d  d |d d  | ksVtt|||d |d  d ||  | kstd S )	NÚxé   é   é   é   é   é   úx, y)r   r   r   r7   r   r   )ÚRr=   ÚpÚyr:   r:   r;   Útest_ring_series1   s     00 >4rH   c                  C   sr   t dt\} }}}|||  d }t||d}||d d|d  | |  d|d  |d  |d   ksntd S )Núx, y, tr>   r@   é   r?   )r   r   r   r7   )rE   r=   rG   ÚtrF   Úp1r:   r:   r;   Ú
test_trunc!   s    rM   c                     s|  t dt\} }}d|  ||   tdD ]}t  |d q. dd  |d  d | |d   d|d  |d   d |  d| |  d ks˘td|  ||  |d  |   t  |d}|dd|   d| |  ksřtt dt\}tt fd	d
 dd  dd   }dd  }t||ddd  dd   d  d ksxtd S )NrI   rA   r?   r@   rJ   é   r>   Úzc                      s   t  dS )Nr?   )r	   r:   ŠrF   r=   rO   r:   r;   Ú<lambda>2   ó    z test_mul_trunc.<locals>.<lambda>é   )r   r   Úranger	   r7   r&   Ú
ValueError)rE   rG   rK   ÚirL   ZR1Úp2r:   rP   r;   Útest_mul_trunc'   s    `$$rX   c                  C   s    t dt\} }}}d||  ||  d }t|||d}t||d}||ksPtd| |d  |d  }t||dd|d  d|d   d|  d kstd S )NrI   rA   r?   r@   r>   )r   r   r	   r
   r7   )rE   r=   rG   rK   rF   rL   rW   r:   r:   r;   Útest_square_trunc8   s    rY   c            	      C   sL  t dt\} }}}|||  }|d }|||fD ]*}t||d}t|d|d}||ks0tq0d| }t|d|d}|dd|  kstt|d|ddkstt|d|ddd|  ksşt|| }t|d|d|d d|d  |  d| |d   ksüttd| tdd|d	d	|d  d
 |d d  |tdd  d ksHtd S )Núx, y, zé   é   rA   r@   r?   r   éţ˙˙˙r>   éQ   é	   )r   r   r   r   r7   r3   )	rE   r=   rG   rO   Úp0rF   ZxxrL   rW   r:   r:   r;   Útest_pow_truncA   s    :ra   c                  C   sx   t dt\} }}}|||  }t||s,t||d  }t||rFtd| |d  }t||sdt|| ||  }d S )NrZ   r>   rA   )r   r   r   r7   )rE   r=   rG   rO   rF   r:   r:   r;   Útest_has_constant_termS   s    rb   c                     sô   t dt\} d dd    d}t |}t | |dksJtt dt\} }d dd   |  d |   t |}t | |dksŚtt dt\} }d |  tt fdd | j tt fdd d S )	Nr=   r?   rC   rA   rD   c                      s   t  dS )Nr>   Šr   r:   ŠrF   r=   r:   r;   rQ   j   rR   z test_inversion.<locals>.<lambda>c                      s   t  dS )Nr@   rc   r:   rd   r:   r;   rQ   l   rR   )	r   r   r   r   r7   r&   ÚNotImplementedErrorÚzeroÚZeroDivisionError)rE   ÚnrL   rG   r:   rd   r;   Útest_inversion]   s    (ri   c                  C   s   t dt\} }}t||d}t||d|t||dks:tt||d}t||d|d|d  d d|d  d  |d d	  | kstd S )
NrD   é
   r\   rC   é   ép   r@   é(   rJ   )r   r   r   r#   r   r7   r   ŠrE   r=   rG   rF   r:   r:   r;   Útest_series_reversiono   s    *
˙˙ro   c                  C   sb  t dt\} }dd|  |d  d|d   }dddddg}t|||d}|  tt|Ą}t| ||Ą|d}||ks|tt dt\} }}dddd	g}t|| ||ddd
}tdd||   d|| d   d	|| d   |d}	||	ksňtt dt\} }d}
t	|||
d }t||||
}d}	t
|D ] \}}|	|t||||
 7 }	q.||	ks^td S )Nr=   rA   r?   r@   r   r>   rC   rD   rk   )Zconcuré   )r   r   r   Ú	from_listÚlistÚreversedr   Úcomposer7   r   Ú	enumerater   )rE   r=   rF   ÚcÚrZpcÚr1rG   rL   rW   ÚhrV   Zcxr:   r:   r;   Útest_series_from_listy   s(     8rz   c                  C   sp  t dt\} }d| }t||d|d  }|tdd| tj |d  ksNtd| d|d  d  }t||d}|d|d	  d
 d|d  d  d|d  d  |d d  d|d  d  |d d  |d d  | ksâtt||d}t||d}|| ks
tt dt\} }}d| d| |d   }t||d}|d|d  |d  d|d  |  d|d  |d   |d d  d|d  |  |d d  d|d  |  |d d  d|d  |  |d d  | ksättd}t dt	\} }}t|| |dt	dd|d    |d  t	dd|d   |d   t	dd|d   |d   t	d| |  t	t
| kstt||d |  | |dt	|d  |d  | t	dd|d   |d   t	d| |d  |  t	dd|d   |d   t	d| |  t	t
| ks,t||d  d }t||d |dĄt	t
dtdd ksltd S )Nr=   rA   r>   r?   r@   é˙˙˙˙r_   éď˙˙˙r\   i  é   rk   é˝   rS   rJ   é˘   rC   é-   é$   rD   r8   r]   rj   l   K)z ič^ )r   r   r   r3   r5   ÚHalfr7   r   r(   r   r1   rt   )rE   r=   rF   rL   rW   Zp3rG   r8   r:   r:   r;   Útest_log   sp    $<˙
˙
˙˙
T
˙˙
˙˙
˙˙F˙˙
˙2˙˙˙ţ
ţr   c            
      C   s  t dt\} }||d  }dD ]<}td| ||d }t|||}t|||}||kstqt||d}| |d Ątddkstd	}td| ||}t|||}||d ks´ttd
}t dtt||f \} }}	t|| |dt||d  d t||d  d  t||d  d  t||  t| ks>tt||d |	  | |dt||d  |	d  d t||d  |	 d  t||d  d  t||d  |	  t||d  d  t||d  |	  t||d  d  t||  t| kstt dt	\} }}	t|| |dt	t|d |d  t	t|d |d   t	t|d |d   t	t||  t	t| kstt||d |	  | |dt	t|d |d  |	d  t	t|d |d  |	  t	t|d |d   t	t||d  |	  t	t|d |d   t	t||d  |	  t	t|d |d   t	t||  t	t| kstd S )Nr=   r>   )rj   é   rA   r   é   l   ŃOÄ$o˘bďŽl      LÉeFSŤXé   r8   rD   rC   rB   r@   rJ   r?   )
r   r   r   r   r   r7   Zcoeffr(   r+   r   )
rE   r=   rF   ry   ÚqrL   Úq1Úprecr8   rG   r:   r:   r;   Útest_expŻ   s    4˙
˙˙4˙˙˙ţţţ
ţţ<˙˙
˙8˙˙˙ţţţý
ýr   c                  C   sN   t dt\} }|d d }t||d}|d|d  d|d   d ksJtd S )Nr=   r?   r>   r\   )r   r   r   r7   )rE   r=   rF   rw   r:   r:   r;   Útest_newtonĎ   s    r   c                  C   sp   t dt\} }|d d }|d d }t|||d d|d   d|d   d|d   d|  d ksltd S )	Nr=   r@   rA   r?   rJ   r>   rN   rk   )r   r   r   r7   )rE   r=   rL   rW   r:   r:   r;   Útest_compose_addŐ   s    r   c                  C   st   t dt\} }}|| |d |d   |d |  }t|t|dt||dksRtt|t|dt||dksptd S )NrD   r?   r@   rC   rj   )r   r   r    r   r7   r   rn   r:   r:   r;   Útest_funŰ   s    $r   c               	   C   sô  t dt\} }}td|d |  d|dd|d  |d  d d	|d
  |d  d  d|d  |d  d  |d | d  d ksttd||  |d |d   d|d|d  |d
  d d|d  |d  d  d|d  |d  d  d|d  |d  d  d|d  |d  d  |d |d  d  |d |d  d  || d  d ksdttd| d|dd|tdd  ksttd| |d  |d  d|d|tdd d d|tdd   ksÚttd| |d |  |d  d|d}||td	d  |d  d |td	d d  |tdd | d  d|tdd   ks`ttd}t dt\} }}t|| d|dtdd|tdd   |d  tdd|tdd   |d   tdd|tdd   |  t|tdd  kstt|tdd |d |  d d|dttdd  |tdd  | ttdd |tdd   ttdd |d  |  ttdd |d   ttdd |tdd   ttdd |tdd   ttd ksđtd S )NrD   rA   r?   r>   rj   ił˙˙˙r\   i   rk   rJ   r@   é   é    rC   r_   é   éó   r^   rN   i   r8   éd   i>  iĐ  éČ   )r   r   r!   r7   r(   r   r2   )rE   r=   rG   rw   r8   r:   r:   r;   Útest_nth_rootá   sr    .˙˙˙˙
8˙˙˙˙ţţ
ţţ*L&`0 ˙˙˙6˙˙˙˙ţţý
ýr   c                  C   sP  t dt\} }}t||d|d  d |d d  |d d  | ksJtt|| |d |d   |dd|d  |d  |d |d   d|d  |d   |d |d  d  |d	 |d  d  |d	 |d   |d |d   |d |d  d  |d
 |d   |d |d  d  |d |d   ||  ks@ttd}t dt\} }}t|| |dt|d | |d d
|d	   d	|d
   d
|d   d   |d
  td|d  d d|d	  d|d
   d|d   d  |d   t||d
 d|d   d  |d   td|d d  |  tt| ksHtt||d |  | |d
td| |d
 d|d   d   |d  | td|d  d d|d	  d|d
   d|d   d  |d   td|d d  |d  |  t||d
 d|d   d  |d   td|d d  |  tt| ksLtd S )NrD   r_   rk   rC   r@   r?   r\   rS   rJ   r>   r8   rA   )r   r   r   r7   r(   r   r.   ŠrE   r=   rG   r8   r:   r:   r;   Ú	test_atan÷   s    :@˙˙˙˙˙ţţţţţ8
˙˙˙&
˙˙˙˙&ţý
ý>˙˙B˙ţ&ţ
˙˙ţ
ýr   c                  C   s  t dt\} }}t|||  |d|d |d  d |d |d  d  |d | d  |d d  ||  | ksxtt|| |d |d   |d|d |d  d d|d  |d  d  |d |d  d  |d |d  d  |d |d   ||  ks
td S )	NrD   rC   r@   rJ   r?   rk   rm   r>   )r   r   r   r7   ŠrE   r=   rG   r:   r:   r;   Ú	test_asin
  s"    H
˙˙˙
H˙˙˙˙r   c                  C   s0  t dt\} }}t||d|d  tdd|d  tdd tdd	|d
   |d  ks^tt|| |d |d	   |dd|d  |d  d	 d|d  |d  d  d|d  |d  d	  d|d  |d  d  |d |d  d	  d|d  |d  d	  |d |d   d|d  |d  d  |d |d   |d	 |d	  d	  |d |d	   ||  kstttd}t dtt||f \} }}t|| |dt|d dt|d	  d	  dt| d	  |d  t|d dt|d  d	  tdd	 |d	   t|d	 t| |d   t|d d |  t| ksPtt||d |  | |ddt|d	  dt|  |d	  | t|d tdd	t|d   tdd	 |d	   t|d d |d  |  t|d	 t| |d   t|d d |  t| ks"tt dt\} }}t|| |dtt|d dt|d	  d	  dt| d	  |d  tt|d dt|d  d	  tdd	  |d	   tt|d	 t| |d   tt|d d |  tt| ks tt||d |  | |dtdt|d	  dt|  |d	  | tt|d dt|d  d	  tdd	  |d	   tt|d d |d  |  tt|d	 t| |d   tt|d d |  tt| ksęt||d  d }t||d 	|dĄtt
dtdd  ks,td S )NrD   r_   rC   é   é;  r?   é   rA   r@   r]   éü˙˙˙r>   r\   rS   r   rk   rJ   r8   rj   l   PH]řl   Án)r   r   r   r3   r7   r(   r,   r   r   rt   r.   r5   ŠrE   r=   rG   r8   rF   r:   r:   r;   Útest_tan  sŹ    4˙L˙˙˙˙ţţţţţţ,˙˙0˙ţţţ@2˙˙ţţţ.˙˙6˙ţţ
ţ*
˙˙˙6˙ţţý
ý ˙r   c                  C   sD  t dt\} }}t|d |d  |d|d |d  |d  |d  |d	  |d
  d | |d  |d  |d  |d  d|d  d  d|d  d  ks¤tt||d |  |d|d  |d  |d | d  |d |d   |d d  |d |d   |d | d  ||d   |d  | |d
  ks@td S )NrD   rJ   rk   r\   iú˙˙˙éű˙˙˙r   éý˙˙˙r]   r{   rA   r?   r@   r>   rC   r   r   )r   r   r   r7   r   r:   r:   r;   Útest_cot0  sN    ,˙˙˙˙˙˙˙˙˙ţţ
F
˙˙˙
˙˙˙˙rĄ   c                  C   sF  t dt\} }}t||d|d  tdd|d  tdd tdd	|d
   |d  ks^tt|| |d |d   |d|d |d  d |d |d  d  |d |d  d  |d |d  d  |d	 |d  d	  |d	 |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d	  |d |d   ||  ksdttd}t dtt|t||f \} }}t|| |dt||d  d t||d  d	  t||d  d  t||  t| ksôtt||d |  | |dt| |d  |d  d t||d  | d  t||d  d  t||d  |  t||d  d	  t||d  |  t||d  d  t||  t| ksÄtt dt\} }}t|| |dtt|d |d  tt|d	 |d   tt|d |d   tt||  tt| ksNtt||d |  | |dtt|d  |d  |d  tt|d |d  |  tt|d |d   tt||d  |  tt|d	 |d   tt||d  |  tt|d |d   tt||  tt| ksBtd S )NrD   r_   rC   r{   é°  r?   rA   éx   rJ   r]   r   r@   r\   rS   rN   éĐ  rk   rB   r>   r8   )	r   r   r   r3   r7   r(   r)   r*   r   r   r:   r:   r;   Útest_sin8  s    4˙0˙˙˙˙ţţţţýýý"4˙
˙˙6˙˙˙˙ţţ
ţţ<˙˙
˙:˙˙˙ţţţý
ýrĽ   c                  C   sh  t dt\} }}t||d|d  tdd|d  tdd|  tdd|d	   tj|d
   |d  ksptt|| |d |d   |d|d |d  d |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d   |d |d  d  d ksttd}t dtt|t	||f \} }}t|| |dt	||d  d t||d  d  t	||d  d  t||  t	| kstt||d |  | |dt	| |d  |d  d t||d  | d  t	||d  d  t	||d  |  t||d  d  t||d  |  t	||d  d  t||  t	| ksćtt dt
\} }}t|| |dt
t	|d |d  t
t|d |d   t
t	|d |d   t
t||  t
t	| ksptt||d |  | |dt
t	|d  |d  |d  t
t|d |d  |  t
t	|d |d   t
t	||d  |  t
t|d |d   t
t||d  |  t
t	|d |d   t
t||  t
t	| ksdtd S )NrD   r_   rC   rA   é  r@   r¤   rB   r{   r    r   r?   r\   rN   rj   é0   rk   rJ   rŁ   r>   r8   )r   r   r   r3   r5   r   r7   r(   r)   r*   r   r   r:   r:   r;   Útest_cosR  s     F˙0˙˙˙ţţţţýýýýý"4˙
˙˙6˙˙˙˙ţţ
ţţ<˙˙
˙:˙˙˙ţţţý
ýr¨   c                  C   s   t dt\} }}t||d\}}|t||dks4t|t||dksHtt|||  |d\}}|t|||  |dks|t|t|||  |dkstd S )NrD   r_   rC   )r   r   r   r   r7   r   )rE   r=   rG   r*   r)   r:   r:   r;   Útest_cos_sinl  s    rŠ   c                  C   s   t dt\} }}t||d|d  tdd|d  tdd tdd|d   |d	  ks^tt|| |d |d   |dd|d
  |d  |d
 |d   d|d  |d   |d |d  d  |d |d  d  |d |d   |d |d   |d |d  d  |d |d   |d |d  d  |d |d   ||  ksTttd}t dt\} }}t|| |dt|d | |d
 d|d   d|d   d|d   d  |d  td|d  d d|d  d|d   d|d   d  |d   t||d d|d   d  |d   td|d d  |  tt| ksZtt||d |  | |dtd| |d d|d   d  |d  | td|d  d d|d  d|d   d|d   d  |d   td|d d  |d  |  t||d d|d   d  |d   td|d d  |  tt| ks\t||d  d }t||d |dĄttddtd kstd S )NrD   r_   rC   rA   rk   r?   r@   r]   r   r\   rS   rJ   r>   r8   rj   lü˙˙˙×yŤY?l l    P{] )	r   r   r   r3   r7   r(   r   r/   rt   r   r:   r:   r;   Ú
test_atanhu  s    N@˙˙˙˙˙ţţţţţ8
˙˙˙&
˙˙˙˙&ţ
˙˙ţ
ý4˙˙˙B˙ţ&ţý
ý˙rŞ   c                  C   sh  t dt\} }}t||d|d  tdd|d  tdd tdd|d	   |d
  ks^tt|| |d |d   |d|d |d  d |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d   ||  ksdtd S )NrD   r_   rC   rA   r˘   r?   rŁ   rJ   r]   r   r@   r\   rS   rN   r¤   rk   rB   r>   )r   r   r   r3   r7   r   r:   r:   r;   Ú	test_sinh  s2    N0˙˙˙˙ţţţţýýýrŤ   c                  C   s  t dt\} }}t||d|d  tdd|d  tdd|  tdd|d	   tj|d
   |d  ksptt|| |d |d   |d|d |d  d |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d  d  |d |d   |d |d  d  d kstd S )NrD   r_   rC   rA   rŚ   r@   r¤   rB   r{   r    r   r?   r\   rN   rj   r§   rk   rJ   rŁ   r>   )r   r   r   r3   r5   r   r7   r   r:   r:   r;   Ú	test_cosh  s>    B˙˙
0˙˙˙ţţţţýýýýýrŹ   c                  C   sä  t dt\} }}t||d|d  tdd|d  tdd tdd	|d
   |d  ks^tt|| |d |d	   |dd|d  |d  d	 d|d  |d  d  d|d  |d  d	  d|d  |d  d  |d |d  d	  d|d  |d  d	  |d |d   d|d  |d  d  |d |d   |d	 |d	  d	  |d |d	   ||  kstttd}t dt\} }}t|| |dtt|d dt|d	  d	  dt| d	  |d  tt|d  dt|d  d	  tdd	 |d	   tt|d	 t| |d   tt|d  d |  tt| ks\tt||d |  | |d}| |dĄ |dĄtdt|d  dt|d	   dt|d  d	  dt|  tdd	 ksŕtd S )NrD   r_   rC   r|   r   r?   r   rA   r@   r]   r   r>   r\   rS   r   r   rk   rJ   r8   rj   iü˙˙it'  iŚ	  is'  i  )	r   r   r   r3   r7   r(   r   r0   rt   r   r:   r:   r;   Ú	test_tanh  sd    N4˙˙˙˙ţţţţýýý.˙˙6˙ţţ
ţ"˙˙
˙˙r­   c            
      C   sđ   t tttttg} tttt	t
tg}tdt\}}}td}t| |D ]T\}}|d| |d |dĄ}|d|  |ddĄ Ą }	t| Ą |	 |dĄ Ą  qBtd| d|d |dĄ}d| tdd  |ddĄ Ą }	t| Ą |	 |dĄ Ą  d S )NrD   r8   r?   rC   r   rA   )r   r   r   r   r   r   r)   r*   r,   r-   r.   r0   r   r   r(   Úziprt   ÚseriesÚremoveOr<   Úas_exprÚsubsrh   r!   r   )
Zrs_funcsZsympy_funcsrE   r=   rG   r8   Zrs_funcZ
sympy_funcrF   r   r:   r:   r;   Útest_RR°  s     rł   c                  C   s    t dt\} }}dd|  |d  d|d   }t||r>t||tdd |  }t||sbtt||rpt||d |tdd  |  }t||rtd S )NrD   rA   r?   r@   rC   )r   r   r$   r7   rn   r:   r:   r;   Útest_is_regularž  s     r´   c                  C   s˛  t dt\} }}|tdd |tdd  | }t||d}|tdd  |tdd  d|td	d   |tdd  d|td
d   |tdd  |tdd  |tdd  |tdd  |tdd  }||ksŢttd| d|d}||tdd  d |tdd d  |tdd d  d ks6ttd| |d}||tdd  d |tdd  |tdd  kstt||d}||tdd  |tdd  |tdd  ksÂt||tdd |  }t||d}||tdd |d  d |tdd |d  d  |tdd |d  d  |tdd |  d ksRtt||d}||tdd  |tdd  |tdd  |tdd d  | |tdd  |tdd  ksĆtt||d}||tdd |d  d |tdd |d   |td
d |d
  d
  |td
d |d   ||d  d  | |tdd |d  d  |tdd |  ks|tt	||d}||tdd d |tdd d  |tdd d  |tdd d  | |tdd  |tdd  ksútt
||d}||tdd  |tdd  d|td	d   d|tdd  d  d|td
d   d|tdd  d  |tdd  |tdd  |tdd  |tdd  ksśtt||d}|d |tdd d |tdd  |tdd d  |td
d  |tdd d  |tdd  |tdd d  d ksFt|d |tdd  d |tdd d  |tdd d  |tdd d  | |tdd  |tdd  ksžtt||d}||tdd |tdd  |tdd  |tdd d  | |tdd  |tdd  ks0tt||d}||tdd d |tdd d  |tdd d  |tdd d  | |tdd  |tdd  ksŽtt||d}||tdd d |tdd  |tdd d  |td
d  |tdd d  |tdd  |tdd d  d ks:tt||d}||tdd  |tdd  |tdd  |tdd d  | |tdd  |tdd  ksŽtd S )NrD   r?   rC   r@   rA   é   r   r>   rS   rk   r]   r_   rB   rJ   é   é   r   é   r\   r[   )r   r   r   r7   r!   r   r"   r   r   r   r   r   r   r   r   r   )rE   r=   rG   rF   rw   rx   rL   r:   r:   r;   Útest_puiseuxĘ  s    <˙˙˙˙˙ţF:6N˙˙>˙˙˙J˙˙˙˙˙6˙˙˙˙0˙˙˙˙ţţţD˙˙˙˙<˙˙˙˙@˙˙6˙˙˙˙@˙˙˙˙>˙˙˙rš   c                  C   sě   t  tdĄ} |  tdĄ}td\}}t||g| \}}}d| |t dd  d| |t dd   }t|t ddt dfd| t dt ddfd| iks¤t| Ą dtd |t	dd   dtd |t	dd    ksčtd S )Nr?   rD   rA   r@   r   )
r   Zalgebraic_fieldr2   Z
from_sympyr(   r   Údictr7   rą   r5   )ÚKZsqrt2r=   rG   rE   ZxrÚyrrF   r:   r:   r;   Útest_puiseux_algebraic	  s    ,<r˝   c                  C   sČ  t dt\} }t||d|d  }||d d |d d  |d d	  |d
 d  tdd |d d  |d  ksxtt||d}t|d
|d}|d|tdd
  d |tdd
 d  |tdd
 d  |tdd
 d  |tdd
  ksôtt||d}t|d|d}t|d|d}|d|tdd  d |tdd d  d |td!d  d"  d|td#d  d$  |tdd  kstt|tdd
 |d}||td#d
 d% |d d&  |tdd
 d'  |d d(  |tdd
 d)  |d d*  |tdd
 d  |d d+  |td d
 d  |d d,  |tdd
 d	  |d d-  |tdd
 d  |d. d/  |tdd
 d  |d
 d0  |td.d
 d  |d
  |tdd
  d ksÄtd S )1Nr=   r   r   r\   l    LQf rJ   i ar>   i r?   r˘   rA   rŁ   r]   r   rj   i˝˙˙˙r   i řşr}   i^  r_   i   rC   rN   rk   i˙˙˙é=   i:ké/   iP@  rS   é!   iČ  é   é*   l     L.l     ćł{ľ l     ]ű
 l     ënLl    XînÁl    (vQ i üi _7 rŚ   r@   r¤   rB   )r   r   r   r7   r!   r   r   )rE   r=   rw   rF   r:   r:   r;   Útest1  s    0˙
˙˙
(˙˙˙
(˙˙˙˙
˙ţ
ţý
ýý
üü
üü
űű
űűűúúrĂ   c                  C   s$  t dt\} }t d| \}}||tdd |  }t||d}||d d |d  d|d   |tdd  |d	 d	 |d
  | |td	d   |d d |d  |tdd   |d d |d  |tdd   |d d d |  |d |tdd  d  ||tdd   ks td S )NrG   r=   rA   rC   r@   r}   r\   r?   rS   rJ   r_   r>   rk   )r   r   r   r7   )rE   rG   r5   r=   rF   rw   r:   r:   r;   Útest_puiseux2/  s.    @˙˙ ˙
˙˙˙ţţţrÄ   c                  C   sŘ  t d\} }}}t||d Ą |ks(ttt||d Ą t| |ddĄ Ą ksVttt|t| |d Ą t|t|  |ddĄ Ą ksttt|t| |d Ą t|t|  |ddĄ Ą ksŇtt|| t|d |d d   }tt||d Ą t| |ddĄ Ą ks&tt|d d |d  t|d t|d d   }tt||d Ą t| |ddĄ Ą kstt| d | t| d d | |d   }tt||d Ą t| |ddĄ Ą ksćtt|d |d  d d t	|d |d   }tt||d Ą t| |ddĄ Ą ksFtt|| | }tt||d Ą t| |ddĄ Ą kstt
t|d d | | }tt||d	 Ą t| |dd	Ą Ą ksŇt|tdd |tdd  | }tt
||d}| Ą |td
d |tdd  |tdd  |td	d d  | |tdd  |tdd  kslttt	||d}| Ą |tdd d |tdd  |tdd  d ksźttt||d}| Ą |td
d  d |tdd d  |tdd d  |td	d d	  | |tdd  |tdd  ksDttt||d}| Ą |tdd d	 |tdd  |tdd d  |tdd  |tdd d  |tdd  |tdd d  d ksŘttt|d |d Ą t|d  |ddĄ Ą kstttd|  | d Ą | d  d | d d  | d d  |  ksXtttdd|   | d Ą d| d  d| d  d  d| d   d|   ksŞtttd|  | d  | d Ą d| d
  d
 | d d  | d d  | d	 d  | d d  | d d  d| d  d  | d d  |  ks<tttd| |d   | d Ą | d	  |d  d	 | d |d  d  | d |d  d  | d |d	  d  | d |d  d  | |d   ksÔtd S )Nz
x, a, b, crC   r   r?   r>   rj   r@   rA   rJ   r_   rś   r   rˇ   r¸   r\   rB   rk   r[   iŔ˙˙˙é@   r]   rN   )r(   r%   rą   r7   r)   rŻ   r°   r*   r4   r+   r,   r   r1   )r=   r8   r9   rv   rF   rw   r:   r:   r;   Útest_rs_series:  sć    ˙ ˙  ˙ ˙  ˙$˙4˙,˙0˙˙˙ @˙˙˙@<˙˙˙˙D˙˙˙˙&˙.
˙˙4
˙˙,
˙
˙
˙
˙
˙˙
ţţ2˙˙˙ţ
ţrĆ   N)^Zsympy.polys.domainsr   r   r   Zsympy.polys.ringsr   Zsympy.polys.ring_seriesr   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   Zsympy.testing.pytestr&   r'   Zsympy.core.symbolr(   Zsympy.functionsr)   r*   r+   r,   r-   r.   r/   r0   r1   r2   Zsympy.core.numbersr3   Z
sympy.corer4   r5   r<   rH   rM   rX   rY   ra   rb   ri   ro   rz   r   r   r   r   r   r   r   r   r   rĄ   rĽ   r¨   rŠ   rŞ   rŤ   rŹ   r­   rł   r´   rš   r˝   rĂ   rÄ   rĆ   r:   r:   r:   r;   Ú<module>   sT   0	

 		?