o
    *Î®cß|  ã                
   @   sn  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# d dl$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0 d dl1m2Z2m3Z3 d dl4m5Z5m6Z6 d dl7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZA d dlBmCZC d dlDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZL d dlMmNZN d dlOmPZPmQZQ d dlRmSZS d dlTmUZUmVZVmWZWmXZXmYZYmZZZ d dl[m\Z\m]Z] edƒ\
Z^Z_Z`ZaZbZcZdZeZfZgedƒZhdedef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‘dlS )mé    )Ú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)Ú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Úcontains_dont_knowÚmanual_subs)ÚraisesÚslowzx y z u n a b c d eÚfÚFc                 C   s*   t | tƒ|ks	J ‚| t¡ | ¡sJ ‚d S ©N)rB   Úxr   Úequals©rJ   rK   © rP   úH/tmp/pip-target-vg8gfxp4/lib/python/sympy/integrals/tests/test_manual.pyÚassert_is_integral_of   s   rR   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s1J ‚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[J ‚td  tddƒttƒft tttd  ƒ ttƒv swJ ‚d S )Né   é   é   é   éÿÿÿÿ)	rC   r"   rM   r#   Úur$   r&   r	   r   rP   rP   rP   rQ   Útest_find_substitutions"   s   2(ÿ,ÿÿ<rY   c                   C   s0  t ttƒtt ksJ ‚t tdƒtƒttdƒ ksJ ‚t td tƒtd d ks)J ‚t dtd  dtd   tƒtd td  ksBJ ‚t td d tƒtd d d ksUJ ‚t dt d d tƒdt d d d kslJ ‚t td d tƒtd d d ksJ ‚t dt d d tƒdt d d d ks–J ‚d S )NrS   é   rV   é	   )rB   ÚyrM   r   rX   rP   rP   rP   rQ   Ú test_manualintegrate_polynomials*   s   2&.&2r]   c                	   C   s6  t tdt ƒtƒtdt ƒd ksJ ‚t dt tƒdt tdƒ ks$J ‚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^J ‚t ddt d  tƒtdt d ƒd ksuJ ‚t ttƒd t tƒttƒd d ksŠJ ‚ttt ttƒd  tt ƒ d S )NrS   rT   rZ   )rB   r   rM   r   rR   r   rP   rP   rP   rQ   Ú!test_manualintegrate_exponentials7   s   &">ÿ.*"r^   c                  C   sÈ  t ttƒttƒ tƒttƒttƒ d ttƒttƒ d  ks!J ‚t dt ttƒ tƒdt ttƒ dttƒ  ks<J ‚t tttƒ tƒtd ttƒ d td d  ksWJ ‚t ttƒtƒtttƒ t kshJ ‚t dtd  d ttƒ tƒdtd  ttƒ dt ttƒ  dttƒ  ks‘J ‚t ttƒtƒtttƒ ttd d ƒd  ksªJ ‚tttƒtƒd ksµJ ‚tttƒtƒd ksÀJ ‚ttd tƒd ksËJ ‚tttƒtƒ} | d ttƒkrà| d dksâJ ‚d S )	NrS   rV   rZ   é   rU   é   rT   r   )rB   r   rM   r%   r!   r   r    rD   )ÚresultrP   rP   rQ   Útest_manualintegrate_partsD   s   &ÿ66".ÿ2$rb   c                  C   s\  t ttƒtƒttƒ ksJ ‚t ttƒtƒtttƒƒ ksJ ‚t ttƒtƒtttƒttƒ ƒks1J ‚t ttƒtƒtttƒttƒ ƒ ksEJ ‚t ttƒttƒ tƒttƒd d ttƒd  d fv scJ ‚t ttƒ ttƒ tƒttƒ ksvJ ‚t ttƒttƒ tƒttƒ ksˆJ ‚t ttƒd tƒttƒks—J ‚t ttƒd tƒttƒ ks§J ‚t tttd ƒ tƒtttd ƒttd ƒ ƒd ksÄJ ‚t ttƒtttƒƒ tƒttttƒƒtttƒƒ ƒ ksâJ ‚t tdt ƒttƒ tƒt tdt ƒ ksúJ ‚t tdt ƒttƒ tƒdtttƒƒ dtttƒd ƒ  dttƒd   ks$J ‚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ssJ ‚| t¡|   t¡ ¡ dks„J ‚ttƒtttd ƒƒ} }t | tƒ|ks›J ‚| t¡|   t¡ ¡ dks¬J ‚d S )NrS   rZ   éýÿÿÿr   )rB   r%   rM   r!   r&   r   r$   r#   r"   rR   r   r   r   r   r   r    r   Úrewriter   Úsimplifyr   rO   rP   rP   rQ   Ú!test_manualintegrate_trigonometryW   s2    &(<&$ :<02
ÿ""&rf   c                   C   sæ  t ttƒd ttƒ tƒttƒd d ksJ ‚t ttƒd ttƒd  tƒtd tdt ƒd  ks4J ‚t ttƒttƒd  tƒttƒd  d ksLJ ‚t ttƒd ttƒd  tƒttƒd d ttƒd d  ksmJ ‚t ttƒd ttƒ tƒttƒd d ttƒ ksˆJ ‚t ttƒttƒd  tƒttƒd d ksŸJ ‚t ttƒd ttƒ tƒttƒd  d dttƒd  d  ttƒ ksÅJ ‚t ttƒd ttƒd  tƒttƒd  d dttƒd  d  ttƒd d  ksñJ ‚d S )	NrS   rZ   é   rV   é    r_   rU   é   )rB   r%   rM   r!   r&   r$   r"   r#   rP   rP   rP   rQ   Útest_manualintegrate_trigpowersv   s    .ÿ0ÿ6.,ÿ4ÿrj   c                  C   s  t ttƒdtdt ƒ  tƒtttƒƒksJ ‚t dddtd    tƒtdt d ƒd ks0J ‚t dddtd    tƒttƒd ksEJ ‚t ddtd   tƒttd ƒd ksZJ ‚t dddtd    tƒtdt ƒd ksqJ ‚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ÈJ ‚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sJ ‚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\J ‚t dddtd    tƒttƒd ksrJ ‚t dt	t
td    tƒtttt	t
 ƒ ƒt
tt	t
 ƒ  ks”J ‚t dtdtd  ƒ tƒttƒks¨J ‚t dtddtd   ƒ tƒttƒd ksÀJ ‚t dtddtd   ƒ tƒtdt ƒksØJ ‚t dtddtd   ƒ tƒtttddƒ ƒd ksõJ ‚t dttd d ƒ tƒttƒks	J ‚t dttd d ƒ tƒttd ƒksJ ‚t dtdtd  d ƒ tƒttƒd ks7J ‚t dtdtd  d ƒ tƒtdt ƒd ksQJ ‚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s‰J ‚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ºJ ‚t dttd d ƒ tƒtdt dttd d ƒ  ƒksÚJ ‚t dttd d ƒ tƒtdt dttd d ƒ  ƒksúJ ‚t dtdtd  d ƒ tƒtdt dtdtd  d ƒ  ƒd ks J ‚t dtdtd  d ƒ tƒtdt dtdtd  d ƒ  ƒd ksFJ ‚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ƒJ ‚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ÀJ ‚t ttƒtƒtttƒ tdtd  ƒ ksØJ ‚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J ‚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swJ ‚t ttƒtƒtttƒ tdtd  ƒ ksJ ‚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ÂJ ‚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s3J ‚t ttƒtƒtttƒ ttd d ƒd  ksMJ ‚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{J ‚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´J ‚t ttƒtƒtttƒ tdttddtd   ƒ  tƒ ksÕJ ‚t tt	t ƒtƒttt	t ƒ tdttddt	d td    ƒ  tƒt	  ks J ‚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s1J ‚t ttƒtƒtttƒ tdttddtd   ƒ  tƒ ksRJ ‚t tt	t ƒtƒttt	t ƒ tdttddt	d td    ƒ  tƒt	  ks}J ‚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®J ‚t ttƒtƒtttƒ ttd d ƒd  ksÈJ ‚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üJ ‚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s4J ‚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s¢J ‚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sJ ‚d S )NrT   rS   rV   r[   rZ   rU   é   ÚaT©ÚrealÚbr   rW   rg   é   )r   Téþÿÿÿ)rB   r   rM   r    r   r   r   r   r   rl   ro   r   r	   r   r   r   r
   r   r?   r   r   rA   )ÚraÚrbrP   rP   rQ   Ú test_manualintegrate_inversetrigˆ   sà   .2**.0Dÿÿ8Dÿ
ÿ(<ÿ
ÿ,D(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s6J ‚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sxJ ‚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ÈJ ‚d S )Nrk   rS   r[   rZ   rV   rc   rT   é   é}   é   r_   éûÿÿÿri   é1   iÅÑ·iÁöW )	rB   r   rM   r   r   rA   r	   r   ÚHalfrP   rP   rP   rQ   Ú&test_manualintegrate_trig_substitutionê   s*   (ÿÿ  &ÿÿÿ&ÿþþÿr{   c                  C   sˆ   t ttƒtt ƒ t tƒtt ƒ ttƒ ksJ ‚tdƒ} t | tƒ| t ƒ t tƒt| t ƒt tƒ t| tƒt tƒ ksBJ ‚d S )NrJ   )rB   r   rM   r-   r   r?   ©rJ   rP   rP   rQ   Ú)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J ‚t ddtd   tƒttd ƒd ttd ƒd  ks;J ‚d S )NrT   rV   rS   rW   )rB   rM   r   rP   rP   rP   rQ   Ú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 )
NrV   rS   rZ   rT   rg   iðÿÿÿr_   r[   i÷ÿÿÿ)r   rM   r   r
   r0   rR   r1   r	   r5   r-   r%   r2   r!   r3   r,   r/   r   r+   r   r.   r   r4   r>   r*   r)   rO   rP   rP   rQ   Ú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J ‚t ttd dt  d tƒtƒtttd dt  d tƒƒks@J ‚t tttƒttttƒtƒtttƒtttƒksXJ ‚d S )NrS   rZ   )rB   r
   r   rM   r\   r?   r%   rP   rP   rP   rQ   Ú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sJJ ‚t ttd d dƒdttd d dƒ ƒ tttƒtƒtttƒ ksnJ ‚tttdƒ tƒtd d ksJ ‚tttdƒ tƒdksŒJ ‚ttttƒ tƒtd ttƒ d ks¡J ‚tttt ƒ tƒtd tt ƒ d ks¸J ‚ttdt d ƒtƒtd tdt d ƒ ksÑJ ‚ttttƒ tƒtd ttƒ d ksæJ ‚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J ‚t
dƒ} ttd	t ƒtdt d	 ƒ tƒttd	 ƒ tt	d
dƒƒ tdt td	ƒ ƒ ksIJ ‚tt| t ƒtdt |  ƒ tƒt| t	ddƒ ƒtt|  ƒ tdt |  ƒ kstJ ‚d S )NrZ   rS   r   rT   Trq   rV   r\   ri   é   )rR   r(   rM   r'   rB   rl   ro   r   r   r	   r   r%   r!   r   )r\   rP   rP   rQ   Útest_manualintegrate_Heaviside0  s.   & 0ÿ*"*.2*$8
ÿ .
ÿ ,ÿr‚   c                  C   sn  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 ]%}z| | |¡}W n	 tyP   Y q=w | | |¡ t¡|  ¡ dksbJ ‚q=t| tdt d ¡ }t|tƒ}d	D ]}| | |¡ t¡| | |¡  ¡ dksJ ‚qvt d
ƒ}	tt|jƒd ƒD ]}
t|jƒ}|	||
< tt|j|Ž |	ƒtƒs³J ‚q›q4d S )NÚnri   r_   rZ   )rq   rW   r   rT   rZ   r_   rg   r   rS   rT   )rS   rV   ri   Út)r   r	   r;   rM   r9   r7   r8   r=   r:   r<   r6   rB   ÚsubsÚ
ValueErrorr   r   ÚrangeÚlenÚargsÚlistÚ
isinstanceÚfuncr?   )rƒ   rl   ro   ÚpolysÚpÚintegralÚdegÚp_subbedÚqr„   ÚiÚnew_argsrP   rP   rQ   Ú$test_manualintegrate_orthogonal_polyH  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sTJ ‚| t||ƒ ¡  t | t|| ƒ ksiJ ‚t||ƒ 	t
¡rsJ ‚d S )Nzr x phirƒ   T)ÚintegerÚpositiverS   rV   )Úmapr   Úsplitr!   r
   rB   r%   r@   ÚtrigsimpÚhasr   )ÚrrM   Úphirƒ   Ú	integrandÚlimitsrP   rP   rQ   Útest_issue_6799f  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J ‚d S )NrT   rW   T)rB   rM   r\   r   r   r   rP   rP   rP   rQ   Útest_issue_12251s  s   &ÿr¡   c                   C   sr   t ttttd  ƒƒtƒtttd  ƒksJ ‚ttttd ƒ tddt ttƒ tttd  ƒ d ks7J ‚d S )NrS   rV   F)Úrisch)	rB   r   r   rM   r@   r   r   r
   r0   rP   rP   rP   rQ   Útest_issue_3796x  s   .Dr£   c                   C   sŠ   t ttƒttƒ tddttƒttƒ d ttƒttƒ d  ks#J ‚t ttƒttƒ tddttƒd d ttƒd  d fv sCJ ‚d S )NT©ÚmanualrS   )r@   r   rM   r%   r!   rP   rP   rP   rQ   Ú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s%J ‚t| |t  tƒtt| |t  t| ƒ tt| ƒdƒf|t dfƒ| t|dƒftdfƒksTJ ‚tt|t ƒtƒtt|t ƒ| t|dƒftdfƒksqJ ‚t ddd} t| d t tƒ| d t t| d ƒ ksŽJ ‚t ddd} t| d t tƒtks¡J ‚t dƒ} t ddd}t| |t  tƒt| |t  t| ƒ tt| ƒdƒf|t dfƒ| ksÐJ ‚t ddd} t| d |t  tƒ| d |t  |t| d ƒ  ksóJ ‚t d	dd
}t dƒ}td||td    tƒttt|| ƒ ƒ|t|| ƒ  ksJ ‚t ddd
}td||td    tƒttt| ƒtd| ƒ  ƒ|t| ƒ td| ƒ  ksQJ ‚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s®J ‚tdtd d tdtd  d ƒ  tƒt	dtd d tdtd  d ƒ  tƒksÛJ ‚tdt|t  t|d    tƒt	d|t  |d t  t  tƒksJ ‚d S )Nr\   rƒ   r   T)r—   rT   )Úzero)Únonzerorl   )Únegativero   rS   rW   rV   )
r   rB   rM   r   r   r   r   r    r   r?   )r\   rƒ   rl   ro   rP   rP   rQ   Útest_issue_6746„  sp   "
ÿ 
þýý
û
ÿ.*ÿ
ÿÿ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>J ‚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|J ‚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½J ‚d S )NrS   rT   )rB   r   rM   r   r   r?   r   r    rP   rP   rP   rQ   Ú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s)J ‚tttdt ƒttƒ tƒƒr:J ‚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‡J ‚d S )NrS   r_   rZ   rV   rg   rT   )rB   r%   rM   r   r!   rF   rE   r?   rP   rP   rP   rQ   Ú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r4| t¡| ks6J ‚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ŒJ ‚d S )NrV   rk   é   é€   é!  éð   )r!   rM   r   r%   rB   r   rO   rP   rP   rQ   Ú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]J ‚d S )
NrV   rZ   rk   rS   é   rg   rU   r_   rT   )rB   rM   r    rP   rP   rP   rQ   Ú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 ks!J ‚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sfJ ‚t ttt ƒtt	t ƒ tƒdtt
ddƒ  tttt ƒttƒ ƒ 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ºJ ‚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sEJ ‚t ttƒttƒ tƒdtt
ddƒ  ttƒ d dtt
ddƒ  d  ksmJ ‚t ttt t ƒt tƒtdt tttt t ƒtt ƒ ƒ tt ƒ dttt t ƒ  ttdƒfttƒttƒ dfƒks¯J ‚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s,J ‚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s*J ‚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^J ‚t tdt d ƒd t tƒdt d t
ddƒ d dt d t
ddƒ d  ksŠJ ‚t tt
ddƒ ttƒ tƒdtt
ddƒ  ttƒ d dtt
ddƒ  d  ksµJ ‚t td ttƒ tƒttƒ dtd   ddtd    ksÖJ ‚t ttƒtd ddt    tƒttƒtddt  ƒ ttddt  ƒt tƒ ksJ ‚d S )NrS   ÚcTrm   r   rV   rZ   r[   r\   Úzrl   ro   rq   rT   r_   é   ru   rc   rW   )rB   rM   r´   r    r   r   r   r   r\   rµ   r	   rl   ro   r   r   r   r?   )ÚrcÚryÚrzrr   rs   rP   rP   rQ   Útest_issue_10847Ï  s    B&0ÿÿÿD$ÿÿÿ2Fÿÿþ$þý
ÿPb
ÿ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sJ ‚t tttƒ t¡ t¡tƒttttƒtƒks0J ‚d S rL   )rB   rJ   rM   r\   r   r?   r   rP   rP   rP   rQ   Útest_issue_12899  s   04r»   c                   C   s2   t tttddfƒtƒttttddfƒ ksJ ‚d S )NrT   rS   )rB   r?   r\   rM   rP   rP   rP   rQ   Ú#test_constant_independent_of_symbol  s   ÿr¼   c                   C   s´   t tdt ƒtƒtdt ƒ d ksJ ‚t ttƒtdt ƒ tƒdttƒd  d ks-J ‚t tdt ƒttƒ dttƒ  tƒdtttƒd ƒ ttƒd  dttƒ  ksXJ ‚d S )NrS   rq   rZ   rT   )rB   r%   rM   r!   r   rP   rP   rP   rQ   Útest_issue_12641  s
   (2$*ÿr½   c                   C   s4   t ttƒttƒd  tƒttƒd  d ksJ ‚d S )Nr_   rU   )rB   r%   rM   r!   rP   rP   rP   rQ   Útest_issue_13297  s   4r¾   c                   C   sB   t dtttd ƒ  tttd ƒd ƒtttd ƒd ƒ ƒ d S )NrT   )rR   rM   r   r   rP   rP   rP   rQ   Útest_issue_14470  s   Br¿   c                  C   sÐ  t ttƒtttƒƒ tƒtttƒƒksJ ‚t tdt ƒtttƒƒ tƒttƒtttƒƒ tttƒƒ ks6J ‚t tdt ƒtttƒƒ tƒ} |  t¡rLJ ‚|  t¡tdt ƒtttƒƒ ks_J ‚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æJ ‚d S )NrS   é
   c                 S   s   g | ]
}t t|t  ƒ ‘qS rP   )rM   r   )Ú.0ÚkrP   rP   rQ   Ú
<listcomp>%  s    z#test_issue_9858.<locals>.<listcomp>rT   rg   ri   rU   r_   rV   rZ   ry   é$   ru   rk   r[   )
rB   r   rM   r!   r%   r›   r?   r   Úsumr‡   )ÚresrP   rP   rQ   Útest_issue_9858  s<   *ÿ&Nÿÿ
ÿÿÿþþþþþÿrÇ   c                  C   s”   t ttd d  tƒttd ƒd ksJ ‚t td td d  tƒttd d ƒd ks.J ‚td	td  d d  } t | tƒ t¡ ¡ | ksHJ ‚d S )
NrV   rT   rS   rU   ru   rZ   r_   rw   r[   )rB   rM   r    r   Úfactorr|   rP   rP   rQ   Útest_issue_8520+  s   *2 rÉ   c                      sŽ   t dƒ\‰‰tˆƒtˆƒ ‰ tˆ tˆƒˆƒˆttˆƒƒ ks J ‚tˆ tˆƒˆƒtˆƒˆ ks0J ‚tt‡ ‡fdd„ƒ tt‡ ‡‡fdd„ƒ d S )Nzx yc                      s
   t ˆ ˆƒS rL   )rG   rP   )ÚexprrM   rP   rQ   Ú<lambda>:  s   
 z"test_manual_subs.<locals>.<lambda>c                      s   t ˆ tˆƒˆˆƒS rL   )rG   r   rP   ©rÊ   rM   r\   rP   rQ   rË   ;  s    )r   r   r   rG   rH   r†   rP   rP   rÌ   rQ   Útest_manual_subs2  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 )	NrZ   rV   i€ÿÿÿrT   r¯   r°   rk   r­   )r   rM   r!   r	   r%   rR   rO   rP   rP   rQ   Útest_issue_15471>  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sDJ ‚ddt d  dt   d  }t|t ƒdtd
t  d ƒ dtd
t  d
 ƒ  ksmJ ‚d S )Nr_   rS   rZ   rg   rU   r`   é   rT   éE   rV   )rM   rB   r   r   r    r	   )rJ   ÚgrP   rP   rQ   Útest_quadratic_denomE  s   $d:rÒ   c                   C   s"   t ttƒtƒtttƒ ksJ ‚d S rL   )rB   r%   rM   r\   rP   rP   rP   rQ   Útest_issue_22757K  s   "rÓ   c                  C   s0   t ttƒtƒ} | jj}|j|j|j ksJ ‚d S rL   )rE   r&   rM   ÚsubstepÚcontextÚconstantÚother)ÚstepsÚconstant_times_steprP   rP   rQ   Útest_issue_23348O  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s'J ‚t|  ¡ ƒd	ks1J ‚d S )
NrT   rS   rq   rW   Tr¤   rV   rZ   z1.31695789692482)r?   r   rM   Údoitr   Ústrrƒ   )r“   rP   rP   rQ   Útest_issue_23566U  s   (&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ŒJ ‚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_   rZ   rV   rS   rÀ   ri   i7  é   é(   éQ   éˆ   rq   r   TrT   rU   é   r²   rg   r[   r`   )rR   rM   r   r   rB   rl   ro   r   r   r   ÚOner   r    rP   rP   rP   rQ   Ú 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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
ƒ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  ƒ 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t	t
t  ttd   ƒ 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
ƒ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sqJ ‚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ÉJ ‚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dttƒ tt	ttd   ƒ dt t  ƒ dttƒ  ttt	ttd   ƒ d  ttd
ƒftt	ƒt dfƒksRJ ‚ttt	t
t  ttd   ƒtƒttd t
dt   tt	t
t  ttd   ƒ t	d t
d dt   tt
dttƒ tt	t
t  ttd   ƒ  dt t  ƒ ttƒ  ttd
ƒfdt	t
t  tdƒd   dt
  tt
d
ƒftt	ƒt dfƒksÐJ ‚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 )NrT   rS   rZ   rV   r_   r`   rc   é   rU   r   Tri   r[   iùÿÿÿrh   é   ée   rg   é‡   rk   iéÏ  i¬ iåY  i+A  i‰‡¦iQ  iC)  ir+  iÁ  i:§ŠC)rR   r   rM   r   r   r   r   r   rB   rl   ro   r´   r   r   ÚdÚerP   rP   rP   rQ   Ú#test_manualintegrate_sqrt_quadraticm  sl   NRRf$N.ÿ
ÿ(Vÿ(Vÿ(jÿ,$Xÿÿb"ý
ÿ<j
ÿ.*ÿÿfÿ
ÿ 0Zÿÿ,ý
ÿ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 )NrS   rZ   rV   rU   )rR   rM   r$   r&   r   r!   r   rJ   rP   rP   rP   rQ   Útest_mul_pow_derivative•  s   6*6ÿ
ÿÿrì   N)’Úsympy.core.exprr   Úsympy.core.mulr   Úsympy.core.functionr   r   r   r   Úsympy.core.numbersr   r	   r
   Úsympy.core.relationalr   Úsympy.core.singletonr   Úsympy.core.symbolr   r   r   Ú&sympy.functions.elementary.exponentialr   r   Ú%sympy.functions.elementary.hyperbolicr   r   r   r   r   r   r   Ú(sympy.functions.elementary.miscellaneousr   Ú$sympy.functions.elementary.piecewiser   Ú(sympy.functions.elementary.trigonometricr   r   r   r   r   r    r!   r"   r#   r$   r%   r&   Ú'sympy.functions.special.delta_functionsr'   r(   Ú*sympy.functions.special.elliptic_integralsr)   r*   Ú'sympy.functions.special.error_functionsr+   r,   r-   r.   r/   r0   r1   r2   r3   r4   Ú'sympy.functions.special.gamma_functionsr5   Ú#sympy.functions.special.polynomialsr6   r7   r8   r9   r:   r;   r<   r=   Ú&sympy.functions.special.zeta_functionsr>   Úsympy.integrals.integralsr?   r@   Úsympy.logic.boolalgrA   Úsympy.integrals.manualintegraterB   rC   rD   rE   rF   rG   Úsympy.testing.pytestrH   rI   rM   r\   rµ   rX   rƒ   rl   ro   r´   ré   rê   rJ   rR   rY   r]   r^   rb   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ì   rP   rP   rP   rQ   Ú<module>   s”    $80( 

a%	
(
	


2


(