o
    *ήc8                     @   s0  d dl mZ d dlmZmZmZmZ d dlmZm	Z	m
Z
mZmZ d dlmZ d dlmZmZ d dlmZmZmZ d dlmZ d dlmZmZmZ d d	lmZ d d
lmZ d dl m!Z! d dl"m#Z#m$Z$m%Z%m&Z& d dl'm(Z( d dl)m*Z* dd Z+dd Z,dd Z-dd Z.dd Z/dd Z0dd Z1dd Z2d dl3m4Z4m5Z5 d d l6m7Z7 d d!lm8Z8 d"d# Z9d$d% Z:d&d' Z;d(d) Z<d*d+ Z=d,d- Z>d.d/ Z?d0d1 Z@d2d3 ZAd4d5 ZBd6d7 ZCd8d9 ZDd:d; ZEd<d= ZFd>d? ZGd@dA ZHdBdC ZIdDdE ZJdFdG ZKdHdI ZLdJdK ZMdLdM ZNdNdO ZOdPdQ ZPdRdS ZQdTdU ZRdVdW ZSdXdY ZTdZS )[    )N)
DerivativeFunction	PoleErrorSubs)ERationaloopiI)S)Symbolsymbols)LambertWexplog)sqrt)atancossin)Integral)Oseries)xynk)raises)calculate_seriesc                  C   0   t ttd} tt ttd}| |ksJ d S Nr   )r   r   r   e1e2 r%   E/tmp/pip-target-vg8gfxp4/lib/python/sympy/series/tests/test_series.pytest_sin      r'   c                  C   r    r!   )r   r   r   r"   r%   r%   r&   test_cos   r(   r)   c                  C   r    r!   )r   r   r   r"   r%   r%   r&   test_exp   r(   r*   c                  C   s8   t tttd} tt tttd}| |ksJ d S r!   )r   r   r   r   r"   r%   r%   r&   	test_exp2#   s   r+   c                     s  t dtdks	J ttjtdksJ tt  tt tks$J ttdd  ttdd  tt tdttd  t	ttd  
 dksOJ ttj tdd d  fddtd	D tdtd td  gkssJ ttj tdd d
d  fddtd	D tddt td gksJ ttj tdd
dtksJ ttj tdd
dd
 ttt d   tt d d	  d	  ksJ t} | td	 td td	   td	td t dt t ksJ t| ttt | dtksJ | tttj dd| dt| tt | td	 d	 t | td d t ttd  ks+J tttddftdtf tddt  ksCJ dt ttd	   d	ksTJ dt  d u s_J ttdd  td}ttt jtd|dtt| tttt|  t ksJ tdt j ttdddt ddtd    ttd ttf ksJ ttj ttdddtksJ ttj tt dd
dt ksJ tt j ttdddtksJ tt j tt dd
dt ksJ tttt j dddttt  td	 ttd	  d	  ttd ttd   ks#J tddd}tt|d t| j ddd|td t|  t|d t|d   ksTJ ttttt j d	ddttt  ttd	 ttd	   ksyJ d S )N   r   c                   S   s   t tt  S )N)r   r   r   r   r%   r%   r%   r&   <lambda>-   s    z!test_issue_5223.<locals>.<lambda>c                   S   s   t jddS )N dir)r   r   r%   r%   r%   r&   r-   .   s    r   c                       g | ]}t  qS r%   next.0ier%   r&   
<listcomp>3       z#test_issue_5223.<locals>.<listcomp>   -)r   r0   c                    r2   r%   r3   r5   r8   r%   r&   r:   5   r;   r/      )r0   r            c                   S   s   dt t t  S )Nr,   )r   r   r	   r   r%   r%   r%   r&   r-   F   r;   logx)r   rC      +pTpositivez3/2)r   r   r4   r   Zerolseriesr   r   
ValueErrorsubsremoveOranger   absr   r   r   r   doitr   r   getnr   r   nseriesr	   r   r   )DrC   rG   r%   r8   r&   test_issue_5223)   sb   42&>$B
0" 
H $"&>
.
NrU   c                   C   s  t tttttttksJ ttttjtdd ttjtddks,J ttd ttdtd  ks>J ttd ttdksLJ tttttdksZJ tttttt ksiJ tdtttdtksxJ tt	ttt t	ttksJ dt t	ttt t	ttksJ tt
ttt dt tksJ t t
tttt t
tt t ksJ d S )Nr>   r1   r<   r   r,   )r   r   r   r   r   r   rQ   as_leading_termr   r   r   rN   r%   r%   r%   r&   test_issue_11313[   s   &2$***8rW   c                     s  ddl m  ttttt} tttt  tt}ttt  t fttf}| t| ks1J ttttttd  d tt ttd d tt ttd  }|  |ksZJ | t|kscJ |  | kslJ | t d tt d ttt d	  tt d	 tt ttttt t d  ksJ |t	 |	 tksJ | 	 ttt ksJ t
t fd
d ttt t t	 t  ksJ d S )Nr   zr>   r@   rD   x   rB      r<   c                      s   t tdt  t  S )Nr<   )r   r   r   r   r%   rX   r%   r&   r-      s    z%test_series_of_Subs.<locals>.<lambda>)	sympy.abcrY   r   r   r   r   r   r   r   rQ   r   rL   )subs1subs2subs3subs1_seriesr%   rX   r&   test_series_of_Subso   s0    
"

 *ra   c                  C   s  t d} | tjtdddd| dttt| tttd  td tt| ttttd d  ttd  ks:J | ttdd| dttt| tttd  td tt| ttttd d  ttd  ksnJ | td tdd| dtd tt| tttd  ttd  ksJ | td d tdd| dtd tt| tttd  ttd  ksJ G dd	 d	t }|ttdd|dttt|tttd  td tt|ttttd d  ttd  ksJ d S )
Nfr   r>   r=   r/   r<   r,   c                   @   s   e Zd ZdS )ztest_issue_3978.<locals>.TestFN)__name__
__module____qualname__r%   r%   r%   r&   TestF   s    rf   )r   r   r   r   r   r   )rb   rf   r%   r%   r&   test_issue_3978   s:    "
 "
00"
rg   )
richardsonshanks)Sum)Integerc                  C   s   ddt   t  } tt| t dd dtt dksJ ttdtd  t tdt f}tt|t d dtt	d dksCJ tt|t dd dtt	d dksZJ d S )	Nr,   
         rB   r<   rD   )
r   roundrh   evalfr   rj   rk   r   ri   r   )r9   Ar%   r%   r&   test_acceleration   s
   * ,2rs   c                   C   sh   t dtttt  tddtd dttd    dtd  dttd    ttd  ks2J d S )Nr,   r   r<   rD   rB   r[   r@   )r   r   r   r   r   r%   r%   r%   r&   test_issue_5852   s
   4
rt   c                   C   s   t dt td  tddt dttd  td td t dd    td t d tdd    td dt d d	 tdd    ttd  ksQJ d S )
Nr,   r<   r   rD   r>   r@   rB   ir[   )r   r   r   r   r   r%   r%   r%   r&   test_issue_4583   s   ."
ru   c                  C   s,   dt  tdd } | d t | ksJ d S )Nr,   r<   r>   )r   r   rV   eqr%   r%   r&   test_issue_6318   s   rx   c                  C   s0   t d tdd } |  t tdd ksJ d S )Nr<   r>   rB   )r   r   r   rv   r%   r%   r&   test_x_is_base_detection   s   ry   c                  C   s&   t td } t| ttd ksJ d S )Ng333333?)r   r   r   r8   r%   r%   r&   test_sin_power   s   rz   c                   C   sD   t ttttddtt d d  ttt d ttf ks J d S )Nr>   rn   r<   )r   r   r   r
   r   r%   r%   r%   r&   test_issue_7203   s   (r{   c                  C   s   t ddd\} }| | }tt||ddd| |  | d |d  d  | d |d  d	  | d
 |d
  d  | d |d  d  | d	 |d	  d  | d |d  d  t| d |d  | | kseJ d S )Nza, bTrH      r1   r,   r<   r>   r@   rB   r[   rD   rZ          )r   r   r   r   )abr   r%   r%   r&   !test_exp_product_positive_factors   s   .r   c                   C   s   t ddddks
J d S )Nr,   r|   r1   r   r%   r%   r%   r&   test_issue_8805   s   r   c                  C   sj   t d t  d t d t d   } t| t tt d dt d   t d  dt   tt d t tf ks3J d S )Nr<   r,   r>   rE   rB   )r   r   r	   r   r   r%   r%   r&   test_issue_9549   s    Jr   c                   C   sH   t dtd td   tdtd td  td  ttd  ks"J d S )	Nr,   r   r   r>   rB   rD   r@   )r   r   r   r%   r%   r%   r&   test_issue_10761   s   Hr   c                  C   s   ddt d ddt    d   tdd  } | jt dddddt d   dt d   d	t d   d
t d   dt d   dt d   dt d   tt d  ksRJ d S )Nr,   r<   rB   r|   r      r1   r@   "      rl   i  r?   i     iC     )r   r   r   r   r   r%   r%   r&   test_issue_12578   s   ,L


r   c                  C   s^  t ddd} t ddd\}}| d  | t| | d t|  | | t|  | t|  |  d | t| d d  }ddt| d	 d  d
t| dt| d	 d   | d d| td|  dt|  d
td|   d  dt| d	 d   d
| t| dt| d	 d   t| tj d | tjf }|| dd |ksJ d S )NbetaTrH   ztheta varphirealr<   r,         ?      ?g      ?g      пg      ?g      ?r>   )r   r   r   r   r   Halfr   trigsimp)r   thetavarphiexprsolr%   r%   r&   test_issue_12791   s>   $
*$"r   c                  C   s   t d\} }t| | | | | ksJ t| d|  | | d|  ks$J tt|t|  | t|t|  ks9J t| t | | t ksFJ t| td  | | dt  ksWJ tttt|  | ttt|  kslJ d S )Nzx ar   r,   )r   r   r   r   r   )r   r   r%   r%   r&   test_issue_14384   s   "*".r   c                   C   s   t ttdd tt tdttdd dtt  ttd  ttdd d  ttdd d  ttd	d d
  ttdd d  ttdd d  ttd  ksWJ d S )Nr   r<   r   r,   r>   r@   rD   r[   r~   rZ   	   r}      r   )r   r   r   r   r   r   r%   r%   r%   r&   test_issue_14885   s   4

r   c                   C   s   t tttt ddtd   ddtd    dt  td  ttd tt f ks-J t ttttddtd   ddtd    dt  td  ttd ttf ksXJ d S )Nrn   rD   r,   r>   r<   r   )r   r   r   r	   r
   r   r%   r%   r%   r&   test_issue_15539   s   >
<r   c                   C   s   t tttttd  dtd  d  dtd  d  dtd  d  ttd  ks-J t ttd tdd	td td  dtd  d  ttd  ksPJ t ttttdd	ttd  dtd  d  ttd  ksqJ d S )
Nr<   r>   r|   rB   }   rD   r[   r@   r1   )r   r   r   r   r   r%   r%   r%   r&   test_issue_7259  s   ZFFr   c                   C   s6   t tjtdddt dttd tdf ksJ d S )Nr,   r1   )r   r   r   r   r%   r%   r%   r&   test_issue_11884  s   6r   c                  C   s   t dt dt     dt dt    dt  dt     } | jt tddddt d   ddt d    dd	t    tdd  t d  tt d
 t tf ksMJ d S )Nr,   rB   r1   i    r>   r   r<   r|   rA   )r   r   r	   r   r   r   r%   r%   r&   test_issue_18008  s   4Lr   c                  C   s>   t tdt  } | jtddd  td d ksJ d S )Nr,   gCl?r1   l   I l     o )r   r   r   rN   	nsimplifyr   )rb   r%   r%   r&   test_issue_18842  s   r   c                  C   sF  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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|  d  d|  d|  d|  d  d|   d   d|   d   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|   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|  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#  | d#  d$ }t|| d%d&d#d'| d(  d)| d*   d+| d,   d-| d.   d/| d0   d| d1   d|   d ksJ d S )2NdtTr   r   g      ?g       @r   g      ?-   1   gPFvBgI?gwkN?gh/?gh/?g	%?gIp?r      r      gaAοgi?gi/?gϥ;} @gvQ?go?gUUUUUU?g@g?br@gF)7^@g~j`?g~?g#@rm   r,   r   r|   gt:WNr~   gllf?r@   g?rD   gSUUUUU?rB   gVUUUUU?r>   r<   )r   r   r   r   )r   r   r%   r%   r&   test_issue_19534  s  *&&&&&&



&&&&
&&&&

%%('



r   c                  C   s   t d\} }}}tt| | ||  |ddt| | t| ks#J tt| | | ||  |ddt| | | t| ksBJ d S )Nza b c xr   r,   )r   r   r   r   )r   r   cr   r%   r%   r&   test_issue_11407J  s   6Br   c                   C   s8   t td td  jtdddt tdt ksJ d S )N2   3   r   r1   r,   )r   r   r   r   r%   r%   r%   r&   test_issue_14037P  s   8r   c                     sJ   t tt jtd d  fddtdD } | dt dtd gks#J d S )Nr1   c                    r2   r%   r3   r5   r   r%   r&   r:   V  r;   z$test_issue_20551.<locals>.<listcomp>r>   r,   r<   )r   r   r   rO   )termsr%   r   r&   test_issue_20551T  s   r   c                  C   s   t d\} }}}}}}| |||t  t  t  d||t  || ||  |d   t |d | || |  ||| |d    |d   t   }|jtdd |td  |t  | ttd  kshJ d S )Nzp_0 p_1 p_2 p_3 b_0 b_1 b_2r,   r<   r>   r1   )r   r   r   ratsimpr   )p_0p_1p_2p_3b_0b_1b_2Qr%   r%   r&   test_issue_20697Z  s"   ,>r   c               	   C   s   dt d d } ddt td   td|  d ddt d  dt  dt d t  ttddt d   d tddt d  f dt d dd	t d  d  tt dt  d   ksbJ d S )
Nr,   rD   r<   i4ih  i  i  rm   r   )r   r   r   factorr   )fir%   r%   r&   test_issue_21245b  s   $&,
r   c                  C   sv   t dt tt  t dt  } | ttddtd   ddtd    d ttd ttf tt  ks9J d S )Nr,   r[   rB   r<   r   )r   r   r   r   r	   r   r   r%   r%   r&   test_issue_21938j  s   "Tr   c                  C   s<   dt dtd   } | td}|jrt|jdksJ d S )Nr,   r<   r   r~   )r   r   r   is_Addlenargs)r   resultr%   r%   r&   test_issue_23432o  s   r   N)Usympy.core.evalfr   sympy.core.functionr   r   r   r   sympy.core.numbersr   r   r	   r
   r   sympy.core.singletonr   sympy.core.symbolr   r   &sympy.functions.elementary.exponentialr   r   r   (sympy.functions.elementary.miscellaneousr   (sympy.functions.elementary.trigonometricr   r   r   sympy.integrals.integralsr   sympy.series.orderr   sympy.series.seriesr   r\   r   r   r   r   sympy.testing.pytestr   sympy.series.gruntzr   r'   r)   r*   r+   rU   rW   ra   rg   sympy.series.accelerationrh   ri   sympy.concrete.summationsrj   rk   rs   rt   ru   rx   ry   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&   <module>   sj    2	
.