o
    ÏeB- ã                   @   sœ  d dl Z d dl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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! d dl"m#Z# d dl$m%Z%m&Z&m'Z'm(Z(m)Z) d dl*m+Z+m,Z,m-Z-m.Z. d dl/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7 d dl8m9Z9m:Z:m;Z; d dl<m=Z= d dl>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZF d dlGmHZHmIZI d dlJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZR d dlSmTZTmUZU d dlVmWZWmXZX d dlYmZZZ d dl[m\Z\ d dl]m^Z^ d dl_m`Z` d dlambZb d dlcmdZdmeZe d dlfmgZg d dlhmiZi d dljmkZk d d llmmZm d d!lnmoZo d d"lpmqZq d d#lrmsZsmtZt d d$lmuZu d d%lvmwZw d d&l]mxZx d d'lymzZz d d(l{m|Z| d d)l}m~Z~mZm€Z€mZm‚Z‚mƒZƒ d d*l„m…Z… d d+l†m‡Z‡ e!d,ƒ\ZˆZ‰ZŠZ‹ZŒZZŽZZZ‘Z’Z“e d-d.d/Z”ed0ƒZ•d¾d2d3„Z–d4d5„ Z—ed6d7„ ƒZ˜d8d9„ Z™d:d;„ Zšd<d=„ Z›d>d?„ Zœd@dA„ ZdBdC„ ZždDdE„ ZŸdFdG„ Z dHdI„ Z¡dJdK„ Z¢dLdM„ Z£dNdO„ Z¤dPdQ„ Z¥dRdS„ Z¦dTdU„ Z§dVdW„ Z¨dXdY„ Z©dZd[„ Zªd\d]„ Z«d^d_„ Z¬d`da„ Z­dbdc„ Z®ddde„ Z¯dfdg„ Z°dhdi„ Z±djdk„ Z²dldm„ Z³dndo„ Z´dpdq„ Zµdrds„ Z¶dtdu„ Z·dvdw„ Z¸dxdy„ Z¹dzd{„ Zºd|d}„ Z»d~d„ Z¼d€d„ Z½d‚dƒ„ Z¾d„d…„ Z¿d†d‡„ ZÀdˆd‰„ ZÁdŠd‹„ ZÂedŒd„ ƒZÃdŽd„ ZÄdd‘„ ZÅd’d“„ ZÆd”d•„ ZÇd–d—„ ZÈd˜d™„ ZÉdšd›„ ZÊdœd„ ZËdždŸ„ ZÌd d¡„ ZÍd¢d£„ ZÎd¤d¥„ ZÏd¦d§„ ZÐd¨d©„ ZÑdªd«„ ZÒd¬d­„ ZÓd®d¯„ ZÔd°d±„ ZÕd²d³„ ZÖd´dµ„ Z×d¶d·„ ZØd¸d¹„ ZÙdºd»„ ZÚd¼d½„ ZÛd¾d¿„ ZÜdÀdÁ„ ZÝdÂdÃ„ ZÞdÄdÅ„ ZßdÆdÇ„ ZàdÈdÉ„ ZádÊdË„ ZâdÌdÍ„ ZãdÎdÏ„ ZädÐdÑ„ ZådÒdÓ„ ZædÔdÕ„ ZçdÖd×„ ZèdØdÙ„ ZédÚdÛ„ ZêdÜdÝ„ ZëdÞdß„ Zìdàdá„ Zídâdã„ Zîdädå„ Zïdædç„ Zðdèdé„ Zñdêdë„ Zòdìdí„ Zódîdï„ Zôdðdñ„ Zõdòdó„ Zödôdõ„ Z÷död÷„ Zødødù„ Zùdúdû„ Zúdüdý„ Zûdþdÿ„ Züd d„ Zýdd„ Zþdd„ Zÿdd„ Z dd	„ Zd
d„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zedd„ ƒZ	dd„ Z
dd„ Zdd„ Zd d!„ Zd"d#„ Zd$d%„ Zd&d'„ Zd(d)„ Zed*d+„ ƒZed,d-„ ƒZd.d/„ Zd0d1„ Zd2d3„ Zed4d5„ ƒZd6d7„ Zd8d9„ Zd:d;„ Zd<d=„ Zd>d?„ Zd@dA„ ZdBdC„ ZdDdE„ ZdFdG„ Z dHdI„ Z!dJdK„ Z"dLdM„ Z#dNdO„ Z$dPdQ„ Z%dRdS„ Z&dTdU„ Z'dVdW„ Z(edXdY„ ƒZ)dZd[„ Z*d\d]„ Z+d^d_„ Z,d`da„ Z-dbdc„ Z.ddde„ Z/dfdg„ Z0dhdi„ Z1djdk„ Z2dldm„ Z3dndo„ Z4dpdq„ Z5drds„ Z6dtdu„ Z7dvdw„ Z8dxdy„ Z9dzd{„ Z:ed|d}„ ƒZ;d~d„ Z<d€d„ Z=d‚dƒ„ Z>d„d…„ Z?d†d‡„ Z@dˆd‰„ ZAdŠd‹„ ZBdŒd„ ZCdŽd„ ZDdd‘„ ZEd’d“„ ZFd”d•„ ZGd–d—„ ZHd˜d™„ ZIedšd›„ ƒZJedœd„ ƒZKdždŸ„ ZLd d¡„ ZMd¢d£„ ZNd¤d¥„ ZOd¦d§„ ZPd¨d©„ ZQdªd«„ ZRd¬d­„ ZSd®d¯„ ZTd°d±„ ZUd²d³„ ZVd´dµ„ ZWd¶d·„ ZXd¸d¹„ ZYdºd»„ ZZd¼d½„ Z[dS (¿  é    N)ÚSumÚ	summation)ÚAdd)ÚTuple)ÚExpr)Ú
DerivativeÚFunctionÚLambdaÚdiff)Ú
EulerGamma)ÚEÚFloatÚIÚRationalÚnanÚooÚpiÚzoo)ÚEqÚNe)ÚS)ÚSymbolÚsymbols)Úsympify)ÚAbsÚimÚ
polar_liftÚreÚsign)ÚLambertWÚexpÚ	exp_polarÚlog)ÚacoshÚasinhÚcoshÚcothÚcschÚsinhÚtanhÚsech)ÚMaxÚMinÚsqrt)Ú	Piecewise)ÚacosÚasinÚatanÚcosÚsinÚsincÚtanÚsec)Ú
DiracDeltaÚ	Heaviside)ÚCiÚEiÚSiÚerfÚerfcÚerfiÚfresnelcÚli)ÚgammaÚ	polygamma)ÚhyperÚmeijerg)ÚSingularityFunction)Úlerchphi©Ú	integrate)ÚAnd)ÚMatrix)ÚPolyÚfactor)Ússtr)ÚO)ÚInterval)Ú	gammasimp)Úsimplify)Útrigsimp)ÚIdxÚIndexedBase)Ú	unchanged)Úfloor)ÚIntegral)ÚNonElementaryIntegral)Úunits)ÚraisesÚslowÚskipÚON_CIÚwarns_deprecated_sympyÚwarns)ÚSymPyDeprecationWarning)Úverify_numericallyzx y z a b c d e s t x_1 x_2ÚnT©ÚintegerÚfé   c                 K   s   t t| ƒj|fi |¤ŽddS )NT)Z	full_prec)rM   r   Úevalf)Úerb   Úoptions© rj   úTD:\Projects\ConvertPro\env\Lib\site-packages\sympy/integrals/tests/test_integrals.pyÚNS4   s   rl   c                  C   s¢   t dt tƒ} |  t¡t td tddksJ ‚ttdd t| tƒ W d   ƒ n1 s-w   Y  ttdd t| tfƒ W d   ƒ d S 1 sJw   Y  d S )Né   ZQQ)ÚdomainF©Ztest_stacklevel)rK   ÚxrH   r_   r`   rW   ©Úprj   rj   rk   Útest_poly_deprecated8   s    ÿ"ÿrs   c                     s,  dt  ‰ tˆ t t tfƒ ¡ dksJ ‚tˆ tt tfƒ ¡ ttdt  ƒ ks(J ‚tt‡ fdd„ƒ tt‡ fdd„ƒ dt d d  ‰tˆt t tfƒ ¡  ¡ t	dƒ t
 d ksZJ ‚tt‡fdd„ƒ dt d d  } t| t t tfƒ ¡ dkszJ ‚t| t d	dfƒ ¡ tdƒ ks‹J ‚t t d d  }t|t t tfƒ ¡ dks¢J ‚t|t d	dfƒ ¡ dks°J ‚t d t d d  }t|t t tfƒ ¡ tu sÉJ ‚t|t d	dfƒ ¡ tdƒ d
 ksÜJ ‚dt d d dt d    }t|t t tfƒ ¡ t
 d ksüJ ‚t|t d	dfƒ ¡ tdƒ tdƒd  ksJ ‚d S )Né   r   c                      s   t ˆ tƒ ¡ S ©N)rW   rp   Úprincipal_valuerj   ©Úgrj   rk   Ú<lambda>G   ó    z&test_principal_value.<locals>.<lambda>c                      s   t ˆ ƒ ¡ S ru   )rW   rv   rj   rw   rj   rk   ry   H   ó    é   c                      s   t ˆ tt dfƒ ¡ S ©Nrt   )rW   rp   r   rv   rj   )Úlrj   rk   ry   L   ó    rm   éþÿÿÿé   )rp   rW   r   rv   Úyr   rZ   Ú
ValueErrorÚtogetherr-   r   r"   r1   )ÚdÚvÚsre   rj   )rx   r~   rk   Útest_principal_valueB   s(   *0"&$4rˆ   c                 C   s<   | j }|D ]}|  |¡ ¡ |  ¡  |¡  ¡ dksJ ‚q|S )zºReturn the set of symbols, s, which were used in testing that
    i.diff(s) agrees with i.doit().diff(s). If there is an error then
    the assertion will fail, causing the test to fail.r   )Úfree_symbolsr
   ÚdoitÚexpand)ÚiZsymsr‡   rj   rj   rk   Ú	diff_test_   s   *r   c                   C   sd   t ttƒtddfƒdksJ ‚t td tdtfƒdksJ ‚t ddttƒ  tdtfƒtdƒks0J ‚d S )Nr   rt   éÿÿÿÿr€   rm   )rH   r"   rp   r   r    rj   rj   rj   rk   Útest_improper_integrali   s   ,r   c                  C   s  t ttƒ} | jttƒfksJ ‚t ttfƒ}|jttƒfksJ ‚t tttdtfƒƒ}|jttƒfks3J ‚t tttƒƒ}|jttƒfksDJ ‚t tttddƒfƒ}|jttddƒfksZJ ‚t ttdkƒ}|jttdtƒfksmJ ‚t ttdktdk @ ƒ}|jttddƒfks„J ‚d S )Nrt   rm   é
   é   )	rW   rb   Úlimitsr   r   rp   r‚   rO   r   )Ús1Ús2Zs3Zs4Zs5Zs6Zs7rj   rj   rk   Útest_constructoro   s   
r•   c                  C   sÐ  t dtƒdks	J ‚t ttddfƒdksJ ‚t ttƒtksJ ‚t tjtƒtju s)J ‚tt ttƒtƒdks5J ‚tt ttddfƒtƒdksDJ ‚tt ttƒtƒtksPJ ‚tt ttdtfƒtƒtks_J ‚td d } tt| tdtfƒtƒtt | tdtfƒtƒ 	¡  
¡   krŒdt d  
¡ ksJ ‚ J ‚tt| tdtfƒtƒtt | tdtfƒtƒ  kr¬dks¯J ‚ J ‚tt| tdtfƒtƒtt | tdtfƒtƒ  krÌdksÏJ ‚ J ‚tt| tƒtƒtt | tƒtƒ  krædkséJ ‚ J ‚t| tttfƒ t¡t | tttfƒ t¡ 	¡  
¡ ksJ ‚t | tttfƒ t¡ 	¡ dt d ksJ ‚t| tttfƒ t¡ 	¡ dt d   
¡ ks5J ‚ttd ttdt fƒ t¡dtd  ksMJ ‚t ttƒ ¡ thksZJ ‚t ttƒtddfƒ ¡ tjtjthkspJ ‚tt ttdt fƒƒthksJ ‚tt ttdt fƒƒtthks“J ‚tttttfƒdks J ‚tttt t fƒdks¯J ‚ttt ttƒ tƒtt td d  ttƒ ksËJ ‚t tƒjsÓJ ‚tddd}t |t tƒjdu sæJ ‚d S )	Nr   rt   rm   é   r|   rb   F©Zcommutative)rW   rp   r   r   ÚNaNr
   r‚   ÚtrH   rŠ   r‹   ÚaZatomsre   ÚZeroÚOner   r    Úis_commutativer   ©rh   rb   rj   rj   rk   Útest_basics…   sR   ÿþÿÿÿÿ4
ÿ,20,"$8rŸ   c                  C   sz   G dd„ dt ƒ} | ƒ }t|d |ƒ|d d | ksJ ‚t|d |ddfƒtddƒks-J ‚ttdd„ ƒ ttd	d„ ƒ d S )
Nc                   @   s   e Zd ZdZdZdS )ztest_diff_wrt.<locals>.TestTN)Ú__name__Ú
__module__Ú__qualname__Z	_diff_wrtr   rj   rj   rj   rk   ÚTest´   s    r£   rt   rm   r   r|   c                   S   s   t td td ƒS r}   ©rH   rp   rj   rj   rj   rk   ry   ¼   s    ztest_diff_wrt.<locals>.<lambda>c                   S   s   t td td ddfƒS )Nrt   r   r¤   rj   rj   rj   rk   ry   ½   s    )r   rH   r   rZ   rƒ   )r£   r™   rj   rj   rk   Útest_diff_wrt³   s   ""r¥   c                   C   s  t tttdt dt fttdt fƒƒthksJ ‚t tttdt fttdt fƒƒthks/J ‚t tttdt fttdt fƒƒtthksFJ ‚t ttttƒƒtthksTJ ‚t ttt ttƒƒtthksdJ ‚t ttt ttdtfƒƒthksvJ ‚t ttt tttftttfƒƒtthksŒJ ‚d S )Nr|   r‘   rm   rt   )r   rW   rp   r‚   rj   rj   rj   rk   Útest_basics_multipleÀ   s   2,. $0r¦   c                  C   sô   t ddd\} }tddd}t| | |fƒ}| ¡  ¡ | ¡  ¡ ks$J ‚| ¡  ¡ | ¡  ¡ ks2J ‚| ¡  ¡ | ¡  ¡ ks@J ‚tddd}t| | |fƒ}| ¡  ¡ | ¡  ¡ ks\J ‚| ¡  ¡ | ¡  ¡ ksjJ ‚| ¡  ¡ | ¡  ¡ ksxJ ‚d S )NzA BFr—   rp   T)Úcomplex©Úreal)r   r   rW   ZadjointrŠ   Ú	conjugateZ	transpose)ÚAÚBrp   rr   rj   rj   rk   Útest_conjugate_transposeÊ   s    r­   c                  C   s:  t dtdtfƒdksJ ‚t dtdtfƒdt ksJ ‚t ttdtfƒtd d ks*J ‚t dt tdtfƒdtd  d ks>J ‚t dtd  tdtfƒtd ksPJ ‚t dt tdtfƒttƒks`J ‚t dtd  tdtfƒdt d kstJ ‚t td dt  d tdtfƒtd d dtd  d  dt  ks˜J ‚t td tƒtd d ks§J ‚t dt t d tƒdt d td  d ksÀJ ‚td	ƒ} td
ƒ}t tt tdtfƒttd  d ksÜJ ‚t ttd  tdtfƒttd  d ksòJ ‚t ttd  | t  | tdtfƒttd  d | td  d  |t  ksJ ‚d S )Nr   r|   rm   rt   rŽ   r‘   é   é   ÚbÚcr   )rH   r™   rp   r"   r   rš   )r°   r±   rj   rj   rk   Útest_integrationÚ   s    ($ (H2(,Vr²   c                   C   s
  t td td  tddftddfƒtdƒksJ ‚t td td  ttƒtddƒtd  td  ks3J ‚t dtd  dt d  tƒtdt ƒtddƒ tdt ƒtddƒ  tddt  dtd     kshJ ‚t ttt ƒt tddftddfƒtdƒ d ksƒJ ‚d S )	Nrm   r   rt   rŽ   é	   r|   r®   r   )rH   rp   r‚   r   r"   r3   rj   rj   rj   rk   Útest_multiple_integrationí   s   06Fÿ:r´   c                   C   s"   t tt ƒtdtfƒdksJ ‚d S )Nr   rt   )rH   r    rp   r   rj   rj   rj   rk   Útest_issue_3532õ   s   "rµ   c                   C   sz   t ttƒd tƒdttƒd  d ksJ ‚t ttƒtƒdttƒd  d ks(J ‚t dttƒd  tƒdttƒ ks;J ‚d S )Nr|   rm   r‘   rt   r€   )rH   r-   rp   rj   rj   rj   rk   Útest_issue_3560ù   s   *&*r¶   c                   C   s   t tdd„ ƒ d S )Nc                   S   s   t ttfƒS ru   r¤   rj   rj   rj   rk   ry      r{   z"test_issue_18038.<locals>.<lambda>)rZ   ÚAttributeErrorrj   rj   rj   rk   Útest_issue_18038ÿ   s   r¸   c                  C   sp  t ttd t  td  ttƒ} tƒ  t| tƒ}W d   ƒ n1 s#w   Y  ttdd t| tƒ}W d   ƒ n1 s>w   Y  ttdd t| tƒ}W d   ƒ n1 sYw   Y  t|t ƒdu sgJ ‚t|t ƒdu spJ ‚|j	ttfksyJ ‚|j	ttfks‚J ‚| 
¡ td d td t d  ttd   ksœJ ‚| 
¡ tt td td  d  td d  ks¶J ‚d S )Nrm   r|   Fro   Tr   )rK   rp   r‚   r^   rW   r_   r`   rH   Ú
isinstanceÚgensÚas_expr)rr   ZqxZqyrj   rj   rk   Útest_integrate_poly  s     ÿÿÿ48r¼   c                  C   sl  t ttd t  td  ttƒ} tƒ  t| tddfƒ}W d   ƒ n1 s&w   Y  ttdd t| tddfƒ}W d   ƒ n1 sDw   Y  ttdd t| tdtfƒ}W d   ƒ n1 sbw   Y  t	|t ƒdu spJ ‚t	|t ƒdu syJ ‚|j
tfksJ ‚|j
tfks‰J ‚| ¡ tjtd  td  ksšJ ‚| ¡ td d tt  td td  d  ks´J ‚d S )	Nrm   r|   r   rt   Fro   Tr   )rK   rp   r‚   r^   rW   r_   r`   rH   r   r¹   rº   r»   r   ÚHalf)rr   ZQxZQyrj   rj   rk   Útest_integrate_poly_definite  s     ÿÿÿ"8r¾   c                      sD   t dƒ‰ ttƒtd d ksJ ‚ttdd„ ƒ tt‡ fdd„ƒ d S )Nr‚   rm   c                   S   s   t dƒS ©Nrm   rG   rj   rj   rj   rk   ry   1  s    z)test_integrate_omit_var.<locals>.<lambda>c                      s   t tˆ  ƒS ru   r¤   rj   ©r‚   rj   rk   ry   2  r{   )r   rH   rp   rZ   rƒ   rj   rj   rÀ   rk   Útest_integrate_omit_var,  s   rÁ   c                  C   sd   t dƒ} ttt| ƒ tƒtd t| ƒ d ksJ ‚ttd t| ƒ tƒtd t| ƒ d ks0J ‚d S )Nr‚   rm   iè  ié  )r   rH   rp   r3   rÀ   rj   rj   rk   Útest_integrate_poly_accurately5  s   *2rÂ   c                  C   sN   t dƒ} ttd | ƒtd |  ksJ ‚ttd | ddfƒdtd  ks%J ‚d S )Nr‚   rm   rŽ   rt   )r   rH   rp   rÀ   rj   rj   rk   Útest_issue_3635>  s   (rÃ   c                  C   sž   t ddd} tt|  tddt| d  | d  ksJ ‚tt| ƒt d|   dt| ƒ  tddt|  ƒt| ƒt d|   dt| ƒ   dt| ƒ  ksMJ ‚d S )Nr‚   T©ÚpositiveÚnone©Zcondsrt   rm   )r   rH   rp   r    r3   rÀ   rj   rj   rk   Útest_integrate_linearterm_powF  s
   *(4ÿrÈ   c                   C   sˆ   t tttƒ tƒdt ttƒd  d ksJ ‚t tttƒ tttƒd   tƒdt ttƒd  d dt ttƒd  d  ksBJ ‚d S )Nrm   r|   r‘   )rH   r   r-   rp   r   rj   rj   rj   rk   Útest_issue_3618O  s   . .ÿrÉ   c                   C   s"  t ttd t ƒtƒttttd  ƒtd  ttd dƒftdfƒks%J ‚t ttd t ƒtƒttttd  ƒtd  ttd dƒftdfƒksJJ ‚t ttd t ƒttd t ƒ tƒttttd  ƒtd  ttd dƒftdfƒttttd  ƒtd  ttd dƒftdfƒ ksJ ‚d S )Nrt   r   T)rH   r2   rb   rp   r.   r3   r   rj   rj   rj   rk   Útest_issue_3623U  s   *
ÿ*
ÿ$..ÿÿrÊ   c                  C   s    t dddd} tdt t| t t d ƒ tddgƒdtt|  ƒ t|   ks)J ‚ttt| t t d ƒ td	dƒ tddgƒdtt|  ƒ t|   ksNJ ‚d S )
Nrb   T)rd   Únonzerog      à¿rm   r€   r   ç       @rŽ   )r   rH   rp   r3   r   r2   r   ©rb   rj   rj   rk   Útest_issue_3664_  s   &ÿ,ÿrÎ   c                   C   s4   t tdtd dt  d  tddfƒƒdksJ ‚d S )Nrt   rm   r®   é   r   z1.10714871779409)rl   rW   rp   rj   rj   rj   rk   Útest_issue_3679g  s   4rÐ   c                  C   sb   ddl m}  ddlm} | tttd ƒtƒƒtdƒttƒ |tdƒt ttƒ ƒ d ks/J ‚d S )Nr   ©Úexpand_func)Úfresnelsrm   )	Úsympy.core.functionrÒ   Ú'sympy.functions.special.error_functionsrÓ   rH   r3   rp   r-   r   )rÒ   rÓ   rj   rj   rk   Útest_issue_3686l  s
   *ÿrÖ   c                  C   s@   t j} t j}tt|  | td| d| fƒd|  | ksJ ‚d S )Nrt   r‘   é   )rY   Úmr‡   rH   rp   )rØ   r‡   rj   rj   rk   Útest_integrate_unitss  s   4rÙ   c                   C   s@   t tdt ƒtƒt ttdt ƒ  ttdt ƒ  ksJ ‚d S r¿   )rH   r   rp   rj   rj   rj   rk   Útest_transcendental_functionsy  s   $ÿrÚ   c                   C   sd   t tdt ƒt tddfƒtd  d ksJ ‚t ttƒdt d  tddfƒtd  d ks0J ‚d S )Nrt   r   rm   r¯   rŽ   )rH   r"   rp   r   rj   rj   rj   rk   Útest_log_polylog~  s   .6rÛ   c                  C   s\   dt tƒ dt tƒd   } tt| tƒtƒ}t|  td¡ ¡ | td¡ ¡  ƒdk s,J ‚d S )Nr   rm   é*   g»½×Ùß|Û=)r"   rp   r
   rH   ÚabsÚsubsrg   )re   Zfidrj   rj   rk   Útest_issue_3740ƒ  s   0rß   c                   C   s&   t ddtd   tƒttƒksJ ‚d S ©Nrt   rm   )rH   rp   r1   rj   rj   rj   rk   Útest_issue_3788‰  ó   &rá   c                      s6   t tƒ‰ tˆ tƒttƒ ksJ ‚tt‡ fdd„ƒ d S )Nc                      s   t ˆ dt ƒS r¿   r¤   rj   ©re   rj   rk   ry     rz   z!test_issue_3952.<locals>.<lambda>)r3   rp   rH   r2   rZ   rƒ   rj   rj   rã   rk   Útest_issue_3952  s   rä   c                   C   s6   t dt dt  tƒdt tdƒ td  ksJ ‚d S r¿   ©rH   rp   r"   rj   rj   rj   rk   Útest_issue_4516“  ó   6ræ   c                  C   sF   t tdt  t ƒtdtfƒ} t| ƒtjkrt| ƒt	ddƒks!J ‚d S )Nrt   r   rŽ   rm   )
rH   r    r   rp   r   r   r   r½   r   r   )Úansrj   rj   rk   Útest_issue_7450—  s   (ré   c                	   C   sÀ   t dtdt ƒ ddtdt ƒ   tdtfƒt d tdƒt d  ks'J ‚t dtdt ƒ ddtdt ƒ   ƒt d tdƒttdƒttƒ ƒttttd  t ƒ   d  ks^J ‚d S )Nrt   rm   r|   r   r‘   ©rH   r2   rp   r   r-   r1   r5   rV   rj   rj   rj   rk   Útest_issue_8623œ  s   NFÿÿrë   c                   C   sŒ   t ddttƒ  tdtfƒttdƒ ksJ ‚t ddttƒ  ƒdtdƒ ttdƒttd ƒ ƒtttd td  t ƒ   d ksDJ ‚d S ©Nrt   rm   r   r|   rê   rj   rj   rj   rk   Útest_issue_9569¢  s   ,`rí   c                  C   sÀ   t ddd} ttt d  d|  |   ƒtdt |  |  ƒ }t|tttfƒ}t|tdtfƒtdƒ|  ttd  d| d   ƒ dttƒ  tt	tdƒt d|   ƒ d  td  ks^J ‚d S )Nr‡   TrÄ   rm   r   )
r   r    Úzr‚   r-   r   rH   rp   r   r<   )r‡   ZpzZpzgxrj   rj   rk   Útest_issue_13733§  s   2>ÿÿrï   c                   C   s   t ddttƒ  tdtfƒttdƒ ksJ ‚t ddttƒ  ƒdtdƒ ttdƒttd ƒ d ƒtttd td  t ƒ   d ksFJ ‚d S rì   rê   rj   rj   rj   rk   Útest_issue_13749¯  s   ,drð   c                   C   s<   t ttƒdt d  tƒtttƒtd d  tƒksJ ‚d S rà   )rH   r    rp   rX   rj   rj   rj   rk   Útest_issue_18133´  ó   <rñ   c                  C   sä   t ddd} t ddd}t|t t|  t t t t ƒ t|  t t t t ƒ tt  t	dt t t| t t t t ƒ dƒftt|  t t t t ƒ dfƒ}t
dt t tt tt   d	  }t|tƒ|kspJ ‚d S )
Nz3999999.9999999995é5   )Ú	precisionz2.5000000000000004e-7ç      ð?r   Tr€   gŽíµ ÷Æ >)r   r.   r   r    r   r™   r‚   rp   rî   r   r   rH   )rš   r°   ÚrZfunrj   rj   rk   Útest_issue_21741¸  s   D(ÿ þ$r÷   c                  C   sZ   t dddd„ ƒ} t| tƒt ttƒ tdt ƒ gtdt ƒ tdt ƒ ggƒks+J ‚d S )Nrm   c                 S   s    | | d t | | d t ƒ S r}   )r3   rp   )rŒ   Újrj   rj   rk   ry   Ã  s     ztest_matrices.<locals>.<lambda>r|   )rJ   rH   rp   r2   )ÚMrj   rj   rk   Útest_matricesÂ  s
   
þrú   c                   C   s¬   t ttƒtƒtttƒtƒksJ ‚t ttƒtddfƒtttƒtddfƒks&J ‚t ttƒtttƒtƒ tƒttƒd d ks>J ‚t tttƒtƒttƒ tƒtttƒƒksTJ ‚d S ©Nr   rt   rm   )rH   re   rp   rW   r
   r"   rj   rj   rj   rk   Útest_integrate_functionsË  s    ,00rü   c                   C   s‚   t tttƒtƒtƒttƒksJ ‚t tttƒtƒtƒttttƒtƒ ks%J ‚t tttƒtƒd tƒttttƒtƒd tƒks?J ‚d S r¿   )rH   r   re   rp   r‚   rW   rj   rj   rj   rk   Útest_integrate_derivativesÓ  s
    *ÿrý   c                     sÞ  t td d tddfƒ} t}dt d }|  ¡ |  ||¡ ¡ ks"J ‚|  ||¡ ||¡| ks0J ‚dt d }t}|  ||¡ ||¡| ksFJ ‚t tdt ƒtddfƒ} |  tdt ¡t ttƒtd  tdtfƒksjJ ‚|  tdt ¡ tdt ¡| ks|J ‚t ttd  ƒtt tfƒ} |  tdt ¡t dtdtd  ƒ tt tfƒks¥J ‚t ttƒ t| t ¡ ¡ t t| d  tƒ ¡ ks¿J ‚tdƒ}t ttd| fƒ tdt ¡ ¡ t dtd  tt d| fƒ ¡ ksçJ ‚t ttd|fƒ tdt ¡t td td| tfƒksJ ‚t tt tddftddfƒ‰ ˆ  ttdt  tf¡ ¡ ˆ  ttdt	  tf¡ ¡   kr7dks:J ‚ J ‚t tt| t
fƒ‰ ˆ  tdt ¡t dt t| d t
d fƒks[J ‚tt‡ fd	d
„ƒ tt‡ fdd
„ƒ tt‡ fdd
„ƒ tt‡ fdd
„ƒ tt‡ fdd
„ƒ t td tddfƒ‰ tt‡ fdd
„ƒ tddd}tddd}t tt||fƒ‰ ˆ  tdt ¡ ˆ  tdt ¡t dt t|d |d fƒksÐJ ‚t tt| fƒ‰ ˆ  tdt ¡t dt t| d fƒksíJ ‚d S )Nrm   rt   rŽ   r|   r   éüÿÿÿéýÿÿÿr   c                      s   ˆ   td¡S r}   )Ú	transformrp   rj   ©rŒ   rj   rk   ry   ÷  r{   z test_transform.<locals>.<lambda>c                      s   ˆ   ttt ¡S ru   ©r   rp   r‡   r™   rj   r  rj   rk   ry   ø  ó    c                      s   ˆ   tt ¡S ru   ©r   rp   r‡   rj   r  rj   rk   ry   ù  rz   c                      s   ˆ   tttf¡S ru   r  rj   r  rj   rk   ry   ú  r  c                      s   ˆ   dt dt ¡S r¿   r  rj   r  rj   rk   ry   û  ó    c                      s   ˆ   td t¡S r¿   r  rj   r  rj   rk   ry   þ  r  rš   T)Únegativer°   rÄ   )rW   rp   r‚   rŠ   r   r3   r   r    r   rî   r°   r‡   rZ   rƒ   r   )rš   ZfxÚfyZ_3ÚamÚbprj   r  rk   Útest_transformÚ  sZ   0$6ÿ  ÿ
ÿ
ÿÿ220r
  c                  C   s^   t jttƒ ttdtd  ƒ d  } ttttƒƒtƒ| ks J ‚ttttƒƒtƒ| ks-J ‚d S rà   )	r   r½   r0   rp   r-   rH   r2   r3   r/   rã   rj   rj   rk   Útest_issue_4052
  s   &r  c                  C   sˆ  t tttddfƒdƒdksJ ‚tttd  ƒtt tfƒ} t | dƒdks&J ‚t | d t ttddƒ  dƒdv s:J ‚td	ƒ}d
t	dƒ dd|d    }dt	dƒ d| d  t	d|d  | d ƒd  }d|d  d d|d  d|  d d  }t	dƒd|d  d|  d  d|d  d|  d d  }|||  | }t t||ddfƒdƒt dt	dƒ dt  dt
t	dƒƒ  d dƒksÆJ ‚t tttdt ƒƒdt td   tddfƒdƒt ddƒksæJ ‚t tt
t	td d ƒƒt	td d ƒtd d   tddfƒdƒt dtd  d dƒksJ ‚t ttttt ƒtt t ƒ td d   tdtfƒdƒt ddƒks;J ‚t tttttƒttƒ ƒƒttd td fƒdddt ddƒks^J ‚t dttdttd ƒ ƒtt tfƒ dddt ddƒks~J ‚t dttdttd ƒ ƒtt tfƒ dddt ddƒksžJ ‚t dttdttd ƒ ƒtt tfƒ dddt ddƒks¾J ‚t tdtd tddfƒ  dd!dd"d#v sÕJ ‚tttƒtd  tdtfƒjdd$}d%|  k rôd&k s÷J ‚ J ‚t tttƒtd  tdtfƒd'd(d)ksJ ‚t tttt d ƒt tt d*fƒd'd(d+ks(J ‚t tttƒƒd,ks4J ‚t ttttfƒƒd-ksBJ ‚d S ).Nrm   r‘   rf   z10.5000000000000z1.77245385090552rt   l      Fµx:^V )z2.71828182845904e-20z2.71828182845905e-20r™   r®   r|   é   r   é   éù   é6   éA   r   é2   é1   é¢   r×   z*pi/sqrt(3) * log(2*pi**(5/6) / gamma(1/6))é`   zlog(2)/2-1/4T©Úchopzpi/4*log(4*pi**3/gamma(1/4)**4)rÏ   é   é   zsqrt(1-x**2)é   )Úmaxnr  )z0.0Ú0)r  g\Âõ(\ß?gR¸…ëQà?Úosc)Úquadz0.504067061906928rŽ   z0.276374705640365zIntegral(x, x)zIntegral(x, (x, y)))rl   rW   rp   r    r   r   r   r   r   r-   r1   r"   r3   r2   rg   r‚   )Úgaussr™   rš   r°   r±   r…   re   rj   rj   rk   Útest_evalf_integrals  s¢   ÿÿÿ4,<,ÿ0ÿ4ÿÿ
ÿÿ
ÿÿÿ
ÿ4
ÿ(ÿ
ÿ(ÿ
ÿ(ÿ
ÿ
ÿÿ
ÿ$ ÿ
ÿÿÿ
ÿ r  c                   C   s†   t tdtd d  tƒ td¡dddv sJ ‚t tdtd d  tddfƒƒdks+J ‚t tdtd d  tddfƒdddksAJ ‚d S )	Nrt   r‘   r   Tr  )z-0.000976138910649103z0.965906660135753z1.93278945918216rm   z0.0144361088886740)rl   rH   rp   rÞ   rW   rj   rj   rj   rk   Útest_evalf_issue_939E  s   $ÿ(ÿÿr   c                  C   sŠ   t ttƒtt  tddftddfƒ} t| dƒdksJ ‚| tddƒdtdƒ d  ks,J ‚t tttt  ƒtddftddfƒtju sCJ ‚d S )	Nrt   rm   rŽ   rf   z2.43790283299492rþ   r|   r®   )	rH   r-   rp   r‚   rl   r   r3   r   r›   ©Úresrj   rj   rk   Ú(test_double_previously_failing_integralsT  s   $"2r#  c            	      C   s   t ttdƒt tddƒ } t ttdƒd t tddƒ }t| tƒ|ks#J ‚dt tddƒ dt tddƒ  }dt tdd	ƒ dt tddƒ  }t|tƒ|ksLJ ‚d
td
  t dt tddƒ  d
t tddƒ  }d
td  t d d
t t tddƒ  dt tddƒ d  }td
 td
  dt t tddƒ  d
t tddƒ  }t|tƒ|ks¥J ‚t|tƒ|ks®J ‚tt|tfƒs·J ‚t|tƒt|tfƒksÄJ ‚t|tƒ ¡ |ksÏJ ‚dt tddƒ d
t tddƒ  }dt tddƒ d d
t tddƒ  }t|tt tfƒ|ksþJ ‚tt tddƒtƒt tddƒksJ ‚tt tddƒtt tfƒd	ks"J ‚tdt tddƒ tt tfƒdks6J ‚tt tddƒt	tƒ tt tfƒt	dƒksNJ ‚d S )Nr|   r‘   rŽ   r   r   r   iúÿÿÿr€   rt   rm   rþ   r–   r®   )
rE   rp   rš   rH   r‚   rU   rW   rŠ   r   re   )	Zin_1Zout_1Zin_2Zout_2Zin_3Zout_3_1Zout_3_2Zin_4Zout_4rj   rj   rk   Ú"test_integrate_SingularityFunction_  s*     0<4 $$$(4r$  c                  C   sš  t ttƒttƒ tt tfƒtdƒksJ ‚t ttƒd tt tfƒtdƒks(J ‚t t ddt  tt  dt  ttƒ ttd ƒ tddfƒtddfƒdksPJ ‚ttd td   ƒt } t | ttdt  ƒ tt tftt tfƒt | ttdt  ƒ tt tftt tfƒ  krÈt | tdt t ƒ tt tftt tfƒ  krÈt | tdt t ƒ tt tftt tfƒ  krÈdtdt ƒ ksËJ ‚ J ‚d S )Nr   rm   r   rt   r   ée   )	rH   r7   rp   re   r   r‚   r    r   r-   rq   rj   rj   rk   Útest_integrate_DiracDelta|  s.   *&ÿ
ÿÿÿÿ**ÿ*þ*ýür&  c                	   C   sb  t tt tƒtttd  td  ttdƒfttƒdfƒksJ ‚t tt tƒttt ttƒ tttƒdƒftdfƒks<J ‚t ttt ƒtƒtttt ƒt ttdƒftdfƒksYJ ‚t tttt ƒ tƒttt d ttt ƒ td  ttd dƒftd d dfƒks†J ‚t ttt  tƒtttt d  tt d  ttt dƒfttƒdfƒks­J ‚t ttt  tƒtttt  tttƒ  ttttƒ dƒftdfƒksÒJ ‚t ttt ƒtƒtt	tt ƒt ttdƒftdfƒksïJ ‚t ttt ƒd tƒttt d t	tt ƒttt ƒ d  t ttdƒftdfƒksJ ‚t tttt ƒ tƒttt	tt ƒ t ttt ƒtd   ttdƒftd d dfƒksMJ ‚t t	tt ƒtƒtttt ƒ t ttdƒfdƒksjJ ‚t t	tt ƒd tƒttt d t	tt ƒttt ƒ d  t ttdƒfdƒks–J ‚t tt	tt ƒ tƒtt ttt ƒ t t	tt ƒtd   ttdƒfdƒksÁJ ‚t ttt ƒtdt
fƒtttt
 ƒt dt  tt kttk @ ttdƒ@ ft
dfƒksïJ ‚t ttƒtt ttt ƒ ƒ tƒtttƒ ttt ƒttttt ƒ ƒ ttttt ƒ ƒ  tttd ƒftdfƒks/J ‚d S )Nrt   rŽ   Tr   rm   ©r   T)rH   rp   r‚   r.   r   r"   r    rb   r2   r3   rî   r   r™   r-   rj   rj   rj   rk   Ú test_integrate_returns_piecewise  sZ   &
ÿ"
ÿ
ÿ:
ÿ2
ÿ.
ÿ
ÿ:ÿ>ÿÿ6ÿ4ÿ8ÿ$<ÿþr(  c                  C   st  t ddd} tt| dƒ| ddfƒdksJ ‚tt| d | d ƒ| ddfƒtdd	ƒks+J ‚ttt| ƒt|  ƒƒd | ƒttd|  ƒd | dkfd
td|  ƒd  dfƒksUJ ‚t ddd}tt|| ƒt| d  ƒ | t tfƒ}t|t| d  ƒ | t |fƒ}t| t| d  ƒ | |tfƒ}|||   krµtt	ƒ| t
|ƒ d tt	ƒ| d  t|d  ƒd  ks¸J ‚ J ‚d S )Nrp   Tr¨   rm   r   r|   r   r  r×   rt   r€   r±   )Zextended_real)r   rH   r,   r+   r   r    r.   r   r-   r   r<   )rp   r±   Zint1Zint2Zint3rj   rj   rk   Útest_integrate_max_min®  s   ,,
ÿ& &ÿÿr)  c                  C   s2  t ttƒtddfƒtddƒksJ ‚t ttƒtddfƒtjks J ‚t ttd ƒtddfƒtddƒks3J ‚t ttd d ƒtddfƒdksEJ ‚t ttd dt  ƒtdd	fƒd
ksYJ ‚t ttƒtddfƒdksgJ ‚t ttƒttƒ tt tfƒdkszJ ‚t ttd ƒtd  tddfƒtddƒks‘J ‚t	ddd\} }t t| ƒ| ƒt
| d  d | dkf| d d dfƒks¶J ‚t td|  d ƒ| ƒt
| d  d|   | dkf| d d|   d dfƒksÝJ ‚t t| |d  ƒ| ddfƒd|d  td|d ƒ d|d   td|d ƒd  d ksJ ‚t tt| ƒ ƒ| ƒt
t| ƒ| dkfdt|  ƒ dfƒks+J ‚t td|  d ƒ| ƒt
|  | dk f| d dfƒksGJ ‚t d|  t| d d ƒ | ƒt
| d | dk f| d  d | dk f| d dfƒksrJ ‚t t| ƒ| |d fƒt
|d |d dkf| d |d dk fdƒks—J ‚d S )Nr€   rt   r‘   rm   r   r|   r   éñÿÿÿrf   iÓ  rŽ   r  zt sTr¨   r¯   é   r'  )rH   r   rp   r   r   r½   r   r3   r   r   r.   rÝ   r,   r    )r™   r‡   rj   rj   rk   Útest_integrate_Abs_sign½  s<   "&$(&."
ÿ.
ÿ:
ÿÿÿ,ÿ(ÿr,  c                  C   sÞ   t ttt ƒtƒ} |  td¡t ttd ƒtƒksJ ‚t ttt ƒtddfƒ} |  td¡t ttd ƒtddfƒks:J ‚ttttd  ƒƒ}t |tt ƒ|tƒ tt tfƒ}| tdi¡t tdtd  ƒtt tfƒksmJ ‚d S ©Nr|   r   rt   rm   r€   )rW   r    rp   r‚   rÞ   r	   r   ©rh   re   Úconvrj   rj   rk   Ú
test_subs1Ø  s   "("4r0  c                  C   s  t ttt ƒttƒ} |  td¡t ttd ƒttƒksJ ‚t ttt ƒtddftddfƒ} |  td¡t ttd ƒtddftddfƒksDJ ‚ttttd  ƒƒ}t |tt ƒ|tƒ tt tftddfƒ}| tdi¡t tdtd  ƒtt tftddfƒksJ ‚d S r-  ©rW   r    rp   r‚   r™   rÞ   r	   r   r.  rj   rj   rk   Ú
test_subs2â  s   $ 0*<r2  c                  C   sÊ   t ttt ƒtdtfttdfƒ} |  td¡t ttd ƒtddftddfƒks(J ‚ttttd  ƒƒ}t |tt ƒ|tƒ tt tfttdfƒ}| tdi¡t tdtd  ƒtt tftddfƒkscJ ‚d S ©Nr   rt   r|   rm   r€   r1  r.  rj   rj   rk   Ú
test_subs3ì  s
    0*<r4  c                  C   s¾   t ttƒtdtfttdfƒ} |  td¡t ttƒtddftddfƒks$J ‚ttttd  ƒƒ}t |tƒ|tƒ tt tfttdfƒ}| tdi¡t tdtd  ƒtt tftddfƒks]J ‚d S r3  r1  r.  rj   rj   rk   Ú
test_subs4ô  s
   ,&<r5  c                  C   s¸  t ttd  ƒtt tfƒ} |  td¡| ksJ ‚t ttd  t ƒtƒ} |  td¡t ttd  d ƒtƒks8J ‚t ttd  t ƒttfƒ} |  td¡t tttd  ƒtdfƒks[J ‚|  td¡t ttd  d ƒtƒksoJ ‚t ttd  t ƒtt tftt tfƒ} |  td¡| ksŽJ ‚|  td¡| ks˜J ‚t ttd  ƒttfƒ} |  td¡t ttd  ƒtdfƒks¸J ‚t ttƒtƒ} |  td¡|  td¡ t ttƒtddfƒ  ¡ jsÚJ ‚d S )Nrm   r‘   rt   r   )rW   r    rp   r   rÞ   r‚   rŠ   Úis_zero©rh   rj   rj   rk   Ú
test_subs5ü  s    (*(*(*
ÿr8  c                  C   sŒ  t dƒ\} }ttt tttƒttƒfƒ}| td¡ttt ttdƒttƒfƒks*J ‚| td¡tttttƒtdƒfƒks>J ‚ttt tttƒttƒftttƒttƒfƒ}| td¡ttt ttdƒttƒfttdƒttƒfƒksrJ ‚| td¡ttt tttƒttƒftttƒtdƒfƒksJ ‚ttt tttƒt| ƒftttƒt| ƒfƒ}| | d¡ttt tttƒtdƒftttƒtdƒfƒksÄJ ‚d S )Nza brt   )r   rW   rp   r‚   re   rÞ   )rš   r°   rh   rj   rj   rk   Ú
test_subs6  s   ,(,<<,@r9  c                  C   s¶   t ttdtftddfƒ} |  tdtdi¡| ksJ ‚t ttƒttƒ tttƒttƒftddfƒ} |  ttƒd¡| ks;J ‚|  ttƒd¡t ttƒttƒ tdttƒftddfƒksYJ ‚d S rà   )rW   rp   r‚   rÞ   r3   r7  rj   rj   rk   Ú
test_subs7  s    ÿ*ÿr:  c                  C   sÈ   t ttƒttd ƒ tdtfƒ} |  ¡ t ttƒtdtfƒt ttd ƒtdtfƒ ks,J ‚t ttƒttd ƒ tdtfƒ} |  ¡ | ksDJ ‚| jddt ttƒtdtfƒt ttd ƒtdtfƒ ksbJ ‚d S )Nrm   rt   T)Úforce)rW   re   rp   r‚   r‹   r   r7  rj   rj   rk   Útest_expand$  s    8 ÿr<  c                   C   s    t tdd„ ƒ t tdd„ ƒ d S )Nc                   S   s   t ttd  ƒdƒS ©Nrm   r|   )rW   r    rp   rj   rj   rj   rk   ry   .  r  z+test_integration_variable.<locals>.<lambda>c                   S   s   t ttd  ƒdt tfƒS r=  )rW   r    rp   r   rj   rj   rj   rk   ry   /  ó    )rZ   rƒ   rj   rj   rj   rk   Útest_integration_variable-  s   r?  c                   C   sÊ   t ttd ƒttd ƒd  tddfƒ ¡ t ttd ƒttd ƒ tddfƒt ttd ƒtddfƒ ks6J ‚t ttd ƒttd ƒd  tƒ ¡ t ttd ƒttd ƒ tƒt ttd ƒtƒ kscJ ‚d S )Nrm   rt   r   )rW   r2   rp   r3   r‹   rj   rj   rj   rk   Útest_expand_integral2  s   *"ÿÿ$ÿÿr@  c                      sL  t ttd d ƒtddfƒ‰ ˆ jddddtdƒ ksJ ‚ˆ jdddd	td
ƒ dtdƒ  ks2J ‚ˆ jddddtdƒ d dtdƒ d  dtdƒ d  ksSJ ‚ˆ jd	dddtdƒ d	tdƒ  d	tdƒ  dtdƒ  kstJ ‚tˆ jd	dd ¡ ˆ  ¡  ƒdk s‡J ‚t ttd td  ƒtddftddfƒ‰ tt‡ fdd„ƒ d S )Nr|   rt   rm   r   Úmidpoint©Úmethodr®   éÙ   r   r  r×   é9   i	  é   iIÎ  iÚ  r–   éV   r¯   é   g      à?r   c                      ó
   ˆ   d¡S )Nr   ©Úas_sumrj   r7  rj   rk   ry   F  ó   
 z'test_as_sum_midpoint1.<locals>.<lambda>)	rW   r-   rp   rK  rÝ   rb   r‚   rZ   ÚNotImplementedErrorrj   rj   r7  rk   Útest_as_sum_midpoint1;  s$   *ÿ
ÿ
ÿ
ÿ

ÿ&(rN  c                  C   s  t tt d tddfƒ} tdddd}| jddd ¡ tdd	ƒt td  ks)J ‚| jddd ¡ td
dƒt td  ks?J ‚| jddd ¡ tddƒt td  ksUJ ‚| jd	dd ¡ tddƒt td  kskJ ‚| j|dd ¡ td t tddƒ dd|d    ks‰J ‚d S )Nrm   r   rt   rb   T©rÅ   rd   rA  rB  r   r‘   r  r|   é#   él   é   é@   r×   )rW   rp   r‚   r   rK  r‹   r   rž   rj   rj   rk   Útest_as_sum_midpoint2I  s   ,,,,$ÿrT  c                  C   s@  t tt d tddfƒ} | jddd ¡ td ksJ ‚| jddd ¡ tddƒtd  td  ks3J ‚| jddd ¡ tdd	ƒttddƒ  td  ksNJ ‚| jd
dd ¡ tddƒttdd
ƒ  td  ksiJ ‚| jtdd ¡ td t tddƒ tt  ddt   ddtd    ks‘J ‚| jdddd t¡sžJ ‚d S )Nrm   r   rt   ÚleftrB  r®   r|   r‘   rF  r   r–   é    r¯   r   F)rC  Úevaluate)	rW   rp   r‚   rK  r‹   r   rb   Úhasr   r7  rj   rj   rk   Útest_as_sum_leftT  s   0668ÿrY  c                  C   s8  t tt d tddfƒ} | jddd ¡ ddt  td  ks!J ‚| jddd ¡ tddƒttddƒ  td  ks<J ‚| jddd ¡ td	d
ƒttddƒ  td  ksWJ ‚| jddd ¡ tddƒttddƒ  td  ksrJ ‚| jtdd ¡ td t tddƒ tt  ddt   ddtd    ksšJ ‚d S )Nrm   r   rt   ÚrightrB  r‘   r®   r|   rH  rF  r   rf   rV  r¯   )rW   rp   r‚   rK  r‹   r   rb   r7  rj   rj   rk   Útest_as_sum_right_  s   *6668ÿr[  c                  C   s*  t tt d tddfƒ} | jddd ¡ td t tj ks J ‚| jddd ¡ td t tddƒ ks6J ‚| jddd ¡ td t tdd	ƒ ksLJ ‚| jd
dd ¡ td t tddƒ ksbJ ‚| jtdd ¡ td t tddƒ ddtd    ks€J ‚t t	tƒtddfƒ dd¡tjks“J ‚d S )Nrm   r   rt   Z	trapezoidrB  r|   r®   é   r  r   r  rV  r¯   )
rW   rp   r‚   rK  r‹   r   r½   r   rb   r   r7  rj   rj   rk   Útest_as_sum_trapezoidi  s   (,,,$ÿ*r]  c                      sr   t tt d tddfƒ‰ tt‡ fdd„ƒ tt‡ fdd„ƒ ttdd„ ƒ tt‡ fdd„ƒ tt‡ fd	d„ƒ d S )
Nrm   r   rt   c                      rI  )NrŽ   rJ  rj   r7  rj   rk   ry   v  rL  z$test_as_sum_raises.<locals>.<lambda>c                      rI  ©Nr   rJ  rj   r7  rj   rk   ry   w  rL  c                   S   s   t tƒ d¡S )Nr|   )rW   rp   rK  rj   rj   rj   rk   ry   x  rz   c                      s
   ˆ   t¡S ru   )rK  r   rj   r7  rj   rk   ry   y  rL  c                      s   ˆ j dddS )Nr|   Zxxxx2rB  rJ  rj   r7  rj   rk   ry   z  rz   )rW   rp   r‚   rZ   rƒ   rj   rj   r7  rk   Útest_as_sum_raisest  s   r_  c                  C   s4   t t ttƒtƒ} t tttƒ}|  ¡ | ¡ ksJ ‚d S ru   )rW   rp   rŠ   ©rh   re   rj   rj   rk   Útest_nested_doit}  s   ra  c                  C   s  t td td dfƒ} t td tdd fƒ}|  ¡ tddƒksJ ‚| ¡ tddƒks*J ‚t tt td tfƒ tt¡t tt td tfƒksDJ ‚t tt ttd fƒ tt¡t tt ttd fƒks^J ‚ttd td dfƒtddƒksoJ ‚ttd tdd fƒtddƒks€J ‚tddƒtddƒksŒJ ‚d S )Nrm   rt   r|   rŽ   zx**2)rp   Ú1N)rW   rp   rŠ   r   r‚   rÞ   r™   rH   r`  rj   rj   rk   Útest_issue_4665ƒ  s   44""rc  c                  C   s*   t td tddfƒ} | t | jŽ ksJ ‚d S )Nrm   rŽ   rt   )rW   rp   Úargsr7  rj   rj   rk   Útest_integral_reconstruct  s   re  c                  C   s  t t dt ƒtddfƒ} |  ¡ tddƒksJ ‚| jddtddƒks$J ‚tdƒ}t |tƒtddfƒ ¡ dks8J ‚t dtdt |tƒtƒfƒ ¡ dksKJ ‚t ttdfƒ ¡ dksXJ ‚tdttƒftdff}t tg|¢R Ž  ¡ tddƒkstJ ‚t tgtt|ƒƒ¢R Ž  ¡ dks†J ‚d S )	Nrm   r   rt   r|   F©Údeepre   r   )	rW   rp   rŠ   r   r   rš   r    ÚlistÚreversed)rh   re   r’   rj   rj   rk   Útest_doit_integrals•  s    &"(rj  c                   C   sð   t ttƒdt  ƒtdttƒ td d  d dttƒ td  d  dttƒ d  ttd ƒdkfdt tt ƒ td d  d dt tt ƒ td  d  dt tt ƒ d  dfƒksdJ ‚t tt dttƒ  ƒtt ksvJ ‚d S )Nrt   rm   r‘   rf   r   T)rH   r-   rp   r.   r   r   r"   rj   rj   rj   rk   Útest_issue_4884¤  s   Bÿ>ÿÿýÿ(rk  c                   C   s²   t tt ttƒ tƒttt tt  ttƒ td dt  d  ttt  ttƒ td dt  d   ttt  td dt  d   ttdƒfttƒd d dfƒksWJ ‚d S )Nrm   rt   rŽ   T)rH   rp   rb   r"   r.   r   rj   rj   rj   rk   Útest_issue_18153­  s   *&ÿÿþýÿrl  c               	   C   sˆ  ddl m} m}m} t| ƒjdu sJ ‚td| ƒjdu sJ ‚td| dfƒjdu s)J ‚td| ddfƒjdu s6J ‚td| d|fƒjdu sCJ ‚td| |fƒjdu sOJ ‚t| |ƒjdu sYJ ‚t| |d| fƒjdu sfJ ‚t| |ddfƒjdu ssJ ‚t| | ddfƒjdu s€J ‚t| |ddfƒ}|jdu r“| ¡ dks•J ‚t| |||fƒ}|jdu r¨| ¡ dksªJ ‚td|||d fƒ}|jdu r¿| ¡ dksÁJ ‚t| | | ddf|ddfƒjdu sÔJ ‚t| | | ddf|d|fƒjdu sçJ ‚t| | dfƒjdu sóJ ‚t| | dt||ddfƒfƒjdu sJ ‚tt||ddfƒ| ddfƒjdu sJ ‚tt| ƒd t	| ƒd  d | ƒjdu s2J ‚tt
| ƒ| ddfƒjdu sBJ ‚d S )	Nr   ©rp   r‚   rî   Frt   Trm   rÌ   r|   )Ú	sympy.abcrp   r‚   rî   rW   Z	is_numberrb   r   r3   r2   re   )rp   r‚   rî   rŒ   rj   rj   rk   Útest_is_number¶  s0   &&((.$ro  c                  C   s\  ddl m} m}m} td| ƒj| hksJ ‚t| ƒj| hksJ ‚t| | d |fƒj|hks-J ‚t| | |d fƒj|hks;J ‚t| | d|fƒj|hksIJ ‚t| | |dfƒj|hksWJ ‚t| | | |fƒj| |hksfJ ‚t| | |ƒj| |hkssJ ‚t| | ddfƒjtƒ ksJ ‚t| |ddfƒj| hksJ ‚t| |||fƒj| |hksžJ ‚t| |ddf|d d fƒj| |hks±J ‚t| |ddf| d|fƒj|hksÃJ ‚td|ddf|d| f| ddfƒjtƒ ksÙJ ‚td|| df|d| f| ddfƒjtƒ ksïJ ‚td| ddf|| df|ddfƒj| hksJ ‚tt| ƒt| ƒd|fƒj|hksJ ‚tt| ƒt| ƒd| fƒj| hks,J ‚d S )Nr   rm  rt   rm   )rn  rp   r‚   rî   rW   r‰   Úsetre   rm  rj   rj   rk   Útest_free_symbolsÖ  s:   ÿÿÿÿ
ÿ&*rq  c                  C   s.  ddl m} m} td| d| fƒjsJ ‚td| ddfƒjsJ ‚td| ddftdfƒjdu s.J ‚t| |dfƒjs8J ‚t| | |dfƒjd u sFJ ‚t||dt| ƒf| dfƒ}|jd u sZJ ‚t|| df|dt| ƒfƒjdu slJ ‚t| | ttfƒjswJ ‚t| | t t fƒjs„J ‚tt| ƒ| ddt	 fƒjd u s•J ‚d S )Nr   )rp   rØ   rt   rm   FT)
rn  rp   rØ   rW   r6  r‚   r    r   r3   r   )rp   rØ   rŒ   rj   rj   rk   Útest_is_zeroò  s    $&rr  c                     s\   ddl m}  tt| ƒ| | fƒ}| | ¡‰ |j| dd ¡ t‡ fdd„tdƒD ƒŽ ks,J ‚d S )Nr   ©rp   r®   rÍ   c                    s   g | ]}t ˆ ƒ‘qS rj   )Únext)Ú.0rø   r7  rj   rk   Ú
<listcomp>	  r  ztest_series.<locals>.<listcomp>r   )	rn  rp   rW   r2   ZlseriesZnseriesZremoveOr   Úrange)rp   rŒ   rj   r7  rk   Útest_series  s   
4rx  c                  C   sV   t dƒ} tdt| ƒ |  | ƒt| ƒt| ƒ ksJ ‚tt| ƒd |  | ƒ t¡s)J ‚d S )Nrp   rt   rm   )r   rH   r3   r"   r;   r2   rX  r9   rs  rj   rj   rk   Ú!test_trig_nonelementary_integrals  s   *$ry  c               	   C   s2  t dƒ} t dƒ}t ddd}tt| d |d  ƒ| ƒ|d t| | ƒ d | t| d |d  ƒ d  ks7J ‚tt| d |d  ƒ| ƒ| t| d |d  ƒ d |d t| t| d |d  ƒ ƒ d  kshJ ‚t ddd} t ddd}td| d |d  td	ƒ  | ƒ| |d t| d |d  ƒ  ks—J ‚d S )
Nrp   r‚   rî   TrÄ   rm   r¨   rt   z3/2)r   rH   r-   r$   r"   r   rm  rj   rj   rk   Útest_issue_4403  s   2ÿBÿ ÿrz  c                   C   sT   t ttd  d ƒtƒdtttdtd  ƒ ƒ ttdtd  ƒ d  ks(J ‚d S )Nrm   r   r€   rþ   )rH   r-   rp   r1   rj   rj   rj   rk   Útest_issue_4403_2%  s   2ÿr{  c                  C   sD   t ddd} tt| d td  ƒtd| fƒt| d  d ks J ‚d S )NÚRTrÄ   rm   r   r   )r   rH   r-   rp   r   )r|  rj   rj   rk   Útest_issue_4100*  s   8r}  c                  C   sÄ  ddl m} m}m}m} tdƒ}tt||ƒ|ƒ|ƒt||ƒ||ƒks$J ‚t||ƒƒj||ƒt|ƒfks5J ‚tt||ƒƒƒj||ƒt|ƒt|ƒfksKJ ‚tt||ƒƒ|ƒj||ƒt|ƒt|ƒfksbJ ‚tt||ƒ|ƒ|ƒj||ƒt|ƒt|ƒfkszJ ‚ttt||ƒ|ƒ|ƒ|ƒj||ƒt|ƒt|ƒt|ƒfks˜J ‚t	t||ƒ|ƒ|ƒt||ƒ||ƒks¬J ‚t	t||ƒ|ƒ|ƒ|t||ƒ|ƒ ksÁJ ‚t	t||ƒ|ƒ|ƒt|||ƒ |ƒ|t||ƒ|ƒ fv sßJ ‚t	td|ƒ|ƒ|d ksíJ ‚t	td|ƒ|ƒd| | ksýJ ‚td||ƒjtd||ƒjksJ ‚t||ƒ||||ƒ 
¡ |d t||ƒ||ƒ d ks+J ‚t||ƒ|ddf| d|f|d|fƒ 
¡ ||d  t||ƒ|ddfƒ |d t||ƒ|ddfƒ  ks`J ‚d S )Nr   )Úwrp   r‚   rî   re   rm   rt   )rn  r~  rp   r‚   rî   r   rW   rd  r   rH   rŠ   )r~  rp   r‚   rî   re   rj   rj   rk   Útest_issue_5167/  s(   (",.0ÿ(*< ":&:ÿr  c                  C   s  t ddd} ttttƒd  ƒtƒttƒttddƒƒ tttƒt	j
 ƒ d ks*J ‚ttttƒd ƒtƒttƒttddƒƒ tttƒt	j
 ƒ d ksMJ ‚tt|  ttƒd  ƒtƒttƒtdd|   ƒ tt| ƒttƒ ddt| ƒ   ƒ dt| ƒ  ksJ ‚d S )Nrî   TrÄ   rm   rt   r   rŽ   )r   rH   r    r"   rp   r-   r   r   r<   r   r½   r>   ©rî   rj   rj   rk   Útest_issue_4890F  s   *ÿ*ÿFÿr  c                   C   s,   t dttdtd  ƒ  tƒ t¡rJ ‚d S rà   )rH   rp   r-   rX  rW   rj   rj   rj   rk   Útest_issue_4551P  s   ,r‚  c               	   C   s   t dddd} tt| td|   d  tdtjfƒ| d dd|   | d   | dd|     ddd|    | ddd|        ƒdksFJ ‚d S )Nrb   T©rd   rÅ   rt   r   rm   )r   rQ   rH   rp   r   r½   rÍ   rj   rj   rk   Útest_issue_4376T  s   "Nÿÿr„  c                   C   sX   t ttƒtd  ttddƒ  tƒdttddƒ  d dttddƒ  d  ks*J ‚d S )Nr|   rt   r¯   r–   r  )rH   r-   rp   r   rj   rj   rj   rk   Útest_issue_4517Z  s   "*ÿr…  c               
   C   sú  t ddd\} }tt| t ƒt|t ƒ tdtfƒ ¡ tdt| dƒt|dƒB ft d t| | ƒt| dƒt|dƒ@ B ftd t| |ƒt| dƒt|dƒ@ B fdƒksSJ ‚tt| t ƒt|t ƒ tfƒtdtt| dƒt|dƒƒft t|t ƒd  d tt	|t ƒd  d  t|t ƒt	|t ƒ d|   t| | ƒftt|t ƒd  d tt	|t ƒd  d  t|t ƒt	|t ƒ d|   t| |ƒf|t| t ƒ t	|t ƒ | d |d   | t|t ƒ t	| t ƒ | d |d    dfƒksûJ ‚d S )Nzk mTrc   r   rm   r'  )
r   rH   r3   rp   r   rQ   r.   r   rI   r2   )ÚkrØ   rj   rj   rk   Útest_issue_4527_  s$   &($ýÿ \X**ÿÿür‡  c                  C   sp   t ddd} ttt d t |  t ƒt tt tfddttt d t |  t ƒt tt tfƒks6J ‚d S )Nr‚   TrÄ   rm   rÆ   rÇ   )r   rH   r    r   r   rp   r   rW   )Zyposrj   rj   rk   Útest_issue_4199t  s   .*ÿrˆ  c                  C   s²  t ddd\} }}}tttd  t| t  ƒtƒttƒ t|d  d ƒ tt| d t ƒ d ks6J ‚tt| td  |t  | ƒtƒttƒt|ƒ t|d  d|   ƒ tt| ƒt |dt| ƒ   ƒ dt| ƒ  ksrJ ‚ddl	m
} ddlm} |tttd  ƒtt| t ƒ tt tfƒƒttƒt|d  d ƒ ks¥J ‚t d	dd\} }|tt|  td  d| t  ƒtt tfƒƒttƒt|d |  ƒ t| ƒ ks×J ‚d S )
Nza:dTrÄ   rm   r   r   )Ú
expand_mul)r†  za d)r   rH   r    rp   r   r-   r   r<   r>   rÔ   r‰  rn  r†  r   )rš   r°   r±   r…   r‰  r†  rj   rj   rk   Útest_issue_3940{  s    2ÿ Pÿ.ÿ.ÿrŠ  c                   C   sV   t t td td   tƒttt t t ƒ d tttt t ƒ d  ks)J ‚d S r¿   )rH   rš   rp   r   r"   rj   rj   rj   rk   Útest_issue_5413‹  s   Vr‹  c               
   C   s¸  t dƒ\} }tddd}|  t| ƒ }|  |t  ttƒd ttƒd   }ttƒd  ttƒd  }ttƒd  ttƒd  d }t|||  tƒ||  |  t	|t ƒ | | t t| ƒ   ||  |  t	|t ƒ | | t t| ƒ   || | t	|t ƒ | | t t| ƒ   || | t	|t ƒ | | t t| ƒ   | | t | |  t	tƒ t|ƒ  t| ƒ | | t | |  t	tƒ t|ƒ  t| ƒ fv sÚJ ‚d S )NzA zr±   T)rË   rm   rt   )
r   r   r    r™   r3   rp   r2   r‚   rH   r"   )r«   rî   r±   ZP1ZP2Úh1Úh2rj   rj   rk   Útest_issue_4892a‘  s   &00,,..úrŽ  c                  C   s\   t tƒtd  dttƒ td   d td d  } ttt| tƒ t¡|  ƒƒdks,J ‚d S )Nr|   rm   r×   r   )r3   r‚   rp   r2   rR   rL   rH   r
   )Úexprrj   rj   rk   Útest_issue_4892b¦  s   4	(r  c                   C   sX   t ttƒtttƒ tdtftdtftdtfƒdttttƒtdtftdtfƒ ks*J ‚d S ©Nr   rm   )rH   r3   rp   re   r‚   rî   r   rW   rj   rj   rj   rk   Útest_issue_5178³  s   , ÿr’  c                  C   sª   t tƒ tdd¡} td d td d  td d  td d	  td d
  ttd ƒ }t| tƒ|ks6J ‚tt| tƒtƒ| ksBJ ‚tttd ƒtƒttd ƒksSJ ‚d S )Nr   r   rm   r   é   r¯   iÐ  r®   i€  i _7 r  r‘   )r3   rp   ZseriesrN   rH   r
   ©re   rx   rj   rj   rk   Útest_integrate_series¸  s
   H&r•  c                  C   s0   ddl m}  | tg g dgg tƒtƒd u sJ ‚d S )Nr   ©Úheurischrt   )Zsympy.integrals.heurischr—  rD   rp   r–  rj   rj   rk   Útest_atom_bugÂ  s   $r˜  c                  C   sh   t ddd} tttt |  ƒtdtftdtfƒ ¡ t| ƒttd |  ƒ t	 dttƒ  |  ks2J ‚d S )Nrî   F©Úzeror   rm   )
r   rH   r3   rp   r‚   r   r„   r"   r9   r   r€  rj   rj   rk   Útest_limit_bugÇ  s   &*ÿr›  c                  C   s,   t dƒ} tttƒ| tƒ tƒ t¡sJ ‚d S )Nrx   )r   rH   r    rp   rX  rW   rw   rj   rj   rk   Útest_issue_4703Í  ó   $rœ  c                  C   s.   t dƒ} t| tƒ t¡d tƒ t¡sJ ‚d S )Nre   rm   )r   rH   rp   r
   rX  rW   rã   rj   rj   rk   Útest_issue_1888Ò  s   &rž  c                   C   sF   t ttt ƒtt d td ftdtfƒdttd d ƒ ks!J ‚d S )Nrm   r   )rH   r2   rp   r‚   r   r;   rj   rj   rj   rk   Útest_issue_3558Ù  s   FrŸ  c                   C   s6   t dtddtd   ƒ tƒttd ƒd ksJ ‚d S )Nrt   r  r   rm   )rH   r-   rp   r$   rj   rj   rj   rk   Útest_issue_4422Ý  rç   r   c                   C   sN   t tttddt  ƒ tƒƒtdt d ƒdtd  t d  d ks%J ‚d S )Nrt   rm   r¯   rf   )rQ   rH   rp   r-   rj   rj   rj   rk   Útest_issue_4493á  s   &ÿr¡  c                   C   sh   t ttƒt tt tfƒtksJ ‚t ttƒt tdtfƒtd ks#J ‚t ttƒt tƒttƒks2J ‚d S r‘  )rH   r3   rp   r   r   r;   rj   rj   rj   rk   Útest_issue_4737æ  s   "$"r¢  c                  C   sh   ddl m}  tddd}t| ttt ƒttƒ t|  tdtfƒƒƒ|t	d|ƒ d t
|ƒ ks2J ‚d S )Nr   rÑ   rš   TrÄ   rt   )rÔ   rÒ   r   rQ   rH   r    rp   r"   r   rB   rA   )rÒ   rš   rj   rj   rk   Útest_issue_4992ì  s
   ,ÿr£  c                  C   s>   ddl m}  tttt ƒtt  tƒƒ| td tƒksJ ‚d S )Nr   ©Ú
lowergammart   )Ú'sympy.functions.special.gamma_functionsr¥  rQ   rH   r    rp   r‚   r¤  rj   rj   rk   Útest_issue_4487ô  s   2r§  c                  C   s,   t dƒ} td| d  | ddfƒtu sJ ‚d S )Nrp   rt   rm   rŽ   )r   rH   r   rs  rj   rj   rk   Útest_issue_4215ù  r  r¨  c                  C   s    t dddd} tt|  ttƒ tƒ| t t|   ttƒ | d d|   d  tt|   ttƒ | d d|   d   tt|   | d d|   d   ksNJ ‚d S )Nrb   Trƒ  rm   rt   )r   rH   rp   r"   rÍ   rj   rj   rk   Útest_issue_4400þ  s   Rÿÿr©  c                   C   sZ   t tdt ƒtdt ƒ d t tddttt d ƒttd ƒ d t tƒks+J ‚d S )Nrt   rm   T©rD   )rH   r-   rp   rW   rj   rj   rj   rk   Útest_issue_6253  s   (&ÿr«  c                   C   sè   t ddt t t  tddftddftddfƒdtdƒ dtdƒ d  dtdƒ d  dtdƒ  d	td
ƒ  dtdƒ dtd
ƒ  dtdƒ d  dtdƒ dtdƒ d  dtdƒ dtdƒ d  dtdƒ d  fv srJ ‚d S )Nrt   r   iôÿÿÿr|   r¯   rm   r®   r‘   r–   r   rF  r  é/   ©rH   rp   r‚   rî   r"   rj   rj   rj   rk   Útest_issue_4153  s
   .B@*ýr®  c                  C   sf   t dƒ\} }}t|t|  |  | t| d td  ƒ t| | | fƒ}| t¡r*J ‚| t¡r1J ‚d S )NzR b hrm   )r   rH   rp   r-   rX  r   rW   )r|  r°   Úhrh   rj   rj   rk   Útest_issue_4326  s   8r°  c                   C   s>   t dt dt  tƒdt tdƒ dt tdƒ  ksJ ‚d S r=  rå   rj   rj   rj   rk   Útest_powers  s   >r±  c                   C   s<   t tdd„ ƒ ttdt ƒt tddfdd t¡sJ ‚d S )Nc                   S   ó   t dt tdddS )Nrt   T)ÚmanualrD   r¤   rj   rj   rj   rk   ry   "  r  z$test_manual_option.<locals>.<lambda>rt   r   T©r³  )rZ   rƒ   rH   r"   rp   rX  rW   rj   rj   rj   rk   Útest_manual_option!  s   .rµ  c                   C   s6   t tdd„ ƒ tttƒtddtttƒtƒksJ ‚d S )Nc                   S   r²  )Nrt   T)rD   Úrischr¤   rj   rj   rj   rk   ry   (  r  z%test_meijerg_option.<locals>.<lambda>Trª  )rZ   rƒ   rH   r5   rp   rW   rj   rj   rj   rk   Útest_meijerg_option'  s   (r·  c                   C   sª   t tdd„ ƒ tttd  ƒtddtttd  ƒtƒksJ ‚ttdt ƒt ttddtd ttdt ƒ d td   ksAJ ‚tttƒtddt	ttƒtƒksSJ ‚d S )Nc                   S   s   t dttƒ tdtfddS )Nrt   r   T©r¶  )rH   r"   rp   r   rj   rj   rj   rk   ry   /  r>  z#test_risch_option.<locals>.<lambda>rm   Tr¸  rt   )
rZ   rƒ   rH   r    rp   rX   r"   r‚   r<   rW   rj   rj   rj   rk   Útest_risch_option-  s   0D(r¹  c                   C   s,  t tdd„ ƒ tttd ƒtddttƒttƒ d ksJ ‚tttƒt tddtttƒt tƒks4J ‚tt	tƒt
t	tƒƒ ttddƒ  tddd	ttd
dƒ  tt	tƒƒ d dttd
dƒ  t
t	tƒƒ d  dttd
dƒ  tt	tƒƒ d dttd
dƒ  t
t	tƒƒ d  t	tƒ  ks”J ‚d S )Nc                   S   r²  )Nrt   T)r¶  r—  r¤   rj   rj   rj   rk   ry   8  r  z&test_heurisch_option.<locals>.<lambda>rm   Tr–  r|   r   Fi€ÿÿÿrt   i!  éð   r  rÏ   )rZ   rƒ   rH   r    rp   r-   r   r>   rW   r"   r2   r   r3   rj   rj   rj   rk   Útest_heurisch_option6  s   .,*BJÿÿr»  c                  C   s:   ddt d  d  } t| t ƒ t ¡}t| |ddsJ ‚d S )Nrt   gHáz®Gñ?rm   g333333@gê-™—q=)Ztol)rp   rH   r
   ra   r”  rj   rj   rk   Útest_issue_6828C  s   r¼  c                  C   sX   t dƒ} ttt t| t  ttƒ ƒ tƒttt|  ttƒ ƒ ttƒ t ks*J ‚d S )NÚx_max)r   rH   r‚   r   r    rp   r2   rš   )r½  rj   rj   rk   Útest_issue_4803I  s   ""ÿr¾  c                   C   s@   t dtdttƒd  ƒ ƒttƒtdttƒd  ƒ ksJ ‚d S rà   )rH   r-   r5   rp   rj   rj   rj   rk   Útest_issue_4234O  s   @r¿  c                	   C   s  t ttd tdtd  ƒ tƒƒjddttdtd  dtd   dt  dttd d ƒ ttdƒt d ƒ   dttd d ƒ  ttdƒkttdƒ k B fdtd  dtd   dt  dtdtd  ƒ ttdƒt d ƒ  d	ttd  d ƒ  dfƒks†J ‚d S )
Nrm   r‘   Trf  rf   r|   é   r®   iøÿÿÿ)	rQ   rH   rp   r-   rL   r.   r   r#   r0   rj   rj   rj   rk   Útest_issue_4492S  s    "ÿJÿÿFÿÿýÿrÁ  c                  C   s  dt t ttƒ  } t| tddfƒ}t| tddfƒ ¡ |ks J ‚t| ttƒ tddfƒ|tdƒ tdƒ ks8J ‚td|  ttƒ tddfƒd| tdƒ tdƒ ksTJ ‚ttdt t	 t t
 t  t
 ƒtdtfƒttdt t	 t ƒtdt t	 td  t
 ƒ tdtfƒks‹J ‚d S )Nrt   rm   r|   g333333ó?r   g333333ó¿)rš   rî   r"   rX   rW   rŠ   rH   r    rb   r‡   r™   rp   )re   Z
integral_frj   rj   rk   Útest_issue_2708\  s   0ÿ,0ÿÿrÂ  c                  C   sD   dt  dt  d tdt  ƒ } t| t ddfƒ}t|ƒdks J ‚d S )NgºõJ‡  @gìD” @g      $@gš™™™™™¹?gš™™™™™É?z%1.86831064982608*y + 2.16387491480008)rp   r‚   r    rH   Ústr)re   rh   rj   rj   rk   Útest_issue_2884j  s    rÄ  c                  C   s”  ddl m} m} ttt t ƒttƒ tdtfƒt	t
t	t t
td  d   |td ƒdk fdt
t ddtd     |td ƒdk fttjfdfdtjfdfttƒd ƒdfƒ td dkfttt t ƒttƒ tdtfƒdfƒksvJ ‚ttt t ƒttƒ tdtfƒt	d	td  d dt d  d  t|tƒdk|| tƒƒt
d k || tƒƒt
d kƒfttt t ƒttƒ tdtfƒdfƒksÈJ ‚d S )
Nr   ©Úargr   rm   rt   r€   )r   r   )r   TrŽ   )Ú$sympy.functions.elementary.complexesrÆ  r   rH   r    r‡   rp   r%   r   r.   r   rD   r   r½   r   rW   r(   rI   rÅ  rj   rj   rk   Útest_issue_8368ip  sN    ÿÿ

ýüû
õ þòÿ  
ýÿ ÿùÿrÈ  c                   C   s€   t tdt ƒƒdtdt ƒ ksJ ‚t tdt ƒƒdt dttdt ƒd ƒ  ks,J ‚t ttƒƒttttƒd ƒ ks>J ‚d S )Nrõ   rt   )rH   r(   rp   r%   r)   r"   rj   rj   rj   rk   Útest_issue_8901  s   $4(rÉ  c                   C   s¶   t ttƒd t tddfƒtdƒ d dtdƒ d  ksJ ‚t ttƒd t tdtfƒtd ks3J ‚t ttƒd td  tƒtdt ƒ tdt ƒdt   ddt   ksYJ ‚d S )Nr|   r   rt   r   rm   )rH   r3   rp   r;   r   r   r2   rj   rj   rj   rk   Útest_issue_8945–  s   >(PrÊ  c                  C   sd   t rtdƒ tdƒ\} }}}tt|  t | ƒd ||t    t¡}tt|td|fƒj	vs0J ‚d S )NzToo slow for CI.zi L a brm   r   )
r]   r\   r   r2   r   rp   Úrewriter    rH   r‰   )rŒ   ÚLrš   r°   Ú	integrandrj   rj   rk   Útest_issue_7130  s
   *rÎ  c                  C   sx   t dƒ\} }}}t| | ||gƒ}t||ƒt||ƒ ¡ ksJ ‚t||ƒt| |d  d g|| g|| ggƒks:J ‚d S )Nza b c trm   )r   rJ   rH   rW   rŠ   )rš   r°   r±   r™   Úvtrj   rj   rk   Útest_issue_10567¦  s   :rÐ  c                   C   s6   t ttd  dt  d ƒtddfƒdt ksJ ‚d S )Nrm   r®   é0   r   r×   r  )rH   r-   rp   r   rj   rj   rj   rk   Útest_issue_11742­  rç   rÒ  c                  C   s2   t dƒ} ttt|  ƒ| ƒtt|  ƒt ksJ ‚d S )Nr™   )r   rH   r4   r   r;   )r™   rj   rj   rk   Útest_issue_11856±  s   *rÓ  c                   C   s0   t ttdt ƒƒtddfƒttƒd ksJ ‚d S ©Nrt   r   rm   )rH   r-   r"   rp   r   rj   rj   rj   rk   Útest_issue_11876¶  s   0rÕ  c                   C   sV   t dttƒ dtdt ƒ  tdt ƒ tƒdtdt ƒ dtdt ƒ  ks)J ‚d S )NiÄÿÿÿg3333333@r   g333333Àr®   g      (@r‘   )rH   r    rp   rj   rj   rj   rk   Útest_issue_4950»  s   ,ÿrÖ  c                   C   sP   t tttd ƒƒƒttttd ƒƒ d dt tttd ƒƒ d  ks&J ‚d S )Nrm   r‘   )rH   r3   r"   rp   r2   rj   rj   rj   rk   Útest_issue_4968À  s   Pr×  c                   C   s²   t dtd  tt tfƒtu sJ ‚t dtd  tddfƒtu s!J ‚t dtd d  tddfƒtu s3J ‚t dtd  tddfƒt u sDJ ‚t dtd d  tddfƒt u sWJ ‚d S )Nrt   rm   rŽ   r€   )rH   rp   r   rj   rj   rj   rk   Útest_singularitiesÄ  s
   " $"*rØ  c                  C   s¸   t ddd\} }tt| |  |  ||  ƒ| tt||  ƒ tt||  ƒf|ttƒ ttƒfƒtt| d |d  ƒ| t|d  t ƒ t|d  t ƒf|ttƒ ttƒfƒksZJ ‚d S )Nzx yTr¨   r|   rm   )r   rH   r3   r-   r   rW   )rp   r‚   rj   rj   rk   Útest_issue_12645Í  s   "þ&þýrÙ  c                   C   s6   t ttƒttƒd  tdtd fƒtddƒksJ ‚d S )Nr|   r   r¯   rt   )rH   r3   rp   r2   r   r   rj   rj   rj   rk   Útest_issue_12677×  rç   rÚ  c                   C   s6   t tdt ƒttƒ t tdtfƒtdƒ ksJ ‚d S )Nr|   r   )rH   r2   rp   r   r"   rj   rj   rj   rk   Útest_issue_14078Û  rç   rÛ  c                   C   s(   t dttƒ tdtfƒtd ksJ ‚d S rÔ  )rH   r%   rp   r   r   rj   rj   rj   rk   Útest_issue_14064ß  s   (rÜ  c                	   C   sp   t ddtttj ƒdttƒ    tƒtttjƒtttƒttjƒdttjƒ   ƒ ttjƒt   ks6J ‚d S r}   )rH   r    rp   r   r½   r"   r   rj   rj   rj   rk   Útest_issue_14027ã  s   &>ÿrÝ  c                   C   s&   t ttƒtdtd fƒtju sJ ‚d S r‘  )rH   r5   rp   r   r   ÚInfinityrj   rj   rj   rk   Útest_issue_8170è  râ   rß  c                   C   sD   t dt tddfƒtju sJ ‚t dtd  tddfƒtju s J ‚d S )Nrt   rŽ   r€   r|   )rH   rp   r   r˜   rj   rj   rj   rk   Útest_issue_8440_14040ì  s   &rà  c                   C   s”   t dtt d  tddfƒdtd  dt  ksJ ‚t ddt t t d  tddftddftddfƒdtdƒ dtdƒ  dtd	ƒ  ksHJ ‚d S )
Nrt   rm   r   rŽ   rþ   r   r¯   r³   r|   r­  rj   rj   rj   rk   Útest_issue_14096ñ  s   42"ÿrá  c                   C   sh   t tdtdtd  ƒ tddfƒ ¡ d ƒdk sJ ‚t ttdtd  ƒtddfƒ ¡ d ƒdk s2J ‚d S )Nrt   r|   r   gQ£dVoö?gíµ ÷Æ°>g)“Ú ìê?)r   rH   r-   rp   rb   rj   rj   rj   rk   Útest_issue_14144÷  s   44râ  c                   C   s(   t ttt ƒttƒ tƒ t¡sJ ‚d S ru   )rH   r    r   rp   r"   rX  r:   rj   rj   rj   rk   Útest_issue_14375ü  s   (rã  c                  C   sX   t dƒtttƒ} t| tddftddftddfƒt| tddftddftddfƒks*J ‚d S )Nre   r   rt   rm   r|   )r   rp   r‚   rî   rH   rW   rã   rj   rj   rk   Útest_issue_14437  s   ÿrä  c                   C   sR   t dtttƒd ƒ tƒttttƒd ƒd ƒttttƒd ƒd ƒ ks'J ‚d S r}   ©rH   r-   r    rp   r"   rj   rj   rj   rk   Útest_issue_14470  s   Rræ  c                  C   s¨   t dt td ƒt  dtd   ƒdtd  t  dt td ƒt  d  } t| tƒt dtd  tt td ƒ  d ƒ tt dtd  ƒ t dtd  ƒ  ksRJ ‚d S ©Nrt   rm   r|   )r    rp   rH   rã   rj   rj   rk   Útest_issue_14877  s   LHÿrè  c                  C   sB   t td  d ƒtd  t  } t| tddgƒt d ksJ ‚d S )Nrm   rt   rŽ   r®   )r-   rp   rH   r   rã   rj   rj   rk   Útest_issue_14782  s    "ré  c                  C   sJ   t td  d ƒtd  t  } t| tddgƒtjd td  ks#J ‚d S )Nrm   rt   r   r|   r  )r-   rp   rH   r   rœ   r   rã   rj   rj   rk   Útest_issue_14782_slow  s    *rê  c                  C   s4   t tddƒ tt  ƒ } t| t dtgƒtu sJ ‚d S )Nrÿ   rm   r   )rp   r   r    rH   r   rã   rj   rj   rk   Útest_issue_12081  s   rë  c                  C   sD   dt  d } d|  td|  ƒ t d  }t|t ddgƒdks J ‚d S )Nrt   r   r€   rm   r   )rp   r    rH   )r‚   re   rj   rj   rk   Útest_issue_15285"  s   rì  c                   C   s”   t tt tt ƒ ttƒ tdtfƒ ¡ tttd ƒt	dtƒ ttd ƒt  t
tƒd dkfttt tt ƒ ttƒ tdtfƒdfƒksHJ ‚d S )Nr   rt   T)rH   rp   rb   r    r"   r   rP   r.   rA   rB   r   rW   rj   rj   rj   rk   Útest_issue_15432(  s   *4(þrí  c                  C   s„   t dƒ} tdtd\}}tttt | | | |   ƒtddt ttt | |  ƒ ttt | |  ƒ | | | |   ks@J ‚d S )NÚomegazm p)ÚclsrÆ   rÇ   )rT   r   rS   rH   r    rp   r   )rî  rØ   rr   rj   rj   rk   Útest_issue_15124.  s
   $<ÿrð  c                   C   s~  t ƒ  ttttƒƒ W d   ƒ n1 sw   Y  t ƒ  ttttƒtƒttttƒtttƒƒks3J ‚W d   ƒ n1 s=w   Y  t ƒ  ttttƒtƒ ¡ ttd d tt ƒks]J ‚W d   ƒ n1 sgw   Y  ttdd tttƒ t¡ttd d tt ƒksˆJ ‚W d   ƒ n1 s’w   Y  ttttƒtddfƒtt	j
tƒksªJ ‚tttƒ tddf¡tt	j
tƒks½J ‚d S )Nrm   Fro   r   rt   )r^   rW   r   rp   r‚   rŠ   r_   r`   rH   r   r½   rj   rj   rj   rk   Útest_issue_152185  s   ÿ,ÿ0ÿ,ý&*rñ  c                  C   s€   t ttd  tdt ƒ ƒttd tdt ƒ ƒ tdtfƒ} t| tƒs&J ‚t	| t
tƒd ttƒ   ttd ¡ƒdks>J ‚d S )Nrm   r   r¯   )rH   r    rp   r2   r™   r3   r   r¹   r.   rP   r-   r   rÞ   r!  rj   rj   rk   Útest_issue_15292F  s   >4rò  c                   C   s.   t tdt ƒttƒ tƒdttƒ ksJ ‚d S r¿   )rH   r3   rp   rj   rj   rj   rk   Útest_issue_4514L  ó   .ró  c                  C   sè   t ddd\} }}ttt| d ƒƒ| ||fƒ}ttt| d ƒƒ| ƒ}| |d|di¡ddt  ks3J ‚| | d¡| | d¡ ddt  ksGJ ‚| |d|d	i¡tdƒ td
ƒ ks[J ‚| | d	¡| | d¡ tdƒ td
ƒ ksrJ ‚d S )Nzx a bTr¨   rm   rt   r|   r€   rÿ   rŽ   r‘   )r   rH   r    r   rÞ   r   )rp   rš   r°   ZdefiniteZ
indefiniterj   rj   rk   Útest_issue_15457P  s   "((2rõ  c                   C   sN   t tttƒ ttƒ tƒtttƒ ttƒ ttƒ ttƒ ttƒ ks%J ‚d S ru   )rH   rp   r    r"   r:   rj   rj   rj   rk   Útest_issue_15431Z  s   *ÿrö  c                  C   sü   t tt ƒ } tdtt ƒ ƒ}t| t ƒ|kr| t ¡| ksJ ‚t d tt ƒd  } t d  tt ƒ dtdtt ƒ ƒ  }t| t ƒ|krI| t ¡| ksKJ ‚ttt ƒƒt d  } ttƒ tttt ƒƒƒ d ttt ƒƒt   }t| t ƒ|krz| t ¡| ks|J ‚d S )Nrm   r|   r   )rp   r"   r:   rH   r
   r-   r   r=   )re   ÚFrj   rj   rk   Ú"test_issue_15640_log_substitutions_  s    & .$rø  c                  C   s¨   ddl m}  | dƒ}|j}ttt| t ƒ|ttfddt	t
tt t ƒ t t
tt t ƒt  tt kttk @ ttdƒ@ ft ttƒ tttƒ  dfƒksRJ ‚d S )Nr   )Ú
CoordSys3DÚNTr–  )Zsympy.vectorrù  rp   rH   r2   rš   r°   Úx_1Úx_2r.   r3   r   r   )rù  rú  rp   rj   rj   rk   Útest_issue_15509k  s    Dþrý  c                  C   s¢   t ddd} t| td| d  ƒ | ƒt| d d d| d  d  | dkf| d  d d| d  d  tddƒ | d	kf| d d d| d  d  dfƒksOJ ‚d S )
Nrp   Tr¨   r³   rm   r   rÿ   éQ   r|   )r   rH   rÝ   r.   r   rs  rj   rj   rk   Útest_issue_4311_fastt  s   ".ýrÿ  c               	   C   sÞ  t ddd} t ddd}t ddd}t ddd}ttt |  |d  ||  ƒ|ƒttƒttƒ tt |d  d	|   ƒ td
t |  | | dt| ƒ tt ƒ  ƒ dt| ƒ  ks^J ‚tddt|d    |ƒt tt ƒt|ttt ƒ  ƒ d tt ƒt|ttt ƒ  ƒ d   ks”J ‚ttt |d  ƒ|ƒttƒtttƒ| ƒ dttƒ  ks´J ‚tdtt| ƒd  |ƒ| d tttt| ƒd ƒ d  ksÖJ ‚tdtt| ƒd  |ddt fƒt ksíJ ‚d S )NÚKTrÄ   rp   r¨   rØ   r™   rm   r   r€   rt   r   )	r   rH   r    r   r-   r   r>   r"   r<   )r   rp   rØ   r™   rj   rj   rk   Ú%test_integrate_with_complex_constants|  s"   >ÿ,ÿ

ÿ>"ÿ@D2r  c                  C   sx   t dƒ} t dddd}t|| |d   | d  | ƒ|d | |  t| ttt ƒ d|ƒ t|ƒ t|d ƒ ks:J ‚d S )Nrp   rb   TrO  rt   rm   )r   rH   rF   r!   r   r   rA   )rp   rb   rj   rj   rk   Útest_issue_14241‹  s
   :ÿr  c                   C   s<   t ttƒd ddttƒ   tddt gƒtd ksJ ‚d S )Nrm   r‘   r   r   )rH   r3   r™   r2   r   rj   rj   rj   rk   Útest_issue_13112’  rò   r  c                  C   sP   t ddd} tttddt |   ƒ td| fƒ}|d| d  t d ks&J ‚d S )	Nr¯  TrÄ   rt   rm   r   r‘   r  )r   rH   rp   r/   r   )r¯  rŒ   rj   rj   rk   Útest_issue_14709b–  s   $ r  c                  C   sl   t dƒ} t dƒ}tt|ƒ| |t | fƒt| ƒksJ ‚tt|  ƒtd|  ƒ |  | dtfƒtdƒks4J ‚d S )Nrp   r™   r€   r   rm   )r   rH   r    r   r:   r"   )rp   r™   rj   rj   rk   Útest_issue_8614œ  s   &6r  c                  C   sò   t ddd} t| d ƒdtd|  ƒ  t| ƒ t| ƒ }t|| ƒ}|tjks(J ‚t| | d¡d ƒdks6J ‚t| d ƒdttd	ƒd
 |  ƒ  t| ƒ t| ƒ }t|| ƒdtd|  d
 ƒ d dtd|  d ƒ d  td|  ƒd  kswJ ‚d S )Nr‡   TrÄ   rm   gš™™™™™ù?rt   gÏRt?,eÀg:Œ0âŽyE>r®   r‘   iöÿÿÿé   r|   )r   r    rH   r   r˜   rÝ   rÞ   )r‡   rÍ  Zsolutionrj   rj   rk   Útest_issue_15494£  s   ,
4Rr  c               	   C   s~   t dƒ} tt| td  ƒtƒ ¡ ttttd |  ƒ ttdttd |  ƒ d ƒ ttd |  ƒ  t	| dƒfdƒks=J ‚d S )Nr‚   rm   r|   r   r'  )
r   rW   r@   rp   rŠ   r.   r:   r"   r-   r   rÀ   rj   rj   rk   Útest_li_integral³  s   ,.ÿþþr  c                  C   sà   t dƒ} t dƒ}tj}| |d  t|||  ƒ t|||  fd| d| ||  f| d|   d ƒ d| td| ||  ƒ  }tt| | ƒ| ƒ}||ksRJ ‚t ddd}| |i}tt|| ƒ|ƒ| |¡ ¡ ksnJ ‚d S )	Nrp   rb   rt   r|   rm   r   Fr™  )	r   r   r½   rA   rC   rH   r3   Zxreplacer‹   )rp   rb   r¯  rè   ÚgotZ_xZrepsrj   rj   rk   Útest_issue_17473º  s   (&ÿÿ(r
  c                   C   s¢   t tttƒƒtd  tdtgƒt ksJ ‚t tttƒƒtd  tdtgƒtdƒ d td  ks2J ‚t tttƒƒtd  tdtgƒtdƒ d td  ksOJ ‚d S )Nrm   rt   r|   r   r³   )rH   r"   rp   r   r   rj   rj   rj   rk   Útest_issue_17671Ç  s   *:>r  c                  C   s~   t dƒ} t dƒ}t dƒ}td|d | tdƒd   ||  d | d fƒ| |tdƒd  td| d d|   ƒ  ks=J ‚d S )Nr~  ÚCr‚   rt   rm   r|   r   )r   rH   r   r-   )r~  r  r‚   rj   rj   rk   Útest_issue_2975Í  s   fr  c                     sÔ  t dƒ\‰‰ } tddd}ttˆˆ  ˆ d|fƒˆƒˆd |d d |d   ks*J ‚ttˆtˆ ƒ ˆ d|fƒˆƒtˆd tˆ ƒ d ˆ d|fƒksKJ ‚tttˆ ˆ ƒˆ d|fƒˆƒtttˆ ˆ ƒ ˆ  tˆ dƒfd	ƒˆ d|fƒkssJ ‚ttttˆ ˆ ƒˆ d|fƒˆƒˆƒttttˆ ˆ ƒ ˆ d  tˆ dƒfˆ ˆ  dfƒˆ d|fƒˆ t	 kˆ t	k @ tˆ dƒ@ fd	ƒks¶J ‚ttˆˆ d| fƒˆƒ| ˆd  d ksËJ ‚t
t‡ ‡fd
d„ƒ t
t‡ ‡fdd„ƒ t
t‡fdd„ƒ d S )Nzx n Mrú  Trc   rt   rm   r   r   r'  c                      s   t tˆˆtˆ fƒtƒS ru   ©rH   r   r‚   rj   ©rb   rp   rj   rk   ry   à  r   z!test_issue_7827.<locals>.<lambda>c                      s   t tˆˆdˆ fƒˆ ƒS r}   )rH   r   rj   r  rj   rk   ry   á  r   c                      s   t tˆ ˆ dtfƒˆ ƒS r}   r  rj   rs  rj   rk   ry   â  r   )r   r   rH   r   r3   r   r.   r2   r   r   rZ   rƒ   )rù   rú  rj   r  rk   Útest_issue_7827Ô  s,   :ÿ,ÿ"2ÿÿÿÿ*r  c               	   C   sš   ddt   tt tt ƒ ƒddt     t d  t t tt tt ƒ ƒ  tt tt ƒ ƒ  } t| t ƒdtt tt ƒ ƒ dtt tt tt ƒ ƒ ƒ  ksKJ ‚d S rç  )rp   r-   r"   rH   rã   rj   rj   rk   Útest_issue_4231å  s   XBr  c                  C   s@   t dtd t t  tƒ} t| tƒdtd t t  ksJ ‚d S rà   )r
   rp   r   rH   rã   rj   rj   rk   Útest_issue_17841ê  s   &r  c                  C   sJ  t dddd} | | d  tdƒd  | t| ttdƒƒ ƒ  d  }| ttdƒƒ | | dd|      }t|| ƒ| d  dtdƒd   | d	 t| ttdƒƒ ƒ  d| d	  d	  d	|  t| ttdƒƒ ƒ  d	t| ttdƒƒ ƒ  ksxJ ‚t|| ƒt| d	 tdƒd  ƒd	 d	td
ƒ ttdƒƒ t	d	td
ƒ |  ƒ  ks£J ‚d S )Nrp   T©r©   rË   r   r‘   rt   r×   r¯   rm   r|   )
r   r0   r(   r"   r%   r2   rH   r   r-   r1   )rp   Úf1Úf2rj   rj   rk   Útest_issue_21034ï  s   6$xÿFÿr  c                   C   sd   t ttƒtt ƒ tƒtt ƒtt ƒttƒ  ksJ ‚t ttƒtt ƒ tdtfƒt ks0J ‚d S r^  )rH   r"   rp   r    r:   r   r   rj   rj   rj   rk   Útest_issue_4187û  s   8,r  c               	   C   s0  t dƒ} t dƒ}t dƒ}t dƒ}t|d t|ƒd  ||  d | d fƒ|d  |  d t| d ƒt| d ƒ d   |d | d t| d ƒt| d ƒ d    ksUJ ‚t|d t|| ƒd  ||  d | d fƒt|d  |  | d t| | d ƒt| | d ƒ d   | |d | | d t| | d ƒt| | d ƒ d   |  |t k|tk @ t|dƒ@ f| |d  dfƒksÃJ ‚dt | |  }tdƒt| ƒ |d  t	tdƒt| ƒ ƒ t
tjd ƒ d	t
td
ƒd ƒ  | |d  d  }t|d t|| ƒd  ||  d | d fƒ|ksJ ‚d S )NrÌ  rî   Úr0ÚR0rm   r   r   Tr  r‘   )r   rH   r2   r3   r.   r   r   r   r-   r?   rA   r   rœ   )rÌ  rî   r  r  r~  Zsolrj   rj   rk   Útest_issue_5547   s(   8ÿ*
ÿ.>:ÿÿ
ý^<r  c                   C   s6   t dddt d  d  tdtfƒtddƒksJ ‚d S )Nrt   rm   r|   r   )rH   rp   r   r   rj   rj   rj   rk   Útest_issue_15810  rç   r  c                  C   sf  t dddd} t| ƒtd|  ƒ td|  tdƒ ƒ }| t| ƒd  | ddtdƒ    d|  d|  tdƒ  t| ƒ  | tdƒd	  td|  tdƒ ƒ  tdƒtd|  tdƒ ƒ d	  }|t|| ƒkshJ ‚| tdƒ | d  }t| ƒtdƒ|   }|t|| ƒks…J ‚| d td
ƒ |  }| d d td
ƒt| ƒ  }|t|| ƒks¦J ‚| d|  tdƒ  }| d td|  tdƒ ƒtdƒ d  }|t|| ƒksÍJ ‚| tdƒ|   }| d d t| ƒtdƒ  }|t|| ƒksìJ ‚t| td
ƒ|   ƒ}| t| td
ƒ|   ƒ |  dttd
dƒƒ t| ttddƒƒ ƒ  }|t|| ƒks"J ‚| d
 | t  }| d
 d
 t| d  d  | d tdƒ d  | d tdƒ d  | tdƒ  td
ƒt| t ƒ  }|t|| ƒksfJ ‚d|  | td
ƒ  }d|  dt| td
ƒ ƒ td
ƒ  }|t|| ƒksŒJ ‚| d d|  tdƒ  }| d d | tdƒ d  td|  tdƒ ƒtdƒd  d  }|t|| ƒksÂJ ‚| d  | t  }| d  d t|   tdƒt| t ƒ  }|t|| ƒksêJ ‚d|  d td
ƒ |  }d|  td
ƒ dtd
ƒ t| ƒ  }|t|| ƒksJ ‚| d t	dƒ|   }| d d d|   t| ƒt	dƒ  }|t|| ƒks8J ‚| tdƒ| d   }| d d tdƒd| d    }|t|| ƒks\J ‚d|  td	ƒ |  }d|  td	ƒt| ƒ  }|t|| ƒks|J ‚| d | td
ƒ d  |  }| d d | d tddƒtd
ƒ   d|  tdƒ  dtdƒ t| td
ƒ ƒ  tdƒ| td
ƒ   }|t|| ƒksÇJ ‚| | tdƒ| d    |  }| d d | d d  tdƒt| ƒ  }|t|| ƒksóJ ‚| | d
|  tdƒ   }| d d | d
  td
|  tdƒ ƒtdƒ d  }|t|| ƒks#J ‚| tdƒ d| d  d|    }tdƒt| ƒ d tdƒt| d ƒ d  t| d ƒd  }|t|| ƒ 
¡ ks]J ‚t| dtdƒ  ƒ}| t| dtdƒ  ƒ |  dt| dtdƒ  ƒ tdƒ  }|t|| ƒksJ ‚|  dtdƒtdƒ|   d  tdƒ |   }| d  tdƒ d dt| ƒ tdƒ  d| d  td
ƒ tdƒ tdƒ d|  tdƒ tdƒ tdƒd   dtdƒ tdƒ tdƒd   d| d    tdƒ }|t|| ƒksJ ‚d| d  tdƒ d	|   }d| d  d d	tdƒ t| ƒ  tdƒ }|t|| ƒks1J ‚d S )Nrp   Tr  r   r|   rm   rt   r€   r¯   r‘   éûÿÿÿr®   r   rf   r  rÀ  iLÿÿÿéZ   r*  rþ   )r   r"   r    rH   r)   r(   r   r1   r   r%   r‹   r3   )rp   re   r÷  ZF_truerj   rj   rk   Útest_issue_21024  s”   (B"ÿÿ(Dd$@*$$ f(4 <<.nÿ
ÿÿ,r  c                  C   s`   t dƒ} tdtdt|  d    tt tfƒ ¡ tt| ƒd dƒ tt| ƒd dƒ ks.J ‚d S )Nrš   rt   rm   r   )r   rH   r   rp   r   r‹   r8   r   )rš   rj   rj   rk   Útest_issue_21721r  s   ($ÿr  c                  C   s€   t dƒ} ttd|  ƒddt| ƒ   | ddt fƒtd ks J ‚td|  ƒddt| ƒ   }t|| ddt fƒtd ks>J ‚d S )	NÚthetar|   r‘   r   r   rm   r×   r¯   )r   rH   r2   r   )r   rÍ  rj   rj   rk   Útest_issue_21831x  s   8$r!  c                   C   sB   t td tddƒ d tdtd  ƒ tddfƒtd ksJ ‚d S )Nrm   rt   r   rŽ   rV  )rH   rp   r   r-   r   rj   rj   rj   rk   Útest_issue_22033_integral  s   Br"  c                	   C   sº   t dttd td  dtd  td  fttdtd  ƒ tdtd  ƒftddfƒtks/J ‚t ddtd  tdƒd   d dtdtd  ƒ ddtd     tddfƒtks[J ‚d S )Nrt   rm   rŽ   rþ   r|   )rH   rî   rp   r‚   r-   r   r   rj   rj   rj   rk   Útest_issue_21671„  s   ^\r#  c                  C   sr   t ddd} ttƒdttƒd   }t| t| ¡| dd | t¡}t|tdd|  kr4t|tƒks7J ‚ J ‚d S )NÚxrTr¨   r   rm   r´  )r   r2   rp   r3   rH   rÞ   rW   )r$  r  Zres_realrj   rj   rk   Útest_issue_18527Š  s   0r%  c               	   C   sÀ  dt ttƒ tttƒ   } tt t  ttd ƒ ttd t d  ƒt   ƒ ttd t d  ƒ tt t  ttd ƒ ttd t d  ƒt   ƒttd t d  ƒ  }tt	tttd ƒd ƒ tttd ƒd ƒ  t
tdƒt
t dƒ@ ftttd ƒƒt t
t dƒft t t  ttƒ t ttƒ   t
tt t  ƒfttt  ttƒ t ttƒ   t
ttt  ƒf|dfƒ}t| tƒ|ksÁJ ‚tddd\}}t|t |i}t|  |¡tƒ| |¡ksÞJ ‚d S )Nrt   rm   r   Tza, brÄ   )r°   r2   rp   rš   r3   r"   r5   r-   r.   r   r   r   rH   r   rÞ   )re   ZFposr÷  Zapr	  Úreprj   rj   rk   Útest_issue_23718“  s   FDÿ@2,ø
"r'  c                  C   sR   t dttd d ƒ tddfƒ} | tdtdƒ ƒ ksJ ‚t |  ¡ d¡s'J ‚d S )Nrt   rm   r€   rŽ   r|   gC˜qBõ?)rH   r-   rp   r"   ÚmathÚiscloserb   r  rj   rj   rk   Útest_issue_23566¨  s    r*  c                   C   s\   t dttt d d ƒ ƒtttt ƒttt d ƒdkft ttt ƒ dfƒks,J ‚d S )Nrt   rm   T)rH   r-   rp   r   r.   r#   r   r0   rj   rj   rj   rk   Útest_pr_23583®  s   \r+  c                   C   sX   t ttƒtdtdt ƒ ƒ ƒttdt ƒd ƒttƒ d tttƒƒd  ks*J ‚d S rà   )rH   r    rp   r-   r$   rj   rj   rj   rk   Útest_issue_7264³  s   Xr,  c                   C   s.   t ttƒtddfƒdtttjƒƒ ksJ ‚d S rû   )rH   r*   rp   r1   r)   r   r½   rj   rj   rj   rk   Útest_issue_11254a·  rô  r-  c                   C   sB   t ttƒtƒtttd ƒƒksJ ‚t ttƒtddfƒtksJ ‚d S )Nrm   r   rt   )rH   r'   rp   r"   r)   r   rj   rj   rj   rk   Útest_issue_11254b»  s   " r.  c                   C   sD   t ttƒd  t¡tƒdttd ƒ ttd ƒd d  ks J ‚d S )Nrm   rt   )rH   r*   rp   rË  r(   r)   rj   rj   rj   rk   Útest_issue_11254dÀ  s   Dr/  c                  C   s   t dtd  td  dt  d ttd dt  d ƒ tddfƒ} | dtdƒ d dtddtdƒ  ƒ d	  ks<J ‚t |  ¡ d
¡sFJ ‚d S )Nr|   rm   r   r   rt   i›ÿÿÿr®   é‡   r  g€2É{¢ÙÀ)rH   rp   r-   r"   r(  r)  rb   r  rj   rj   rk   Útest_issue_22863Ä  s   D4r1  c                   C   s,  t ttttƒ ƒƒdtttƒt ƒ ttƒd td  tdƒd   tdttƒ dtttƒt ƒ  d ƒd  ks<J ‚t tdt d tdt d ƒ ƒd ƒtdt tdt d ƒ d ƒdt d	 d
dt d tdƒd   d  tdt d ƒd  dt d d d	  td
ƒd	   d ks”J ‚d S )Nrm   r×   r|   rt   r®   r   r‘   r³   r   r  é(   ©rH   r-   rp   r   r"   rj   rj   rj   rk   Útest_issue_9723Ê  s   ^ÿ&^ÿÿÿr4  c                   C   sl   t ttƒtd  ttd  tt  t  tddtttƒttd  ttd   ttd    tƒks4J ‚d S )Nrm   Tr¸  r|   r   )rH   r"   rp   r±   r°   rš   rX   rj   rj   rj   rk   Útest_issue_23704Ò  s   00ÿr5  c                   C   sd   t dtdtdt ƒ ƒ ƒttdtdt ƒ ƒd ƒd ttdtdt ƒ ƒd ƒd  ks0J ‚d S rà   rå  rj   rj   rj   rk   Útest_exp_substitutionÚ  s   dr6  c                   C   sx   t ttƒƒttttƒd ƒ tttƒƒ ksJ ‚t ttƒƒdtttd ƒƒ ks*J ‚t ttƒƒtttd ƒƒks:J ‚d S rà   )rH   r&   rp   r"   r)   r*   r1   r'   rj   rj   rj   rk   Útest_hyperbolicÞ  s   0$$r7  c                   C   sÌ   t ttd ƒƒtttd ƒ d ksJ ‚t tttdƒd  ƒƒdt tttdƒd  ƒ d ks2J ‚t dttd ƒ ƒtttƒ ttd ƒ ksJJ ‚t tttd ƒ ƒtd ttd ƒ ttƒ ksdJ ‚d S )Nrm   r‘   r|   r¯   r  rt   rþ   r3  rj   rj   rj   rk   Útest_nested_powä  s   (<08r8  c                   C   sä  t dtdtd  dt  d ƒ ƒtdƒtdtdƒ ttdƒd   d ƒ d ks,J ‚t dtdtd  dt  d ƒ ƒtdƒtdtdƒ ttdƒd   d ƒ d ksXJ ‚t dtdtd  dt  d ƒ ƒtdƒtd	t dtdƒ tdtd  dt  d ƒ  d ƒ d ksŽJ ‚t dtdtd  dt  d ƒ ƒttj tttj ƒ dtttj d ƒ  ks¹J ‚t dttt	t  t
td   ƒ tƒttt	dtt
ƒ ttt	t  t
td   ƒ  dt
 t  ƒtt
ƒ tt
d
ƒttt	d dt
   d
ƒ@ ft	dt
  t tt	dt
  t ƒ tt
t	dt
  t d  ƒ tt
d
ƒfdttt	t  ƒ t	 tt	d
ƒftttƒ dfƒks@J ‚t dt d	 tdtd  dt  d ƒ ƒdtdtd  dt  d ƒ d dtdƒ tdtdƒ ttdƒd   d ƒ d  ks…J ‚t dt d	 tdtd  dt  d ƒ ƒdtdtd  dt  d ƒ d dtdƒ tdtdƒ ttdƒd   d ƒ d  ksÊJ ‚t dt d	 tdtd  dt  d ƒ ƒdtdtd  dt  d ƒ d dtdƒ td	t dtdƒ tdtd  dt  d ƒ  d ƒ d  ksJ ‚t ttt  ttt	t  t
td   ƒ tƒtt	 t dt
  t ttt	dtt
ƒ ttt	t  t
td   ƒ  dt
 t  ƒtt
ƒ ttt	d dt
   d
ƒft	dt
  t tt	dt
  t ƒ tt
t	dt
  t d  ƒ dfƒ tttt	t  t
td   ƒ t
  tt
d
ƒfdt ttt	t  ƒ dt t ttt	t  ƒ tt	t  tdƒd  d   t	  t	 tt	d
ƒftt ttd  d  ttƒ dfƒksëJ ‚t dtd  td  dt  d ttd dt  d ƒ ƒttd dt  d ƒtd dt d  tdƒd   dtdt dttd dt  d ƒ  d ƒ d  ksBJ ‚t tdtd  dt  d ƒƒtd tdƒd  tdtd  dt  d ƒ dtdƒ tdt d tdƒd  ƒ d  ksƒJ ‚t ttt	t  t
td   ƒtƒttd t	d dt
   ttt	dtt
ƒ ttt	t  t
td   ƒ  dt
 t  ƒtt
ƒ ttt	d dt
   d
ƒft	dt
  t tt	dt
  t ƒ tt
t	dt
  t d  ƒ dfƒ t	dt
  td  ttt	t  t
td   ƒ  tt
d
ƒfdtt	t  tdƒd   dt	  tt	d
ƒfttƒt dfƒks1J ‚t tttd dt  d ƒ ƒtd d td	  tdƒd	  ttd dt  d ƒ dttdƒtd  d ƒ d  kspJ ‚d S )Nrt   r|   rm   r   r‘   r  rÿ   r\  r¯   r   Tr–   r³   iùÿÿÿrV  r  r%  r®   r0  r  iéÏ  i¬ iåY  i+A  i‰‡¦iQ  iC)  ir+  iÁ  i:§ŠC)rH   r-   rp   r$   r   r0   r"   r½   rš   r°   r±   r.   r   r…   rh   rj   rj   rj   rk   Útest_sqrt_quadraticë  st   XXlV$hH.þ
ÿ*V
ÿ*V
ÿ*j
ÿ,^Bÿÿ"ýýb"û
ÿ:j
ÿ.*ÿ
ÿ ^Bÿÿ.ýý,û
ÿVÿr9  c                   C   sî   t tttƒ ttƒ ƒtttƒ tttƒttƒ ƒ ksJ ‚t tttƒd  tƒtttƒ tttƒƒ ks7J ‚t td tttƒtdfƒ ƒtd tttƒtdfƒ dtd  tttƒtdfƒ  dt tttƒtƒ  dttƒ  ksuJ ‚d S )Nrm   r|   r   r¯   )rH   rp   r6   r5   r"   r2   r   re   rj   rj   rj   rk   Útest_mul_pow_derivative  s
   <2Xÿr:  )rf   (\  r(  Zsympy.concrete.summationsr   r   Zsympy.core.addr   Zsympy.core.containersr   Zsympy.core.exprr   rÔ   r   r   r	   r
   Z
sympy.corer   Zsympy.core.numbersr   r   r   r   r   r   r   r   Zsympy.core.relationalr   r   Zsympy.core.singletonr   Zsympy.core.symbolr   r   Zsympy.core.sympifyr   rÇ  r   r   r   r   r   Z&sympy.functions.elementary.exponentialr   r    r!   r"   Z%sympy.functions.elementary.hyperbolicr#   r$   r%   r&   r'   r(   r)   r*   Z(sympy.functions.elementary.miscellaneousr+   r,   r-   Z$sympy.functions.elementary.piecewiser.   Z(sympy.functions.elementary.trigonometricr/   r0   r1   r2   r3   r4   r5   r6   Z'sympy.functions.special.delta_functionsr7   r8   rÕ   r9   r:   r;   r<   r=   r>   r?   r@   r¦  rA   rB   Zsympy.functions.special.hyperrC   rD   Z-sympy.functions.special.singularity_functionsrE   Z&sympy.functions.special.zeta_functionsrF   Zsympy.integrals.integralsrH   Zsympy.logic.boolalgrI   Zsympy.matrices.denserJ   Zsympy.polys.polytoolsrK   rL   Zsympy.printing.strrM   Zsympy.series.orderrN   Zsympy.sets.setsrO   Zsympy.simplify.gammasimprP   Zsympy.simplify.simplifyrQ   Zsympy.simplify.trigsimprR   Zsympy.tensor.indexedrS   rT   rU   Z#sympy.functions.elementary.integersrV   rW   Zsympy.integrals.rischrX   Zsympy.physicsrY   Zsympy.testing.pytestrZ   r[   r\   r]   r^   r_   Zsympy.utilities.exceptionsr`   Zsympy.core.randomra   rp   r‚   rî   rš   r°   r±   r…   rh   r‡   r™   rû  rü  rb   re   rl   rs   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æ   ré   rë   rí   rï   rð   rñ   r÷   rú   rü   rý   r
  r  r  r   r#  r$  r&  r(  r)  r,  r0  r2  r4  r5  r8  r9  r:  r<  r?  r@  rN  rT  rY  r[  r]  r_  ra  rc  re  rj  rk  rl  ro  rq  rr  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¨  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Ý  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  r  r  r  r  r  r  r  r  r  r  r!  r"  r#  r%  r'  r*  r+  r,  r-  r.  r/  r1  r4  r5  r6  r7  r8  r9  r:  rj   rj   rj   rk   Ú<module>   sü   ((((  


.
			

	0
3!

			
			 


		 	

	Y	*