U
    L?h÷†  ã                
   @   s|  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
mZmZ d dlmZ d dlmZ d dlmZmZmZ d dlmZmZ d d	lmZmZ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(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1 d dl2m3Z3m4Z4 d dl5m6Z6m7Z7 d dl8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZB d dlCmDZD d dlEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZM d dlNmOZO d dlPmQZQmRZR d dlSmTZT d dlUmVZVmWZWmXZXmYZYmZZZ d dl[m\Z\m]Z] edƒ\
Z^Z_Z`ZaZbZcZdZeZfZgedƒZheedœdd„Zidd„ Zjdd„ Zkd d!„ Zld"d#„ Zmd$d%„ Zne]d&d'„ ƒZoe]d(d)„ ƒZpd*d+„ Zqd,d-„ Zrd.d/„ Zsd0d1„ Ztd2d3„ Zud4d5„ Zvd6d7„ Zwe]d8d9„ ƒZxd:d;„ Zyd<d=„ Zzd>d?„ Z{d@dA„ Z|e]dBdC„ ƒZ}dDdE„ Z~dFdG„ Ze]dHdI„ ƒZ€e]dJdK„ ƒZdLdM„ Z‚dNdO„ ZƒdPdQ„ Z„e]dRdS„ ƒZ…dTdU„ Z†e]dVdW„ ƒZ‡dXdY„ ZˆdZd[„ Z‰e]d\d]„ ƒZŠd^d_„ Z‹d`da„ ZŒdbdc„ Zddde„ ZŽdfdg„ Zdhdi„ Zdjdk„ Z‘dldm„ Z’dndo„ Z“dpS )qé    )ÚExpr)ÚMul)Ú
DerivativeÚFunctionÚdiffÚexpand)ÚIÚRationalÚpi)ÚNe)ÚS)ÚDummyÚSymbolÚsymbols)ÚexpÚlog)ÚasinhÚcschÚcoshÚcothÚsechÚsinhÚtanh)Úsqrt)Ú	PiecewiseÚpiecewise_fold)ÚacosÚacotÚacscÚasecÚasinÚatanÚcosÚcotÚcscÚsecÚsinÚtan)Ú	HeavisideÚ
DiracDelta)Ú
elliptic_eÚ
elliptic_f)
ÚChiÚCiÚEiÚShiÚSiÚerfÚerfiÚfresnelcÚfresnelsÚli)Ú
uppergamma)Úassoc_laguerreÚ
chebyshevtÚ
chebyshevuÚ
gegenbauerÚhermiteÚjacobiÚlaguerreÚlegendre)Úpolylog)ÚIntegralÚ	integrate)ÚAnd)ÚmanualintegrateÚfind_substitutionsÚ_parts_ruleÚintegral_stepsÚmanual_subs)ÚraisesÚslowzx y z u n a b c d eÚf©rJ   ÚFc                 C   s*   t | tƒ|kst‚| t¡ | ¡s&t‚d S ©N)rC   ÚxÚAssertionErrorr   ÚequalsrK   © rQ   úS/var/www/html/venv/lib/python3.8/site-packages/sympy/integrals/tests/test_manual.pyÚassert_is_integral_of   s    rS   c                   C   s  t ttƒd d d ttƒd  ttƒd  ttƒttƒdtd  dtd   td  fgksbt‚t ttƒd ttƒttƒ  ttƒttƒ  ttƒttƒttƒ ddt fgks¶t‚td  tddƒt	tƒft tt	td  ƒ ttƒksît‚t t
ttƒtƒd ttƒrt‚d S )Né   é   é   é   éÿÿÿÿ)rD   r#   rN   r$   ÚurO   r%   r'   r	   r   r   rJ   rQ   rQ   rQ   rR   Útest_find_substitutions"   s    2(ÿ, ÿÿ8rZ   c                   C   s2  t ttƒtt kst‚t tdƒtƒttdƒ ks4t‚t td tƒtd d ksRt‚t dtd  dtd   tƒtd td  ks„t‚t td d tƒtd d d ksªt‚t dt d d tƒdt d d d ksØt‚t td d tƒtd d d ksþt‚t dt d d tƒdt d d d ks.t‚d S )NrT   é   rW   é	   )rC   ÚyrN   rO   r   rY   rQ   rQ   rQ   rR   Ú test_manualintegrate_polynomials+   s    2&.&r^   c                	   C   s8  t tdt ƒtƒtdt ƒd ks&t‚t dt tƒdt tdƒ ksHt‚tdtdtdt ƒ ƒ ttdtdt ƒ ƒd ƒd ttdtdt ƒ ƒd ƒd  ƒ t dt tƒttƒks¼t‚t ddt d  tƒtdt d ƒd ksêt‚t ttƒd t tƒttƒd d kst‚ttt ttƒd  tt ƒ d S )NrT   rU   r[   )rC   r   rN   rO   r   rS   r   rQ   rQ   rQ   rR   Ú!test_manualintegrate_exponentials8   s    &">ÿ.,r_   c                  C   sÖ  t ttƒttƒ tƒttƒttƒ d ttƒttƒ d  ksBt‚t dt ttƒ tƒdt ttƒ dttƒ  ksxt‚t tttƒ tƒtd ttƒ d td d  ks®t‚t ttƒtƒtttƒ t ksÐt‚t dtd  d ttƒ tƒdtd  ttƒ dt ttƒ  dttƒ  ks$t‚t ttƒtƒtttƒ ttd d ƒd  ksXt‚tttƒtƒd kspt‚tttƒtƒd ksˆt‚ttd tƒd ks t‚tttƒtƒ} | d ttƒkrÎ| d dksÒt‚d S )	NrT   rW   r[   é   rV   é   rU   r   )	rC   r   rN   r&   r"   rO   r   r!   rE   )ÚresultrQ   rQ   rR   Útest_manualintegrate_partsE   s    &ÿ66".ÿ
4rc   c                  C   sh  t ttƒtƒttƒ kst‚t ttƒtƒtttƒƒ ks<t‚t ttƒtƒtttƒttƒ ƒksbt‚t ttƒtƒtttƒt	tƒ ƒ ksŠt‚t ttƒttƒ tƒttƒd d ttƒd  d fksÆt‚t ttƒ ttƒ tƒttƒ ksìt‚t ttƒt	tƒ tƒttƒ kst‚t ttƒd tƒttƒks2t‚t ttƒd tƒt	tƒ ksTt‚t tttd ƒ tƒtttd ƒttd ƒ ƒd kst‚t ttƒtttƒƒ tƒtt	ttƒƒtttƒƒ ƒ ksÎt‚t tdt ƒttƒ tƒt tdt ƒ ks t‚t tdt ƒttƒ tƒdtttƒƒ dtttƒd ƒ  dttƒd   ksTt‚t
tdt ƒtdt ƒd ƒ t
tttd ƒ ttd ƒd ƒ t
ttƒtttƒƒƒ t
ttƒtttƒƒƒ ttƒdtttd ƒƒ  } }t | tƒ|ksòt‚| t¡|   t¡ ¡ dkst‚ttƒtttd ƒƒ } }t | tƒ|ksBt‚| t¡|   t¡ ¡ dksdt‚d S )NrT   r[   éýÿÿÿr   )rC   r&   rN   r"   rO   r'   r   r%   r$   r#   rS   r   r   r   r   r   r!   r   Zrewriter   Úsimplifyr   rK   rQ   rQ   rR   Ú!test_manualintegrate_trigonometryX   s2     &(<&& "<>22ÿ
""rf   c                   C   sî  t ttƒd ttƒ tƒttƒd d ks.t‚t ttƒd ttƒd  tƒtd tdt ƒd  ksht‚t ttƒttƒd  tƒttƒd  d ks˜t‚t ttƒd ttƒd  tƒttƒd d ttƒd d  ksÚt‚t ttƒd ttƒ tƒttƒd d ttƒ kst‚t ttƒttƒd  tƒttƒd d ksBt‚t ttƒd ttƒ tƒttƒd  d dttƒd  d  ttƒ kst‚t ttƒd ttƒd  tƒttƒd  d dttƒd  d  ttƒd d  ksêt‚d S )	NrT   r[   é   rW   é    r`   rV   é   )	rC   r&   rN   r"   rO   r'   r%   r#   r$   rQ   rQ   rQ   rR   Útest_manualintegrate_trigpowersw   s     .ÿ0ÿ80,ÿ
4ÿrj   c                  C   s:  t ttƒdtdt ƒ  tƒtttƒƒks.t‚t dddtd    tƒtdt d ƒd ks`t‚t dddtd    tƒttƒd ksŠt‚t ddtd   tƒttd ƒd ks´t‚t dddtd    tƒtdt ƒd ksât‚tdd	d
} tdd	d
}t d| |td    tƒtttt| | ƒ ƒ|t| | ƒ  | | dkfttt|  | ƒ ƒttt|  | ƒ ƒ dt|ƒ t|  ƒ  d	fƒks’t‚t dd|td    tƒtttdtd| ƒ  ƒd| td| ƒ  d| dkft	 ttdtd| ƒ  ƒttdtd| ƒ  ƒ  dt|ƒ  d	fƒks2t‚t d| dtd    tƒttdt t| ƒ ƒdt| ƒ  | dkfttt|  ƒd  ƒttt|  ƒd  ƒ dt|  ƒ  d	fƒksºt‚t dddtd    tƒttƒd ksæt‚t dt
ttd    tƒttttt
t ƒ ƒttt
t ƒ  tt
dƒfdtt  d	fƒksFt‚t dtdtd  ƒ tƒttƒksnt‚t dtddtd   ƒ tƒttƒd ksžt‚t dtddtd   ƒ tƒtdt ƒksÎt‚t dtddtd   ƒ tƒtttddƒ ƒd kst‚t dttd d ƒ tƒttƒks0t‚t dttd d ƒ tƒttd ƒks\t‚t dtdtd  d ƒ tƒttƒd ksŒt‚t dtdtd  d ƒ tƒtdt ƒd ksÀt‚t dt| td  d ƒ tƒtttt|  ƒ ƒt|  ƒ | dk ftt| ƒt ƒt| ƒ | dkftd	fƒks0t‚t dt| td  ƒ tƒttttd|  ƒ ƒ| dkftdt dt| td  ƒ  ƒd	fƒks’t‚t dttd d ƒ tƒtdt dttd d ƒ  ƒksÒt‚t dttd d ƒ tƒtdt dttd d ƒ  ƒkst‚t dtdtd  d ƒ tƒtdt dtdtd  d ƒ  ƒd ks^t‚t dtdtd  d ƒ tƒtdt dtdtd  d ƒ  ƒd ksªt‚t dt| td  d ƒ tƒttdt| ƒ t| td  d ƒ d|  t  ƒt| ƒ t| dƒft	 t d d	fƒks$t‚t dt|  dtd   ƒ tƒttdt td|  ƒ ƒd | dk ftdt dt|  dtd   ƒ  ƒd d	fƒksžt‚t ttƒtƒtttƒ tdtd  ƒ ksÎt‚t tt
t ƒtƒtt
t tt
t ƒ tt
d  td  d ƒ t
 tt
dƒfdƒks(t‚t ttt
t ƒ tƒt
 tt tt
d  td  d ƒ dt
d   tdt
d  t dtt
d  ƒ tt
d  td  d ƒ  ƒdt
d  tt
d  ƒ   tt
d dƒftd d d	fƒ d td tt
t ƒ d  k	st‚t ttƒtƒtttƒ tdtd  ƒ k	s<t‚t tt
t ƒtƒtt
t tt
t ƒ tt
d  td  d ƒ t
 tt
dƒftt d d	fƒk	s¢t‚t ttt
t ƒ tƒt
tt tt
d  td  d ƒ dt
d   tdt
d  t dtt
d  ƒ tt
d  td  d ƒ  ƒdt
d  tt
d  ƒ   tt
d dƒftd d d	fƒ d td tt
t ƒ d  k
s„t‚t ttƒtƒtttƒ ttd d ƒd  k
s¸t‚t tt
t ƒtƒtt
t tt
t ƒ tt
d td  d ƒd  t
 tt
dƒfdƒkst‚t ttt
t ƒ tƒt
 tt
d  tttt
d ƒ ƒt
d tt
d ƒ    d td tt
t ƒ d  ks†t‚t ttƒtƒtttƒ tdttddtd   ƒ  tƒ ksÈt‚t tt
t ƒtƒttt
t ƒ tdttddt
d td    ƒ  tƒt
  kst‚t ttt
t ƒ tƒtd tt
t ƒ d tdtddt
d td    ƒ tƒdt
   ks€t‚t ttƒtƒtttƒ tdttddtd   ƒ  tƒ ksÂt‚t tt
t ƒtƒttt
t ƒ tdttddt
d td    ƒ  tƒt
  kst‚t ttt
t ƒ tƒtd tt
t ƒ d tdtddt
d td    ƒ tƒdt
   kszt‚t ttƒtƒtttƒ ttd d ƒd  ks®t‚t tt
t ƒtƒtt
t tt
t ƒ tt
d td  d ƒd  t
 tt
dƒftt d d	fƒkst‚t ttt
t ƒ tƒt
tt
d  tttt
d ƒ ƒt
d tt
d ƒ    d td tt
t ƒ d  ks†t‚t dt| |td   ƒ tƒtttt||  ƒ ƒt|ƒ t| dk | dkƒfttt| |  ƒ ƒt| ƒ t| dk| dkƒftd| t dt| ƒ t| |td   ƒ  ƒt| ƒ t|dƒftt| ƒ d	fƒksbt‚t dt| |td   ƒ tƒtttt| |  ƒ ƒt| ƒ t| dk|dk ƒfttt||  ƒ ƒt|ƒ t| dk|dkƒftdt|ƒ t| |td   ƒ d| t  ƒt|ƒ t|dƒftt| ƒ d	fƒks6t‚d S )NrU   rT   rW   r\   r[   rV   é   ÚaT©ÚrealÚbr   rX   rg   é   )r   Téþÿÿÿ)rC   r   rN   r!   rO   r   r   r   r   r   rl   ro   r   r    r	   r   r   r
   r   r@   r   r   rB   )ÚraÚrbrQ   rQ   rR   Ú test_manualintegrate_inversetrig‰   sä    .2**.0Dÿÿ
8Dÿÿ
(<ÿÿ
,Fÿ(00:ÿ

ÿ

ÿ
ÿ
Jÿ
@ÿ
@@LLTÿ
Rÿ
0Z0Xÿÿþþþÿ
0f.Xÿÿþþþÿ
4\rBVbBVb4hp02Dýÿ
2,@ýÿrt   c                	   C   s–  t tdtd  d ƒt tƒttdtd  d ƒdtddt  ƒ  tttddƒk ttddƒkƒfƒkslt‚t dtd tdtd  ƒ  tƒtttd  d d ƒ d	t  td  d d dtj	  d
td    ttdk tdkƒfƒksðt‚t td dtd  d dtj	   tƒdtd  d dtj	  d dtd  d dtj	  d  dtdtd  d ƒ d  ddtdtd  d ƒ   ks’t‚d S )Nrk   rT   r\   r[   rW   rd   rU   é   é}   é   r`   éûÿÿÿri   é1   iÅÑ·iÁöW )
rC   r   rN   r   r   rB   r	   rO   r   ÚHalfrQ   rQ   rQ   rR   Ú&test_manualintegrate_trig_substitutionì   s*    (ÿÿ  &ÿÿÿ&ÿþþÿr{   c                  C   sˆ   t ttƒtt ƒ t tƒtt ƒ ttƒ ks4t‚tdƒ} t | tƒ| t ƒ t tƒt| t ƒt tƒ t| tƒt tƒ ks„t‚d S )NrJ   )rC   r   rN   r.   rO   r   r@   ©rJ   rQ   rQ   rR   Ú)test_manualintegrate_trivial_substitutionø   s
    4&ÿr}   c                   C   sz   t ddtd   tƒttd ƒ d ttd ƒd  ks<t‚t ddtd   tƒttd ƒd ttd ƒd  ksvt‚d S )NrU   rW   rT   rX   )rC   rN   r   rO   rQ   rQ   rQ   rR   Útest_manualintegrate_rationalÿ   s    <r~   c                  C   s,  dt td  d ƒ dtdƒ ttƒ ttdƒt d ƒ  } }t| |ƒ dt dtd  ƒ dttƒ tdt ƒ d  } }t| |ƒ ttddƒ t t d ƒ dttddƒtd ƒ  } }t| |ƒ t dt ƒt t	dt ƒ } }t| |ƒ t ddt  td  ƒttƒt dƒ ttd ƒ d  } }t| |ƒ t
td dt  d ƒ} tdƒttƒ t
dƒ ttdƒdt d  dttƒ  ƒ tdƒttdƒdt d  dttƒ  ƒ   d }t| |ƒ tdtd  ƒtdƒttƒ tdtdƒ t ttƒ ƒ d  } }t| |ƒ t
dt d ƒt t
dƒtdt ƒ tdƒtdt ƒ   } }t| |ƒ tdt d ƒt tdƒ tdt ƒ tdƒtdt ƒ   } }t| |ƒ dtdt d ƒ t dtdƒ tdt ƒ dt
dƒ tdt ƒ   } }t| |ƒ ttd ƒt ttd ƒ } }t| |ƒ ttd ƒt ttd ƒd  } }t| |ƒ dtdt d ƒ tdt d ƒd  } }t| |ƒ tddt ƒt tddt ƒ } }t| |ƒ dtddt
tƒd   ƒ dtdƒ tttddƒƒ d  } }t| |ƒ tddt
tƒd   ƒdtttd	dƒƒ  } }t| |ƒ d S )
NrW   rT   r[   rU   rg   iðÿÿÿr`   r\   i÷ÿÿÿ)r   rN   r   r
   r1   rS   r2   r	   r6   r.   r&   r3   r"   r4   r-   r0   r   r,   r   r/   r   r5   r?   r+   r*   rK   rQ   rQ   rR   Útest_manualintegrate_special  sJ    @
2
6

:
:*ÿÿ
B
>
@
J

"
*
"
>
.r   c                   C   s´   t tttd dt  d ƒ tƒttd dt  d  ks>t‚t ttd dt  d tƒtƒtttd dt  d tƒƒks€t‚t tttƒttttƒtƒtttƒtttƒks°t‚d S )NrT   r[   )rC   r
   r   rN   rO   r]   r@   r&   rQ   rQ   rQ   rR   Útest_manualintegrate_derivative)  s     ÿÿÿr€   c                  C   sö  t tdt d ƒtdt d ƒd ƒ t tdt dƒtdt ƒd ƒ ttttt  dƒtƒttttt  ƒt ttdƒftttdƒ dfƒks”t	‚t ttd d dƒdttd d dƒ ƒ tttƒtƒtttƒ ksÜt	‚tttdƒ tƒtd d ksþt	‚tttdƒ tƒdkst	‚ttttƒ tƒtd ttƒ d ksFt	‚tttt ƒ tƒtd tt ƒ d ksvt	‚ttdt d ƒtƒtd tdt d ƒ ksªt	‚ttttƒ tƒtd ttƒ d ksÖt	‚tttd ƒtdt ƒ td  tƒtd d t
ddƒ ttd ƒ t
ddƒ tt d ƒ ks<t	‚tdƒ} ttd	t ƒtdt d	 ƒ tƒttd	 ƒ tt
d
dƒƒ tdt td	ƒ ƒ ksœt	‚tt| t ƒtdt |  ƒ tƒt| t
ddƒ ƒtt|  ƒ tdt |  ƒ ksòt	‚d S )Nr[   rT   r   rU   Trq   rW   r]   ri   é   )rS   r)   rN   r(   rC   rl   ro   r   r   rO   r	   r   r&   r"   r   )r]   rQ   rQ   rR   Útest_manualintegrate_Heaviside2  s.    & 0ÿ*",04,$8ÿ
 .ÿ
 ,ÿr‚   c                  C   sz  t dƒ} dtddƒ }}t| ||tƒt| |tƒt| tƒt| tƒt| tƒt| tƒt	| tƒt
| |tƒg}|D ]
}t|tƒ}dD ]P}z| | |¡}W n tk
r¨   Y q|Y nX | | |¡ t¡|  ¡ dks|t‚q|t| tdt d ¡ }t|tƒ}d	D ].}| | |¡ t¡| | |¡  ¡ dksôt‚qôt d
ƒ}	tt|jƒd ƒD ]4}
t|jƒ}|	||
< tt|j|Ž |	ƒtƒs>t‚q>qhd S )NÚnri   r`   r[   )rq   rX   r   rU   r[   r`   rg   r   rT   rU   )rT   rW   ri   Út)r   r	   r<   rN   r:   r8   r9   r>   r;   r=   r7   rC   ÚsubsÚ
ValueErrorr   r   rO   ÚrangeÚlenÚargsÚlistÚ
isinstanceÚfuncr@   )rƒ   rl   ro   ZpolysÚpZintegralÚdegZp_subbedÚqr„   ÚiÚnew_argsrQ   rQ   rR   Ú$test_manualintegrate_orthogonal_polyJ  s4       
þ


$
,
r’   c                  C   sê   t td ¡ ƒ\} }}tdddd}t|||  ƒt|| ƒ }|t tf}t||ƒ|| d td| | ƒd  t|| ƒ t|| ƒt|| ƒd  d  | ks¨t‚| t||ƒ 	¡  t | t|| ƒ ksÒt‚t||ƒ 
t¡ræt‚d S )Nzr x phirƒ   T)ÚintegerÚpositiverT   rW   )Úmapr   Úsplitr"   r
   rC   r&   rO   rA   ZtrigsimpÚhasr   )ÚrrN   Úphirƒ   Ú	integrandZlimitsrQ   rQ   rR   Útest_issue_6799h  s    Nÿ*r›   c                   C   sB   t tt tƒtttd  td  ttdƒfttƒdfƒks>t‚d S )NrU   rX   T)rC   rN   r]   r   r   r   rO   rQ   rQ   rQ   rR   Útest_issue_12251u  s     
ÿrœ   c                   C   sr   t ttttd  ƒƒtƒtttd  ƒks.t‚ttttd ƒ tddt ttƒ t	ttd  ƒ d ksnt‚d S )NrT   rW   F)Zrisch)
rC   r   r   rN   rO   rA   r   r   r
   r1   rQ   rQ   rQ   rR   Útest_issue_3796z  s    .r   c                   C   sŠ   t ttƒttƒ tddttƒttƒ d ttƒttƒ d  ksFt‚t ttƒttƒ tddttƒd d ttƒd  d fks†t‚d S )NT©ZmanualrT   )rA   r   rN   r&   r"   rO   rQ   rQ   rQ   rR   Útest_manual_true  s    &ÿ ÿrŸ   c               
   C   s  t dƒ} t dƒ}t| t tƒt| t t| ƒ tt| ƒdƒftdfƒksJt‚t| |t  tƒtt| |t  t| ƒ tt| ƒdƒf|t dfƒ| t|dƒftdfƒks¨t‚tt|t ƒtƒtt|t ƒ| t|dƒftdfƒksât‚t ddd} t| d t tƒ| d t t| d ƒ kst‚t ddd} t| d t tƒtksFt‚t dƒ} t ddd}t| |t  tƒt| |t  t| ƒ tt| ƒdƒf|t dfƒ| ks¦t‚t ddd} t| d |t  tƒ| d |t  |t| d ƒ  ksît‚t d	dd
}t dƒ}td||td    tƒttt	|| ƒ ƒ|t	|| ƒ  ksFt‚t ddd
}td||td    tƒttt	| ƒt	d| ƒ  ƒ|t	| ƒ t	d| ƒ  ksªt‚tdt| | |  d t	|td  d ƒ  tƒ| |  t
t|  | |  t	|td  d ƒ t|  t	|td  d ƒ  dt|   | |   t	|td  d ƒ   tƒ ksdt‚tdtd d t	dtd  d ƒ  tƒt
dtd d t	dtd  d ƒ  tƒks¾t‚tdt|t  t|d    tƒt
d|t  |d t  t  tƒks
t‚d S )Nr]   rƒ   r   T©r”   rU   )Úzero)Znonzerorl   ©Únegativero   rT   rX   rW   )r   rC   rN   r   r   r   rO   r   r!   r   r@   )r]   rƒ   rl   ro   rQ   rQ   rR   Útest_issue_6746†  sv     ÿ
 
þýýû
 ÿ
0  
ÿÿÿ
D6ÿ
0.ÿ*ÿÿÿ
((ÿ
 "ÿr¤   c                   C   s€  t ttƒttƒ tƒt ttƒ ttd  d ƒ tttƒ ttd  d ƒ ttƒ  tttd  d ƒt tƒ ks|t‚t ttƒttƒ tƒt ttƒ ttd  d ƒ tttƒ ttd  d ƒ ttƒ  tttd  d ƒt tƒ ksøt‚t ttƒttƒ tƒt ttƒ tttƒ ttd d ƒd  ttƒ  ttd d ƒd  tttd d ƒt tƒd  ks|t‚d S )NrT   rU   )	rC   r    rN   r   r   r@   rO   r   r!   rQ   rQ   rQ   rR   Útest_issue_2850®  s&    2$ÿÿ
2$ÿÿ
*ÿÿÿÿr¥   c                	   C   s  t tdt ƒttƒ tƒttƒtdt ƒ d dttƒ tdt ƒ d  ksRt‚ttdt ƒttƒ tƒ ¡ rtt‚t td td dt  d d  tƒtttd dtd   dtd   dt  d  tƒdtdtd dtd   dtd   dt  d  tƒ  kst‚d S )NrT   r`   r[   rW   rg   rU   )	rC   r&   rN   r   r"   rO   rF   Zcontains_dont_knowr@   rQ   rQ   rQ   rR   Útest_issue_9462¸  s    R"$48ÿÿr¦   c                  C   s   t tƒttd ƒ } dttd ƒ ttƒ d dttd ƒ t tƒ d  }t| tƒ|krh| t¡| kslt‚tt tƒ ttd ƒ } tdttd ƒ ttƒ d dttd ƒ t tƒ d   dttd ƒ ttƒ d  dttd ƒ t tƒ d  }t| tƒ|kr| t¡| kst‚d S )NrW   rk   é   é€   é!  éð   )r"   rN   r   r&   rC   r   rO   rK   rQ   rQ   rR   Útest_cyclic_partsÀ  s    8 :ÿÿr«   c                   C   s¾   t dtd  dtd   dtd   dt  d td dtd   dtd   dtd   dtd   dt  d	  tƒdt td d	  dttƒ  d	td d	   dtd	   ksºt‚d S )
NrW   r[   rk   rT   é   rg   rV   r`   rU   )rC   rN   r!   rO   rQ   rQ   rQ   rR   Útest_issue_10847_slowÊ  s    0Bÿÿ:þr­   c                  C   s 	  t td td t  tƒtttttt ƒ ƒtt ƒ ttdƒfdt dfƒ t ksZt‚tddd} t td td |   tƒ| tttt|  ƒ ƒt|  ƒ | dk ft	t| ƒ t ƒt	t| ƒt ƒ dt| ƒ  dfƒ t ksät‚t ttt
 ƒt	tt ƒ tƒdt
d  ttttt
 ƒtt
ƒ ƒtt
ƒ tt
dƒfdttt
 ƒ dfƒ d dt
 ttt
 ƒ d  dtt
 tddƒ  t	tt ƒ d  dtt
 tddƒ  d	  ks°t‚td
dd}tddd}t tt| ƒt	|t ƒ tƒd|d  tttt| ƒt|ƒ ƒt|ƒ |dkft	t| ƒ tt| ƒ ƒt	t| ƒtt| ƒ ƒ dt| ƒ  dfƒ d d| tt| ƒ d  dt| tddƒ  t	|t ƒ d  dt| tddƒ  d	  ksÆt‚t ttƒt	tƒ tƒdttddƒ  t	tƒ d dttddƒ  d	  kst‚t ttt t ƒt tƒ}|tdt ttttt t ƒtt ƒ ƒ tt ƒ ttdƒfdttt t ƒ dfƒ dttt t ƒ  ttdƒfttƒt	tƒ dfƒksÄt‚t|ƒtdt tttt t ƒtt ƒ ƒ tt ƒ dttt t ƒ  ttdƒttdƒ@ fdt ttt t ƒ dttt t ƒ  ttdƒfttƒt	tƒ dfƒkstt‚tddd}tddd}t t|t | ƒt tƒtd| ttt|t | ƒt| ƒ ƒ t| ƒ |dk ft t	t|ƒ t|t | ƒ ƒt	t|ƒt|t | ƒ ƒ  dt| ƒ  dfƒ dt|t | ƒ  t|dƒft|ƒt	tƒ dfƒksnt‚tt t|t | ƒt|   tƒƒtd| |  ttt|t | ƒt||  | ƒ ƒt||  | ƒ ||  | dkft	t| |  | ƒ t|t | ƒ ƒdt| |  | ƒ  t	t| |  | ƒt|t | ƒ ƒdt| |  | ƒ   dfƒ d| ttt|t | ƒt||  | ƒ ƒt||  | ƒ ||  | dkft	t| |  | ƒ t|t | ƒ ƒdt| |  | ƒ  t	t| |  | ƒt|t | ƒ ƒdt| |  | ƒ   dfƒ  dt|t | ƒ  t|dƒft|ƒt	| t ƒ dfƒksjt‚t tdt d ƒtd  tƒdtdt d ƒ t	tdt d ƒd ƒ t	tdt d ƒd ƒ ksÒt‚t tdt d ƒd t tƒdt d tddƒ d dt d tddƒ d  ks*t‚t ttddƒ t	tƒ tƒdttddƒ  t	tƒ d dttddƒ  d  ks€t‚t td t	tƒ tƒt	tƒ dtd   ddtd    ksÂt‚t t	t
ƒt
d ddt
    t
ƒt	t
ƒt	ddt
  ƒ tt	ddt
  ƒt
 t
ƒ k	st‚d S )NrT   r   rX   TÚcrm   rW   r[   r\   r]   Úzrq   rU   rl   ro   r`   é   ru   rd   )rC   rN   r®   r   r!   r   r   rO   r   r   r]   r¯   r	   rl   ro   r   r   r   r@   )ÚrcZryZrzrb   rr   rs   rQ   rQ   rR   Útest_issue_10847Ñ  sÊ    :ÿ&0ÿÿÿ4ÿÿÿ$þþÿ
2Fÿÿþ$þýÿ
P2þþþýV4ý0Pþýýûÿ
 P<:ÿÿÿJ<:ÿÿÿýúúúÿ
	hXVB 0ÿr²   c                   C   sd   t tttƒ t¡tƒtttttƒtƒtƒks0t‚t tttƒ t¡ t¡tƒttttƒtƒks`t‚d S rM   )rC   rJ   rN   r]   r   r@   r   rO   rQ   rQ   rQ   rR   Útest_issue_12899  s    0r³   c                   C   s2   t tttddfƒtƒttttddfƒ ks.t‚d S )NrU   rT   )rC   r@   r]   rN   rO   rQ   rQ   rQ   rR   Ú#test_constant_independent_of_symbol  s    ÿr´   c                   C   s´   t tdt ƒtƒtdt ƒ d ks(t‚t ttƒtdt ƒ tƒdttƒd  d ksZt‚t tdt ƒttƒ dttƒ  tƒdtttƒd ƒ ttƒd  dttƒ  ks°t‚d S )NrT   rq   r[   rU   )rC   r&   rN   r"   rO   r   rQ   rQ   rQ   rR   Útest_issue_12641  s
    (2$*ÿrµ   c                   C   s4   t ttƒttƒd  tƒttƒd  d ks0t‚d S )Nr`   rV   )rC   r&   rN   r"   rO   rQ   rQ   rQ   rR   Útest_issue_13297   s    r¶   c                   C   sB   t dtttd ƒ  tttd ƒd ƒtttd ƒd ƒ ƒ d S )NrU   )rS   rN   r   r   rQ   rQ   rQ   rR   Útest_issue_14470%  s    r·   c                  C   sÒ  t ttƒtttƒƒ tƒtttƒƒks*t‚t tdt ƒtttƒƒ tƒttƒtttƒƒ tttƒƒ kslt‚t tdt ƒtttƒƒ tƒ} |  t¡r˜t‚|  t¡tdt ƒtttƒƒ ks¾t‚t t	dd„ t
ddƒD ƒƒtƒttdt ƒ d ttdt ƒ d  ttd	t ƒ d	  ttd
t ƒ d
  ttdt ƒ d  ttdt ƒ d  tttƒ  tdt ƒd  tdt ƒd  td	t ƒd  td
t ƒd  tdt ƒd  tdt ƒd
  ttƒ ksÎt‚d S )NrT   é
   c                 s   s   | ]}t t|t  ƒ V  qd S rM   )rN   r   )Ú.0ÚkrQ   rQ   rR   Ú	<genexpr>2  s     z"test_issue_9858.<locals>.<genexpr>rU   rg   ri   rV   r`   rW   r[   ry   é$   ru   rk   r\   )rC   r   rN   r"   r&   rO   r—   r@   r   Úsumr‡   )ÚresrQ   rQ   rR   Útest_issue_9858)  s<    *ÿ&Nÿÿ
ÿÿÿþþþþþÿr¿   c                  C   s”   t ttd d  tƒttd ƒd ks*t‚t td td d  tƒttd d ƒd ks\t‚td	td  d d  } t | tƒ t¡ ¡ | kst‚d S )
NrW   rU   rT   rV   ru   r[   r`   rw   r\   )rC   rN   r!   rO   r   Úfactorr|   rQ   rQ   rR   Útest_issue_85208  s    *2rÁ   c                      sŽ   t dƒ\‰‰tˆƒtˆƒ ‰ tˆ tˆƒˆƒˆttˆƒƒ ks@t‚tˆ tˆƒˆƒtˆƒˆ ks`t‚tt‡ ‡fdd„ƒ tt‡ ‡‡fdd„ƒ d S )Nzx yc                      s
   t ˆ ˆƒS rM   )rG   rQ   )ÚexprrN   rQ   rR   Ú<lambda>G  ó    z"test_manual_subs.<locals>.<lambda>c                      s   t ˆ tˆƒˆˆƒS rM   )rG   r   rQ   ©rÂ   rN   r]   rQ   rR   rÃ   H  rÄ   )r   r   r   rG   rO   rH   r†   rQ   rQ   rÅ   rR   Útest_manual_subs?  s    $ rÆ   c                  C   sÀ   t tƒtt tƒƒ t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ƒ  }t| |ƒ d S )	Nr[   rW   i€ÿÿÿrU   r©   rª   rk   r§   )r   rN   r"   r	   r&   rS   rK   rQ   rQ   rR   Útest_issue_15471K  s    "rÇ   c               	   C   sÞ   dt  d dt d  dt   d  } t| t ƒdtdt d  dt   d ƒ d dtdƒ tdtdƒ t tddƒ  d ƒ d	  ksˆt‚ddt d  dt   d  }t|t ƒdtd
t  d ƒ dtd
t  d
 ƒ  ksÚt‚d S )Nr`   rT   r[   rg   rV   ra   é   rU   éE   rW   )rN   rC   r   r   r!   r	   rO   )rJ   ÚgrQ   rQ   rR   Útest_quadratic_denomR  s    $drË   c                   C   s"   t ttƒtƒtttƒ kst‚d S rM   )rC   r&   rN   r]   rO   rQ   rQ   rQ   rR   Útest_issue_22757X  s    rÌ   c                  C   s0   t ttƒtƒ} | jj}|j|j|j ks,t‚d S rM   )rF   r'   rN   Zsubsteprš   ZconstantÚotherrO   )ZstepsZconstant_times_steprQ   rQ   rR   Útest_issue_23348\  s    rÎ   c                  C   sf   t dttd d ƒ tddfƒjdd} | tddtdƒ  ƒ tdƒ ksNt‚t|  ¡ ƒd	ksbt‚d S )
NrU   rT   rq   rX   Trž   rW   r[   z1.31695789692482)r@   r   rN   Zdoitr   rO   Ústrrƒ   )r   rQ   rQ   rR   Útest_issue_23566b  s    (&rÐ   c                  C   s   t ddd} t ddd}ttttd  t ƒtƒttƒttƒ tttƒt ƒ dttƒ  ksbt	‚tt| td  t ƒtƒttƒttƒ tt| ƒt ƒ dt| ƒ  ks¬t	‚tt|td  t ƒtƒttƒ ttƒ t
|t t| ƒ ƒ dt| ƒ  kst	‚ttttd  t ƒtƒtdƒttƒ ttƒttdƒttƒ t ttƒ ƒ ttƒttdƒttƒ t ttƒ ƒ   dttƒ  ksŽt	‚ttttd  t ƒtƒtdƒttƒ ttƒ ttdƒttƒ t ttƒ ƒ ttƒttdƒttƒ t ttƒ ƒ   dttƒ  kst	‚d S )NÚapTr    Úanr¢   rT   )r   rC   r   rl   rN   ro   r   r
   r2   rO   r1   r&   r3   r"   r4   )rÑ   rÒ   rQ   rQ   rR   Útest_issue_25093h  s&    JJV4&ÿ
ÿÿ
6&ÿ
ÿÿrÓ   c                  C   s¸  t ttd ƒtttd ƒ d ƒ t tttdƒd  ƒdt tttdƒd  ƒ d ƒ t dttd ƒ tttƒ ttd ƒ ƒ t tttd ƒ td ttd ƒ ttƒ ƒ tttt  t  t	 } tttt  t  t	 tt t  tt	 d  }tttt  t  t	 tt t  ttt t ƒ }t
| tƒtt|ttt	 dƒf|d	fƒttd
ƒfttt t t	  d	fƒks|t‚| t¡ | ¡s’t‚| t¡ tt	 d¡ | ¡s´t‚d S )NrT   r`   r[   rV   ra   rU   éüÿÿÿrX   Tr   )rS   r   rN   r   r   r®   rl   ro   ÚdÚerC   r   r   rO   r   rP   r…   )rJ   ZF1ZF2rQ   rQ   rR   Útest_nested_powv  s    "6*.04>ÿ
r×   c                
   C   sŒ  t dtd  d tddt  ƒ ddt d tdƒd   d ddt d tdƒd   d  d	dt d tdƒd   d
  dtdt d ƒ d
  ƒ tttttt  ƒd  tƒttdtd ttttt  ƒ tttt  ƒ ƒt	tdƒftd dttdƒd    dfƒkst
‚t tdt d ƒd dt d dtdƒ  d  dtdƒ dt d tdƒd   d dtdƒ dt d tdƒd   d  dtdƒ dt d tjd   d  ddt d tdƒd   d  ddt d tjd   d  tdƒtdt d ƒ d  dtdt d tjd  d ƒ d  dtdƒ tdt d tjd  ƒ d  ƒ 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  ƒ 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 ƒ d S )Nr`   r[   rW   rT   r¸   ri   i7  é   é(   éQ   éˆ   rq   r   TrU   rV   é   r¬   rg   r\   ra   )rS   rN   r   r   rC   rl   ro   r   r   r   rO   ZOner   r!   rQ   rQ   rQ   rR   Ú test_manualintegrate_sqrt_linear„  sF     >ÿÿÿZÿ
0N$ÿÿÿþ$þ(ýÿ^ÿ$^ÿÿÿrÝ   c                   C   s¸	  t dttt d d ƒ tdt dttd dt t  d ƒ  dt  ƒƒ t dtdtd  dt  d ƒ tdƒtdtdƒ ttdƒd   d ƒ d ƒ t dtdtd  dt  d ƒ tdƒtdtdƒ ttdƒd   d ƒ d ƒ 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 ƒ t dtdtd  dt  d ƒ ttj tttj ƒ dtttj d ƒ  ƒ 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¶t‚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  ƒ 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  ƒ 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  ƒ 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ôt‚t	dtd  td  dt  d ttd dt  d ƒ tƒ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s¤t‚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  ƒ t	tt
ttd   ƒtƒtt
ttdttƒ tt
ttd   ƒ dt t  ƒttƒ tt
d
ƒftttƒ tttd  ƒ dfƒ d ttt
ttd   ƒ d  ttd
ƒftt
ƒt dfƒksât‚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	s>t‚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  ƒ d S )NrU   rT   r[   rW   r`   ra   rd   é   rV   r   Tri   r\   iùÿÿÿrh   é   ée   rg   é‡   rk   iéÏ  i¬ iåY  i+A  i‰‡¦iQ  iC)  ir+  iÁ  i:§ŠC)rS   r   rN   r   r   r   r   r    rz   rC   rl   ro   r®   r   r   rO   rÕ   rÖ   rQ   rQ   rQ   rR   Ú#test_manualintegrate_sqrt_quadratic–  s’    NRRfP$hH  þÿ
(Vÿ(Vÿ(jÿ,^Bÿÿ"ýýb"ûÿ
<jÿ
.*ÿÿFÿÿÿÿþÿ
 ^Bÿÿ.ýý,ûÿ
Vÿrâ   c                   C   sÚ   t tttƒ ttƒ tttƒ tttƒttƒ ƒ ƒ t tttƒd  tttƒ tttƒƒ ƒ 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ƒ  ƒ d S )NrT   r[   rW   rV   )rS   rN   r%   r'   r   r"   r   rJ   rQ   rQ   rQ   rR   Útest_mul_pow_derivativeÅ  s    6*6ÿ
ÿÿrã   N)”Zsympy.core.exprr   Zsympy.core.mulr   Zsympy.core.functionr   r   r   r   Zsympy.core.numbersr   r	   r
   Zsympy.core.relationalr   Zsympy.core.singletonr   Zsympy.core.symbolr   r   r   Z&sympy.functions.elementary.exponentialr   r   Z%sympy.functions.elementary.hyperbolicr   r   r   r   r   r   r   Z(sympy.functions.elementary.miscellaneousr   Z$sympy.functions.elementary.piecewiser   r   Z(sympy.functions.elementary.trigonometricr   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   Z'sympy.functions.special.delta_functionsr(   r)   Z*sympy.functions.special.elliptic_integralsr*   r+   Z'sympy.functions.special.error_functionsr,   r-   r.   r/   r0   r1   r2   r3   r4   r5   Z'sympy.functions.special.gamma_functionsr6   Z#sympy.functions.special.polynomialsr7   r8   r9   r:   r;   r<   r=   r>   Z&sympy.functions.special.zeta_functionsr?   Zsympy.integrals.integralsr@   rA   Zsympy.logic.boolalgrB   Zsympy.integrals.manualintegraterC   rD   rE   rF   rG   Zsympy.testing.pytestrH   rI   rN   r]   r¯   rY   rƒ   rl   ro   r®   rÕ   rÖ   rJ   rS   rZ   r^   r_   rc   rf   rj   rt   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ã   rQ   rQ   rQ   rR   Ú<module>   s–   $80(	

b%	
(
	


=


/