o
    GZŽhœõ  ã                   @   s,  d dl mZ d dl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 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 d d
l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$ d dl%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z, d dl-m.Z.m/Z/ d dl0m1Z1m2Z2m3Z3 d dl4m5Z5m6Z6m7Z7m8Z8m9Z9 d dl:m;Z;m<Z< d dl=m>Z>m?Z? d dl@mAZA d dlBmCZCmDZD d dlEmFZFmGZGmHZHmIZI d dlJmKZK d dlLmMZM d dlNmOZO d dlPmQZQ d dlRmSZS d dlTmUZUmVZV d dlWmXZX e"dƒ\ZYZZZ[Z\Z]Z^e"dd d!Z_d"d#„ Z`d$d%„ Zad&d'„ Zbd(d)„ ZceVd*d+„ ƒZdeVd,d-„ ƒZed.d/„ Zfd0d1„ Zgd2d3„ ZheVd4d5„ ƒZid6d7„ Zjd8d9„ Zkd:d;„ Zld<d=„ Zmd>d?„ Znd@dA„ ZodBdC„ ZpdDdE„ ZqdFdG„ ZrdHdI„ ZsdJdK„ ZtdLdM„ ZudNdO„ ZvdPdQ„ ZwdRdS„ ZxdTdU„ ZydVdW„ ZzdXdY„ Z{dZd[„ Z|d\d]„ Z}d^d_„ Z~d`da„ Zdbdc„ Z€ddde„ Zdfdg„ Z‚dhdi„ Zƒdjdk„ Z„dldm„ Z…dndo„ Z†dpdq„ Z‡drds„ Zˆdtdu„ Z‰dvdw„ ZŠdxdy„ Z‹dzd{„ ZŒd|d}„ Zd~d„ ZŽd€d„ Zd‚dƒ„ Zd„d…„ Z‘d†d‡„ Z’dˆd‰„ Z“dŠd‹„ Z”dŒd„ Z•dŽd„ Z–dd‘„ Z—d’d“„ Z˜d”d•„ Z™d–d—„ ZšeVd˜d™„ ƒZ›dšd›„ Zœdœd„ ZdždŸ„ Zžd d¡„ ZŸd¢d£„ Z d¤d¥„ Z¡d¦d§„ Z¢d¨d©„ Z£dªS )«é    )ÚSum)ÚAdd)ÚBasic)ÚTuple)Ú	unchanged)ÚFunctionÚdiffÚexpand)ÚMul)ÚMod)ÚFloatÚIÚRationalÚooÚpiÚzoo)ÚEqÚGeÚGtÚNe)ÚS)ÚSymbolÚsymbols)Ú	factorial)ÚAbsÚadjointÚargÚ	conjugateÚimÚreÚ	transpose)ÚexpÚlog)ÚMaxÚMinÚsqrt)Ú	PiecewiseÚpiecewise_foldÚpiecewise_exclusiveÚ	UndefinedÚExprCondPair)ÚcosÚsin)Ú
DiracDeltaÚ	Heaviside)ÚKroneckerDelta)ÚIntegralÚ	integrate)ÚAndÚITEÚNotÚOr)ÚMatrixSymbol)Úsrepr)ÚContains)ÚInterval)Úsolve)ÚraisesÚslow)Úlambdifyz	a:d, x, yÚzT)Znonzeroc                  C   s‚  t ttdk fƒ d¡sJ ‚tt tttdk ƒtddƒƒsJ ‚t ttdk fdƒt tttdk ƒtddƒƒks5J ‚t ttdk fddƒt ttdk fdƒksJJ ‚t ttdk fdddd	kfƒt ttdk fƒksbJ ‚t ttdk fdtdk fdƒt ttdk fdƒks{J ‚t ttdk fdtd	k fdƒt ttdk fdƒks”J ‚t ttdk fttd	k fdƒt tttdk td	k ƒfdƒks²J ‚t ttdk fttd	k ftdfƒtksÆJ ‚t tdfƒtksÐJ ‚ttd
d„ ƒ t d	t tdk ftdfƒt d	t tdk ftdfdd  krt d	t tdk fƒksJ ‚ J ‚t tdfƒtksJ ‚ttdd„ ƒ t tdfƒtks$J ‚ttdd„ ƒ ttdd„ ƒ ttdd„ ƒ t dƒt	dd	ƒksEJ ‚t dtdk fdƒt
k } t d| fƒt dttdk t
dkt
d	kƒfƒksiJ ‚t dtdkfd	ttdktdkƒfƒt dtdkfd	tdkfƒks‹J ‚t dtdkfd	tdk tdk@ fƒt dtdkfƒks§J ‚t dttdktdktttjƒƒfdƒ}| tt¡dksÅJ ‚| td	¡dksÐJ ‚| td¡dksÛJ ‚t dtdk ftd	 tdk fttƒtdkfƒ}t dtd	 dk ftd td	 dk fttd	 ƒtd	 dkfƒ}| ttd	 ¡|ksJ ‚| td¡dks'J ‚| td¡dks2J ‚| td¡tdƒks?J ‚t dttk fdtd	t k fdtd	t kfƒ}t dttdƒfdt dfƒ}t dttdƒfd	dt d	kfƒ}| td	¡dks~J ‚| td¡dks‰J ‚| td¡dks”J ‚| td¡dksŸJ ‚| td¡dksªJ ‚tdtd\}}}	t |tƒtdk f|tƒ|	tƒ d	 tdkfƒ}
t |tƒtdk f|tƒ|	tƒ d	 tdkfƒ}| ||¡|
ksìJ ‚t dttdƒfdƒ td¡dksÿJ ‚t dttdƒfdƒ td¡dksJ ‚t dttt
ƒfdƒ tt
¡dks%J ‚t dtttƒfdƒ tt¡dks8J ‚t dtttƒttƒƒfdƒ tt¡t dtttƒttƒƒfdƒks[J ‚t dtttƒt
 dƒfdƒ}| t
d¡t dtttƒdƒfdƒks~J ‚t dt
dk fdtdk fdttdƒfdƒ td¡t dt
dk fdƒks¢J ‚t dttd	 dƒfd	tdk fƒ tt¡dks»J ‚t ttdkfƒ}tddd}| t|¡tksÔJ ‚| ¡ t dtdk ftd	 tdk fttƒdfƒksïJ ‚|jtdid dksüJ ‚|jtdid dks	J ‚|jtdid tdƒksJ ‚|jtdid tks%J ‚t tttddfƒtdk fƒ}| ¡ t tjtdk fƒksCJ ‚t}t| }t dtdk fd	t tdk fdt tdkfƒ}t| | }t|tƒ|ksoJ ‚t|| tƒ|ks{J ‚t| |ks„J ‚t| | |t|  ks“J ‚|| || ksžJ ‚|| || ks©J ‚|| ||  ksµJ ‚t dtdk fdtd	  tdk fdtd	  tdkfƒ}|d	 |ksØJ ‚tt
 d	 }tt
d	  d! }t |tdk f|tdkfƒ}| td¡| td¡ | td¡ | td¡ }| tdd¡dksJ ‚| tdd¡|ks#J ‚t |tdk f|dfƒ}| tdd¡dks:J ‚| tdd¡| ksGJ ‚| tdd¡| td¡| td¡ ks]J ‚| tdd¡|ksiJ ‚| td d¡| td¡ksyJ ‚| tdd ¡| td¡ ksŠJ ‚|  ¡ t t tdk ftd! d! t!dd!ƒ tdk ftttƒ t t!dd!ƒ dfƒks¶J ‚t ttdk ftd	 dtkftd!tk fƒ}t |tdd	fƒt!d"dƒksÚJ ‚t |td	dfƒt!ddƒksêJ ‚t dtdk fdtdk fdtd	k fdtd!k fdƒ}t |tt" t"fƒd	ksJ ‚t ttd#k ftd	 tdkftdtk fƒ}t |tdd	fƒtks1J ‚t#|t ƒr=|j$du s?J ‚d S )$Ng      ð?é   r   T©r   T©r?   T)r   Féÿÿÿÿé   c                   S   s   t ƒ S ©N©r&   © rF   rF   ú^/var/www/auris/lib/python3.10/site-packages/sympy/functions/elementary/tests/test_piecewise.pyÚ<lambda>8   s    z!test_piecewise1.<locals>.<lambda>F©Úevaluatec                   S   s   t tƒS rD   ©r&   ÚxrF   rF   rF   rG   rH   >   s    c                   S   s   t tdfƒS ©NrC   rK   rF   rF   rF   rG   rH   @   ó    c                   S   s   t ttd fƒS rM   rK   rF   rF   rF   rG   rH   A   s    c                   S   s   t dgdfƒS ©Nr?   TrE   rF   rF   rF   rG   rH   B   ó    ))r?   rC   T©rC   Té   é   é   éûÿÿÿé
   ç        zf,g,h)ÚclsÚn)Únegativeg      ð¿éþÿÿÿ)Úsubsé   é   éöÿÿÿ)%r&   rL   Úhasr   r*   r5   r;   Ú	TypeErrorr)   r   Úyr3   r2   r8   r   ZIntegersr\   r   r"   r   r   r   r>   r!   r+   r   Úevalfr0   ÚdoitÚHalfr   Z_eval_intervalr1   r   r   Ú
isinstanceZis_commutative)ÚcondZpwiseÚpZp_x2Úp2Úp3Úp4ÚfÚgÚhÚpfZpgÚp5Úp6rY   Zf_intÚfpZdpZfp_dxZdp2Úf1Úf2ZpevalZpeval_intervalZpeval2rF   rF   rG   Útest_piecewise1$   s   
ÿÿÿÿÿÿ(
ÿþ

ÿ"
ÿ 
ÿþ,<, ..&&&&"
ÿ*&
ÿ26 ,4ÿ
ÿ
ÿ
ÿ, "ý(  0( ru   c                  C   s.   t ttdk ftdfƒ} | jttthksJ ‚d S )Nr   T)r&   rL   Úarb   Zfree_symbols©rl   rF   rF   rG   Útest_piecewise_free_symbols¾   s   rx   c                  C   s²  t ddd\} }t| d d | dkfdƒ}t|| ddfƒtdd	ƒks$J ‚t| d
 d
 | dkf|dfƒ}t|| ddfƒtdd	ƒksBJ ‚t|| dd
fƒtddƒksQJ ‚|t| d
 d
 | dkf|| dk fƒksfJ ‚t| d
 d
 d| kf|| dk fƒ}t|| ddfƒtdd	ƒks†J ‚t|| dd
fƒtddƒks•J ‚|t| d
 d
 d| kf|dfƒks¨J ‚t| d
 d
 d| kfd| dfƒ}t|| ddfƒtdd	ƒksÈJ ‚t|| dd
fƒtddƒks×J ‚d S )Núx yT©ÚrealrC   r   rA   r[   é   r]   r^   rT   é+   rR   iCýÿÿé   i_ýÿÿ)r   r&   r1   r   )rL   rb   rl   rm   rF   rF   rG   Útest_piecewise_integrate1Ã   s   *"&""r   c                  C   s2  t dtdkfdttdƒfdtdk fƒ} t| tddfƒdksJ ‚t dtt dk fdƒ} t| tt dfƒtdtƒ ks;J ‚|  td¡ tt df¡dksLJ ‚t| tdt fƒtdtƒks\J ‚t| tdtfƒtdtƒ t ksnJ ‚t| tt dfƒtdtƒ d ksJ ‚t| tt tfƒt t ks‘J ‚t dtdk fttdkfdƒ} |  ttdf¡}|  tdtf¡}dt	j
d	fD ]"}|  t|df¡| t|¡ksÇJ ‚|  td|f¡| t|¡ks×J ‚qµ|t tdtdtƒƒd	  d	 t	j
 tdk ft d d
fƒksøJ ‚|t tdtdtƒƒd	 d	 t	j
 tdk ftd d
fƒksJ ‚d S )Nr?   r   rB   r@   éýÿÿÿr]   é*   rA   rC   T)r&   rL   r   r1   rb   r   r$   r\   r#   r   re   )rm   Úgy1Úg1yÚyyrF   rF   rG   Útest_piecewise_integrate1bÚ   s.   &"" $&  "&
þ$
þr…   c                  C   sž  t ddd} tdt tddƒ t¡fdt tddƒ t¡fdƒ}| t| df¡}| td| f¡}| tddf¡| | d¡ks@J ‚| tddf¡| | d¡ksPJ ‚| tddf¡| | d¡ks`J ‚| tddf¡| | d¡kspJ ‚| td	df¡| | d	¡ks€J ‚| tdd	f¡| | d	¡ksJ ‚t| t¡ƒ 	¡ td| dkf| d	  d	 |  t
j | dkf| d	 d	 |  t
j | dk fdƒksÁJ ‚t| t¡ƒ 	¡ td| dkf| d	 d	 |  t
j | dkf| d	  d	 |  t
j | dk fdƒksòJ ‚|ttdtd| ƒƒd	  d	 tdtd| ƒƒ tdtd| ƒƒd	  t
j | dk fdƒks J ‚|ttdtd| ƒƒd	 d	 tdtd| ƒƒ tdtd| ƒƒd	  t
j | dk fdƒksMJ ‚d S )
Nrb   Trz   r?   r   rB   r@   r[   rC   )r   r&   rL   r9   Úcontainsr1   r\   r'   ÚrewriteÚsimplifyr   re   r$   r#   ©rb   rm   r‚   rƒ   rF   rF   rG   Útest_piecewise_integrate1caô   sd   ý      
üÿ
üÿ(ÿÿþü&ÿÿþürŠ   c                  C   sœ  t ddd} tdttdktdkƒfdt tdkfdt dfƒ}| t| df¡}| td| f¡}| tddf¡| | d¡ks?J ‚| tddf¡| | d¡ksOJ ‚| tddf¡| | d¡ks_J ‚| tddf¡| | d¡ksoJ ‚| tddf¡| | d¡ksJ ‚| tddf¡| | d¡ksJ ‚t| t¡ƒ ¡ td| dkf| d  d |  t	j
 | dkf| d d |  t	j
 | dk fd	ƒksÀJ ‚t| t¡ƒ ¡ td| dkf| d d |  t	j
 | dkf| d  d |  t	j
 | dk fd	ƒksñJ ‚|ttdtd| ƒƒd  d tdtd| ƒƒ tdtd| ƒƒd  t	j
 | dk fd	ƒksJ ‚|ttdtd| ƒƒd d tdtd| ƒƒ tdtd| ƒƒd  t	j
 | dk fd	ƒksLJ ‚d S )
Nrb   Trz   r   rB   r?   r[   rC   r@   )r   r&   r5   rL   r1   r\   r'   r‡   rˆ   r   re   r$   r#   r‰   rF   rF   rG   Útest_piecewise_integrate1cb  sd   
ý      
üÿ
üÿ	(ÿÿþü&ÿÿþür‹   c               
   C   s  ddl m}  ttttƒ}tdttk fdttkfdƒ}| 	|¡}|tt dt  dt
ttttƒƒ  t
tttttƒƒ ttk fdt t dt
ttttƒƒ  t
tttttƒƒ dfƒks]J ‚| dƒD ]}ttttttf|ƒƒ}| |¡ 	| |¡¡| |¡ks€J ‚qad S )	Nr   ©Úpermutationsr?   rC   ©r]   Tr[   T)r?   rC   r]   rT   )Ú	itertoolsr   r   rL   ÚcÚdr&   rv   Úbr1   r$   r#   ÚdictÚzipr\   )r   Úlimrh   ÚqÚvÚrrF   rF   rG   Útest_piecewise_integrate2L  s   
:4
þ&þr™   c                   C   s*   t dtdk fdƒ ttdf¡dksJ ‚d S )Nr?   rT   r@   r€   )r&   rL   r1   r   rF   rF   rF   rG   Útest_meijer_bypassY  s   *rš   c                  C   s  ddl m}  tddf}d}tdttkfdttkfdƒ}| |¡}| |ddD ]\}}ttttf||fƒƒ}| 	|¡| 	|¡ |¡ksDJ ‚q&| 	td	¡ 	td¡d
ksSJ ‚tdttkfdttk fdƒ}| |¡}| |ddD ]\}}ttttf||fƒƒ}| 	|¡| 	|¡ |¡ksŠJ ‚qld S )Nr   )Úcartesr^   )r[   rB   r   r?   rC   r^   rR   rS   r?   rC   r@   )ÚrepeatrT   rS   )
Zsympy.utilities.iterablesr›   rL   r&   rv   r’   r1   r“   r”   r\   )r›   r•   ÚNrh   ÚansÚiÚjÚrepsrF   rF   rG   Ú/test_piecewise_integrate3_inequality_conditions_  s   

 
 þr¢   c                  C   sd  t ddd} t ddd}t ddd}t ddd}tdt|| k ||kƒfdƒ}td|| k fd||kfdƒ}td||kfd|| k fdƒ}td|| k fd	||k fd
ƒ}td||kfd	|| kfd
ƒ}td	t| |k ||k ƒfd
ƒ}	t|t |ƒ}
||||||	fD ]B}| |
¡}tdƒD ]6}| d	|d||i}| |¡| |¡ |
 |¡¡ks¢J ‚| d|d	||i}| |¡| |¡ |
 |¡¡ks¼J ‚q†q{t||tƒ}
||||||	fD ]C}| |
¡}tdƒD ]7}| d	|d||i}| |¡| |¡ |
 |¡¡ksóJ ‚| d|d	||i}| |¡| |¡ |
 |¡¡ksJ ‚q×qÌtd|t	| |ƒkf|t	| |ƒ ||kf|t	| |ƒ dfƒ}||||fD ]}| |¡|ks?J ‚q3| |¡td|| k f|  | |t
| |ƒkf|  t
| |ƒ dfƒkseJ ‚|	 |¡td|| kf|  | |t
| |ƒkf|  t
| |ƒ dfƒks‰J ‚td|| k ftj||kfdƒ}ttj||kfd|| k fdƒ}td|| k fd	||k ftjdfƒ}ttj||kfd	|| kfd
ƒ}td	t| |k ||k ƒftj||kfd
ƒ}	t|t |ƒ}
|||||	fD ]F}| |
¡}tdƒD ]9}| d	|d||i}| |¡| |¡ |
 |¡¡ksJ ‚| d|d	||i}| |¡| |¡ |
 |¡¡ks,J ‚qôqéd S )Nrv   Trz   r’   rL   rb   r   rA   r?   r@   r^   r]   )r   r&   r5   r2   r   r   r1   Úranger\   r$   r#   r   re   )rv   r’   rL   rb   Úp0Úp1ri   rj   rk   rp   r•   rh   rž   rŸ   r¡   rF   rF   rG   Ú-test_piecewise_integrate4_symbolic_conditionsy  sx   
$&ü
$(üý

ý

ý"(
&*üþr¦   c                  C   sP   t dttdƒftt dfƒ} t| tddfƒt dttdƒfdt dfƒks&J ‚d S )Nr   Tr?   r]   rT   )r&   r   rb   rL   r1   ©rh   rF   rF   rG   Ú0test_piecewise_integrate5_independent_conditionsº  s   4r¨   c                  C   s  t dttt dkdt dt  dkB dttt dkdt d dk dt dt  dkƒƒft dttt dkddt dt  dkƒfdt dtt dkftdfƒ dfƒdfƒdt dttt dkdt dt  dkB dttt dkdt d dk dt dt  dkƒƒft dttt dkddt dt  dkƒfdt dtt dkftdfƒ dfƒdfƒ  } t| ƒt dtt tjktt dkB fdt d tt dkfdt dt  dfƒks×J ‚t| dkƒ t¡ttt tjktt dkB dttt dkdt d dkdt dt  dkƒƒks
J ‚d S )Nr   r?   rC   FrB   TrT   )r&   r3   rL   rb   r'   r   re   r‡   r§   rF   rF   rG   Útest_issue_22917¿  s4   &.ÿ( ÿÿþ(.ÿ( ÿÿþü$
þ,.ÿr©   c            
      C   s‚  t td d td  ttdt  td  dƒfdt d dfƒ} |  ¡ t tttdƒfdtd  dfƒks6J ‚t ttttdƒttt dƒƒfdƒ ¡ t dtttdƒttdƒƒfdƒks\J ‚t dt ttƒ tt	ƒtt	 t ƒ  tt	dƒtt	 t dƒ@ fdttƒ tt	ƒtt	 t ƒ  tt	dƒtt	 t dƒ@ fdƒ ¡ t dt tttdƒtt	dƒƒfdtttdƒtt	dƒƒfdƒks¾J ‚dtttdƒt
t	dƒƒftdff}t |Ž  ¡ t |Ž ksÛJ ‚dttdƒfttƒt dff}t |Ž  ¡ t |Ž ksöJ ‚t dt	 tttdƒtt	dƒƒftdfƒ ¡ tksJ ‚tdttdƒfttƒd t dfƒ}tttƒ d }tdƒ}t |Ž  ¡ |ks:J ‚t | t|tƒ¡Ž  ¡ | t|tƒ¡ksQJ ‚td	dd
}tddd
}tddd}t | d|  td| dƒf|dd|   |d| d   | d|   dfƒ}| ¡ | d|  ks™J ‚t d|dk |dk @ |dk @ f|d d |d  |d  |dk |dk @ ftj|d  d|  |d  |dk |dk @ |dk @ f|d | |d d  tj|d  d|    |dk |dk @ |dk @ |dk @ f|d tj|d  d|  |d d |d    |dk |dk @ f|d | |d d  tj|d  d|    |dk |dk @ |dk @ fd|dk |dk @ f|d d |d  |d  |dk f|d | |d d  tj|d  |d    |dk |dk |dk B @ ftj|d  d|  |d  |dk |dk |dk B @ fdƒt d|dk |dk @ |dk @ fd| |d tj  |d  |dk |dk @ fd| d|d   d|  |dk |dk @ |dk @ fd| d| |d tj  d|d  d|    |dk |dk @ |dk @ |dk @ fd| d|d  d|  |d tj |d    |dk |dk @ fd| d| |d tj  d|d  d|    |dk |dk @ |dk @ fd|dk |dk @ fd| |d tj  |d  |dk fd| |d|d   d| |d tj    |dk |dk |dk B @ fd| d|d   d|  |dk |dk |dk B @ fdƒ } |  ¡ t d|dk f|d |d d  d |dk fd|d  d d|d  d  d |dk fd|d  d d|d  d  d |dk fd| |d d  d |dk fdƒksôJ ‚t}t dtdkfdtdk fdtdkfƒ ¡ t dtdkfdtdk fdƒksJ ‚t dtdk fdtdk fdƒ ¡ t dtdk fdƒks7J ‚t dtdkfƒ ¡ t dtdkf|dfƒksOJ ‚t dtdkttk @ fƒ ¡ t dtdkttk @ f|dfƒksoJ ‚t dtdk fdtdktdk @ fdƒ ¡ t dtdk fdtdk fdƒks”J ‚t dtdk fdtdktdk@ fdƒ ¡ t dtdk fdtdkfdƒks¹J ‚t dtdk fdtdktdk @ fdƒ ¡ t dtdk fdtdktdk @ fdƒksâJ ‚t dtdk fdtdktdk@ fdƒ ¡ t dtdk fdtdkfdƒksJ ‚t dtdk fdtdktdk@ fdƒ ¡ t dtdk fdtdktdk@ fdƒks0J ‚t ttƒtdktdk@ ftdfƒ ¡ t ttƒtdktdk@ ftdfƒksWJ ‚t dtdktdk @ fdtdktdk @ fƒ ¡ t dtdktdk @ fdtdktdk @ f|dfƒks‰J ‚t dtdktdk@ fdtdktdk @ fƒ ¡ t dtdktdk@ fdtdktdk @ f|dfƒks»J ‚tddd}	t |tdkfdtdk|	tk@ |	t dk@ ft|	d  |	tk|	t dk@ f|	d t tdk|	tk@ fd|	tkf|dfƒ} |  ¡ t |tdkf|	d t |	tkf|dfƒksJ ‚|  |	t	¡ ¡ t |tdkft t	d  ttdt	ƒk fdtt	k f|dfƒks?J ‚d S )NrC   r?   r   rB   TrA   r@   rl   r‘   ©ÚintegerrY   Út©ZpositiverT   r[   r€   r]   r^   rŽ   ÚL)Znonnegative)r&   rL   r   rˆ   r   rv   r2   r’   r   rb   r   r,   r   r   r\   r   r   re   r)   r   r"   r#   )
rh   Úargsrž   rl   r‘   rY   r¬   ÚexprÚnanr®   rF   rF   rG   Útest_piecewise_simplifyÏ  sÔ  .ÿÿÿÿþ&ÿÿÿþýý"&
ÿ$.P(ÿÿÿÿÿÿÿÿ(ÿÿÿ4ÿÿÿÿÿ$ÿÿÿÿ÷	ÿÿ"ÿÿ&ÿÿÿÿÿÿÿ(ÿÿÿÿÿÿÿ ÿÿÿÿö÷6ÿÿÿ,ÿ
ÿÿÿý&
ÿ
ÿÿ 
ÿ"
ÿ"
ÿ""ÿ
ÿ"
ÿ""ÿ
ÿ $
ÿ(ÿÿ
ÿ(ÿÿ
ÿ*ý"ÿ4ÿr²   c                     sb  t t tdkfttdkfƒ} |  ttd ¡‰ tˆ tƒdgks J ‚tˆ d tƒddgks-J ‚t td d tdkfdƒ‰ tˆ tƒdgksDJ ‚t td d tdkfˆ dfƒ}t|tƒddgks^J ‚t td d tdkfˆ tdk fƒ}t|tƒddgkszJ ‚t td d tdkfˆ tdk fƒ}t|tƒdgks•J ‚t td d tdkfˆ dfƒ}t|tƒdgks®J ‚t td d tdkfˆ dfd	ƒ}t|tƒdgksÈJ ‚t td d tdkft d td dkftd td dkfƒ}t|tƒdgksñJ ‚tt td tdkfdt dfƒd ƒd
dgksJ ‚t td d tdkfdƒ‰ tt‡ fdd„ƒ dd„ }t td d ttk ftd dfƒ}t|tƒ}|dd„ |D ƒƒdgksJJ ‚|dd„ |D ƒƒddgksZJ ‚|dd„ |D ƒƒddgksjJ ‚|t dtdkftjdfƒt dtdkftjdfƒt dtdkftjdfƒgks’J ‚t td dtd kfdt dtd kfƒ}t|t tƒt t d t dk ftjdfƒt td tdkftjdfƒgksÏJ ‚t	ddd}t|| tƒ| d |d gksèJ ‚t
dƒ‰ ttˆ tƒ t dtdkfdƒƒˆ tƒƒt d
tdkfdƒgksJ ‚t dtd  tdtk tdk ƒfdƒ‰ tˆ d ƒdtdƒ gks/J ‚d S )Nr   rC   r?   r]   rA   r^   rT   T)rV   FrB   r@   c                      s
   t ˆ tƒS rD   )r:   rL   rF   rw   rF   rG   rH   [  ó   
 z&test_piecewise_solve.<locals>.<lambda>c                 S   s   t tdd„ | ƒƒS )Nc                 S   s
   | t juS rD   )r   ÚNaN©rL   rF   rF   rG   rH   ^  r³   z4test_piecewise_solve.<locals>.nona.<locals>.<lambda>)ÚlistÚfilter)rž   rF   rF   rG   Únona]  ó   z"test_piecewise_solve.<locals>.nonac                 S   ó   g | ]}|  td ¡‘qS )r[   ©r\   rb   ©Ú.0rŸ   rF   rF   rG   Ú
<listcomp>a  ó    z(test_piecewise_solve.<locals>.<listcomp>c                 S   rº   )rC   r»   r¼   rF   rF   rG   r¾   b  r¿   r[   c                 S   rº   )r]   r»   r¼   rF   rF   rG   r¾   c  r¿   rh   r­   rl   rQ   )r&   rL   r\   r:   r;   ÚNotImplementedErrorrb   r   r´   r   r   r   r2   r%   )Úabs2rm   r¸   rh   rž   Zabsxm3rF   rw   rG   Útest_piecewise_solve;  sd   "" &ÿ4"
  ýþþ&&
ÿ$$rÂ   c                  C   s8  t ttdk fddtkfƒ} tt|  ƒt td tdk ftdtkfƒks$J ‚t| |  ƒt dt tdk fddtkfƒks;J ‚tt dtdk fdƒt dtdk fdƒ ƒt dtdk fdƒksZJ ‚t dtdk fttdkfd	ƒ}t dtdk fdt tdkfd	ƒ}d
| d|  } tt| ƒtt tfƒtdt d tddfƒks™J ‚tt dtdkft dtdkfƒ dfƒƒt dtdkfdtdkfƒks¼J ‚tt tttdktdk tdkƒfƒƒt ttdktdk B tdktdkB @ fƒksäJ ‚t dttdƒfd	ƒt ttt t dƒfdtt t dƒfd	ƒ}}tt||ddƒtt||ddƒksJ ‚d S )Nr?   rC   r   rQ   rV   )r_   Té   )iøÿÿÿTr@   rT   Tr[   FrI   )	r&   rL   r'   r1   r   rb   r3   r   r
   )rh   r¥   ri   rv   r’   rF   rF   rG   Útest_piecewise_fold~  s<   ..ÿþ ÿÿ"ÿþ"&ÿ*ÿÿrÄ   c            	      C   s|  t ttƒtdk fdƒ} t dt| dƒf| t| ƒ dfƒ}| tt d ¡dks(J ‚| td¡dks2J ‚| tt d ¡dks?J ‚t dt| dƒfdƒ}t|ƒ}tddƒD ]}| t|¡| t|¡ksbJ ‚qRdt dtdk fd	ƒk }t|ƒ}tdƒD ]}| t|¡| t|¡ks†J ‚qvt dtdk fd	ƒ}t dtdk fd	ƒ}t d||k fdƒ}t|ƒ}tddƒD ]}| t|¡| t|¡ks»J ‚q«d S )
Nr   r@   TrC   r?   rT   rA   rB   rŽ   )	r&   r+   rL   r   r   r\   r   r'   r£   )	r¥   ri   rk   rž   rŸ   Úr1rp   rq   Úp7rF   rF   rG   Ú%test_piecewise_fold_piecewise_in_cond›  s(    ÿrÇ   c                  C   s|   t ttƒtdk fdƒ} t dt| dƒfd|  dfƒ}t dtdktttƒdƒB fdttƒ tdk ftdfƒ}t|ƒ|ks<J ‚d S )Nr   r@   r?   T)r&   r+   rL   r   r   r'   )r¥   ri   rj   rF   rF   rG   Ú'test_piecewise_fold_piecewise_in_cond_2³  s   ýrÈ   c                  C   sê   t dtddddƒ t¡fdƒ} ttdt |  ƒƒ}tdktdk @ }ttdt |  ƒddt dt |ft |fd|fdddksAJ ‚ttdt |  ƒd dt dt |fdƒksXJ ‚|t dt |fdƒkseJ ‚|ttdt |  ƒƒkssJ ‚d S )Nr?   r   FTr@   rI   )r&   r9   r†   rL   r'   r	   )r¥   ri   rg   rF   rF   rG   Útest_piecewise_fold_expand½  s   "ÿÿ rÉ   c                  C   s>   t ttdk ftd tdkftdtk fƒ} | t | jŽ ksJ ‚d S )Nr_   rC   rB   r?   )r&   rL   r¯   r§   rF   rF   rG   Útest_piecewise_duplicateÊ  s   (rÊ   c                  C   s¤   t ttdk ftd dtkftdtk fƒ} t ttdk ftdt ƒdtkftdtk fƒ}| ¡ | ks2J ‚|jdd|ks<J ‚ttt tdtfƒ ¡ } |  ¡ | ksPJ ‚d S )Nr?   rC   rB   r]   F©Údeep)r&   rL   r0   rd   r   rb   r   )r¥   ri   rF   rF   rG   Ú	test_doitÏ  s   (,rÍ   c                  C   s¦   t ttddƒ t¡fdƒ} |  td¡dksJ ‚|  td¡dks!J ‚|  t¡t dtddƒ t¡fdƒks5J ‚t| tƒt dtdkftd d tdkftjdfƒksQJ ‚d S )Nr   r?   r@   g      à¿ç      à?rC   T)	r&   rL   r9   r†   r\   r   r1   r   re   )r¥   rF   rF   rG   Útest_piecewise_intervalÙ  s   (

ýrÏ   c                  C   s$  t dtdk ftjtdkfdƒ} t| ƒt dtdk ftjttdƒfdtdkfddks+J ‚t| d ƒt dtdk ftjttdƒfdtdkfddd ksKJ ‚tt dtdkft dtdkfƒ dfƒƒt dtdkft dtdkftjtdk fdd tdkfddksJ ‚tt dttkfƒƒt dttkftjttkfddks›J ‚tt dttkfƒddt dttkfƒks±J ‚td	dd
\}}t d|dk fddd}t d|dk fd|dkfdd}t ||dk fddd}t ||dk fd|dkfdd}t ||dk fd|dkfdd}t|ƒ|ksJ ‚t|dd|ksJ ‚d S )Nr   rA   r?   FrI   rC   T)Zskip_nanzxr, yrrz   rQ   rŽ   r]   rË   )	r&   rL   r   re   r(   r   rb   r´   r   )rh   ZxrÚyrr¥   Zp1xri   Zp2xZp2xxrF   rF   rG   Útest_piecewise_exclusiveä  sL    ÿ$ÿ
ÿÿÿÿþþþÿÿrÑ   c               	   C   sd  t tdfƒtks
J ‚tdk } t t| ftd | fƒt t| fƒks!J ‚t t| ftd | jfƒt t| fƒks5J ‚tdk }dd„ }d| ft d| fd|fƒ|ffd| ft d| fd|jfƒ|ffd| ft d| fd|fƒ|fdfd| ft d| fd|fdƒ|ffd| ft d| fd|fdƒ|fd	ffD ] }d
D ]}|t |ddiŽ t|¡ƒ|t |Ž  t|¡ƒks©J ‚qŽqŠtdƒ\}}}}t|k } t|k }t|k }	t|k }
t d| ft d| fd|fd|	fƒ|fd|	fƒt d| fd|fd|	fƒksçJ ‚t d| ft d| fd|fd|	fdƒ|	fd|
fƒt d| ft d|fd|	fƒ|	fd|
fƒksJ ‚t dt| |
ƒft d|
fd|fd|	fƒ|fd|	fƒt dt| |
ƒft d|
fd|fƒ|fd|	fƒksFJ ‚t d|	fd|	 fdtjfƒt d|	fdtjfƒksaJ ‚t d|	fdt|	 |ƒfdƒt d|	fd|fdƒks|J ‚t d|	fdt|	 |ƒfdƒ t	t
||||tfdƒƒ¡dksœJ ‚t d|	fd|	 fƒt d|	fdƒks°J ‚d S )NTr?   r^   c                 S   s   t | tƒr
t| jŽ S | S rD   )rf   r&   r¯   )rŸ   rF   rF   rG   Ú	canonical  s   

z*test_piecewise_collapse.<locals>.canonicalrC   r]   ©rT   T©r^   T)r   rC   rV   rJ   Fzr1:5rT   )rR   TrŽ   )r?   rC   r]   rT   g      @rQ   )r&   rL   Úreversedr\   r   r5   r   Útruer2   r“   r”   )rv   r’   rÒ   r¯   rŸ   rÅ   Úr2Zr3Zr4r   r‘   rF   rF   rG   Útest_piecewise_collapse  s’   &( ûÿ
þÿ
ÿÿÿþ
ÿÿÿ
ÿÿÿ
þÿÿÿÿÿÿ
þ
ÿ
ÿ
ÿ,rØ   c                  C   sˆ   t td tdk fttddddƒ t¡fdt tdkfdƒ} tt| ƒ}|dƒdks*J ‚|d	ƒd	ks2J ‚|d
ƒd
ks:J ‚|dƒd	ksBJ ‚d S )NrC   r   r?   FTr@   g       Àg      @rW   rÎ   g       @)r&   rL   r9   r†   r=   )rh   rl   rF   rF   rG   Útest_piecewise_lambdify/  s   ü
rÙ   c                  C   sz   ddl m}  tttƒtdk fttƒtdkfƒ}tt| td ƒ tdk fd| td ƒ tdkfƒ}|jtdd|ks;J ‚d S )Nr   )ÚOrC   r?   )rY   )Zsympy.series.orderrÚ   r&   r,   rL   r+   Znseries)rÚ   r¥   ri   rF   rF   rG   Útest_piecewise_series>  s   "2rÛ   c                  C   sd  t dt tdkfdƒ} t ttdkfdƒ}t dt tdkftdfƒ}t ttdkfdt dfƒ}t dt tdkftdfƒ}t dt tdk ftdfƒ}t ttdk fdt dfƒ}t ttdkfdt dfƒ}|  t¡dkskJ ‚| t¡dkstJ ‚| t¡tks}J ‚| t¡dt ksˆJ ‚| t¡tks‘J ‚| t¡dt ksœJ ‚| t¡tks¥J ‚| t¡dt ks°J ‚d S )Nr?   r@   Tr   )r&   rL   Zas_leading_term)r¥   ri   rj   rk   rp   rq   rÆ   Úp8rF   rF   rG   Útest_piecewise_as_leading_termE  s    rÝ   c                  C   s6  t dtdk fddtkfƒ} t dt tdk ftdtkfƒ}t tt tdkfdt dfƒ}t t ttƒ tdkfdt dfƒ}t| ƒ| ksEJ ‚t|ƒt| ƒksPJ ‚t|ƒ|ksXJ ‚| jdu s_J ‚| jdu sfJ ‚|jdu smJ ‚|jdu stJ ‚|jd u s{J ‚|jd u s‚J ‚|  ¡ | dfksŒJ ‚| ¡ dt | fks™J ‚d S )NrC   r   r?   TF)r&   rL   r   r   r'   Zis_imaginaryZis_realZas_real_imag)r¥   ri   rj   rk   rF   rF   rG   Útest_piecewise_complexX  s   $rÞ   c                  C   sè   t ddd\} }t| |d  tdkf| d | dfƒ}| ¡ tt| |d  ƒtdkft| d | ƒdfƒks8J ‚| ¡ tt| |d  ƒtdkft| d | ƒdfƒksUJ ‚| ¡ tt| |d  ƒtdkft| d | ƒdfƒksrJ ‚d S )NúA BF)ZcommutativerC   r   T)r   r&   rL   r   r   r    )ÚAÚBrh   rF   rF   rG   Útest_conjugate_transposem  s   &,ÿ,ÿ,ÿrâ   c                  C   s    t tdfƒtks
J ‚t tdfddtksJ ‚t dtdtƒfƒjdttdƒffks*J ‚t dtdtƒfddjdtdtƒffks@J ‚t tdfdd} | tksNJ ‚d S )NTrI   r?   F)r&   rL   r   r¯   r§   rF   rF   rG   Útest_piecewise_evaluatex  s   (
ÿrã   c                   C   s˜   t ttdkft tdkfƒ ¡ ttdtddƒft tt dƒfgks$J ‚t td d tdkfdƒ ¡ td d tdtƒfdtt dddƒfgksJJ ‚d S )Nr   TrC   r@   )r&   rL   Úas_expr_set_pairsr9   r   rF   rF   rF   rG   Útest_as_expr_set_pairs„  s   "ÿ(ÿrå   c                  C   s0   t dttdƒfdƒ} tt| ƒƒ}| |ksJ ‚d S )NrV   r   )é   T)r&   r   rL   r   r7   )rh   r–   rF   rF   rG   Útest_S_srepr_is_identityŒ  s   rç   c                  C   s¦   t dtdkfdttdktdk@ ƒfdƒ} |  tddf¡d	ks J ‚t dtdkfdttk fdƒ} td
df}|  |¡}tddƒD ]}| t|¡|  t|¡ |¡ksPJ ‚q=d S )Nr?   rT   rC   r]   rB   rŽ   rU   r^   é   r€   )r&   rL   r4   r1   rb   r£   r\   )rh   r•   rž   rŸ   rF   rF   rG   Útest_issue_12587’  s   (

$ÿré   c                  C   sÀ  t dtttd d ƒ  tddfƒtd ksJ ‚tdtttdk tdkƒtdk ƒfdƒ  tddf¡dks5J ‚tdtdkfdttd kfdƒ  tddf¡dksOJ ‚tdtdkfdtdtƒfdƒ  tddf¡d	kshJ ‚tdtdt td ktdk ƒfdƒ  tddf¡dks„J ‚tdtdt td ktdk ƒfdƒ  tddf¡dks J ‚tdtdkfdttd kfdƒ  tddf¡dksºJ ‚tdtdt tdt d  ƒfdƒ  tddf¡d	ksÖJ ‚tdttdk tdkƒfdtdkfdƒ  tddf¡d	ksóJ ‚tdttdƒfd
ƒ  tddf¡dksJ ‚tttdktdk @ fdtdk fƒ  tddf¡dks$J ‚tttdktdk @ fdtdk fƒ} t	}|   tdt
f¡}|tt
d t
dk ftdt
ƒd d tdt
ƒ tdt
ƒ tj t
tdt
ƒkf|dfƒksmJ ‚|   tddf¡| t
d¡ks~J ‚|   tddf¡dks‹J ‚|   tddf¡|u s˜J ‚tdtdkfdtttdktdk ƒƒfdƒ} |   tddf¡dksºJ ‚tdtdtktdkƒfdttdk tdkƒfdtdk fƒ} |   tddf¡dksãJ ‚tdtdk fdtttdƒtdkƒfƒ  tddf¡tju sJ ‚tdtdk fdtttdƒtdkƒfdƒ  tddf¡dks!J ‚tdtdk fdtttdƒtdk ƒfdƒ  tddf¡dks@J ‚tdtdk fdttdƒt
tk @ fdƒ  tddf¡dks^J ‚d S )Nr?   rC   r]   r@   r   rŽ   r^   rT   rR   rQ   rB   TrS   é   rV   é   )r1   rL   r%   r   r&   r2   r5   r   r   r)   rb   r$   r   re   r\   r4   r´   )rh   r±   rŸ   rF   rF   rG   Útest_issue_11045  s€   0$ÿÿÿ"ÿ"ÿÿ"ÿ$ÿ
ÿ 
ÿ"*ÿü"*
ý$
ÿ&
ÿ&
ÿ$ÿrì   c                  C   sŠ  t } tdtdk fƒ t¡tttdk f| dfƒksJ ‚tdttdktdk ƒfƒ t¡t| tdk fttdk f| dfƒks<J ‚tdttdktdk ƒfƒ tddf¡| u sSJ ‚tdttdktdk ƒfƒ tddf¡dksjJ ‚tdƒ\}}tddd	\}}t|ttdk |dk ƒf|ttdk |dkƒfƒ t¡t|t |dkft|t tdk f|t tdk f| dfƒ|dk ft|t tdk f| dfƒdfƒksÃJ ‚d S )
Nr?   rC   Tr   r]   rT   rß   za brz   )r)   r&   rL   r1   r2   r   r5   )r±   rà   rá   rv   r’   rF   rF   rG   Ú
test_holesç  s$   
ÿ 
ÿ..,.ýÿrí   c                     sÀ   dd„ ‰ ‡ fdd„} | dƒdksJ ‚t dƒ}‡ fdd„}||ƒ}| |d	¡dks*J ‚t dd
d}||ƒ}| |d	¡dks>J ‚tdtdk fdtdkfƒ ¡ tdtdk fdt d d
fƒks^J ‚d S )Nc                 S   s$   t d| dk fd| d  | dk fdƒS )Nr   rB   r?   rC   r@   rE   rµ   rF   rF   rG   rl   ü  ó   $ztest_issue_11922.<locals>.fc                    s    ˆ t ƒˆ t |  ƒ  t ddf¡S )NrB   r?   ©rL   r1   ©Úkrw   rF   rG   rH   þ  s    z"test_issue_11922.<locals>.<lambda>gffffffþ?r   rñ   c                    s$   dt d  ˆ t |  ƒ  t ddf¡S )Nr?   rC   rB   rï   rð   rw   rF   rG   rH     rî   r]   Tr­   r?   rV   )r   r\   r&   rL   r1   )Zautocorrrñ   Zgood_autocorrrv   rF   rw   rG   Útest_issue_11922û  s    ÿrò   c               	   C   sä   dt dtdk fdt d tdk ft dtdkfd	ƒt d
tdkfdƒ tdkfdt d tdk fdƒ } t| tt tfƒ}|t| tt tfƒ ¡ ksJJ ‚t|ƒdksRJ ‚t dtt dk fdƒ t¡t dttkft t dfƒkspJ ‚d S )Ngý©§J™¢j?r   gf'vb'6TÀgŠÈlAw¿g¶3Ø†Põ?rC   g333333Ó?é{   )gffffffæ?Tgš™™™™™Ù?)g333333ã?Tgð%Ñ”½€¿g%JMã× @gš$I’$Éw@r@   z1.00195081676351r?   T)r&   rL   r1   r   r0   rd   Ústrrb   )rl   rŸ   rF   rF   rG   Útest_issue_5227  s(   ÿÿÿÿû ÿrõ   c            
      C   sl  t ddd} t ddd}t ddd}t ddd}tdt|| k ||kƒfdƒ}tdt| |k||k ƒfdƒ}t|||tfƒt|||tfƒksFJ ‚td	td|k || k ƒfd
ƒ}td	t| |k|dkƒfd
ƒ}t||ƒ}|td|dkf||td| ƒkftd| ƒdfƒksJ ‚t||ƒ}	|	|ksŒJ ‚| |ddf¡tdtd| ƒƒd ks J ‚| |ddf¡tdtd| ƒƒd ks´J ‚d S )Nrv   Trz   r’   rL   rb   r   rA   r?   r@   rC   rT   )r   r&   r5   r1   r   r2   r#   r$   )
rv   r’   rL   rb   r¤   r¥   rj   rk   Zip3Zip4rF   rF   rG   Útest_issue_10137  s&   $


ý
(,rö   c                     sž   dd„ ‰ ‡ fdd„} | t ƒ}| t d¡| t d¡ksJ ‚| t d¡dks&J ‚tˆ t t ƒˆ tƒ ƒtdtd	ktdk@ t t d	k@ t t dk@ fd
ƒksMJ ‚d S )Nc                 S   s   t d| dk| dk@ fdƒS )Nr?   rB   r@   rE   rµ   rF   rF   rG   rH   1  ó    z-test_stackoverflow_43852159.<locals>.<lambda>c                    s$   t ˆ | t ƒˆ tƒ tt t
 fƒS rD   )r1   rb   r   rµ   rw   rF   rG   rH   2  s   $ g      ø¿g      ø?r]   r   r?   rB   r@   )rL   r\   r'   rb   r&   )ZConvZcxrF   rw   rG   Útest_stackoverflow_438521590  s   *þrø   c                  C   s®   t ddd} t dddd}dd„ }t|| ƒ| t tfƒtd ks"J ‚t||  ƒt| d ƒ }t|| t tfƒtdd	|  |d  d|d   t|d
ƒftd dfƒksUJ ‚dS )aD  
    # 3200 seconds to compute the fourier part of issue
    import sympy as sym
    x,y,z,t = sym.symbols('x y z t')
    k = sym.symbols("k", integer=True)
    fourier = sym.fourier_series(sym.cos(k*x)*sym.sqrt(x**2),
                                 (x, -sym.pi, sym.pi))
    assert fourier == FourierSeries(
    sqrt(x**2)*cos(k*x), (x, -pi, pi), (Piecewise((pi**2,
    Eq(k, 0)), (2*(-1)**k/k**2 - 2/k**2, True))/(2*pi),
    SeqFormula(Piecewise((pi**2, (Eq(_n, 0) & Eq(k, 0)) | (Eq(_n, 0) &
    Eq(_n, k) & Eq(k, 0)) | (Eq(_n, 0) & Eq(k, 0) & Eq(_n, -k)) | (Eq(_n,
    0) & Eq(_n, k) & Eq(k, 0) & Eq(_n, -k))), (pi**2/2, Eq(_n, k) | Eq(_n,
    -k) | (Eq(_n, 0) & Eq(_n, k)) | (Eq(_n, k) & Eq(k, 0)) | (Eq(_n, 0) &
    Eq(_n, -k)) | (Eq(_n, k) & Eq(_n, -k)) | (Eq(k, 0) & Eq(_n, -k)) |
    (Eq(_n, 0) & Eq(_n, k) & Eq(_n, -k)) | (Eq(_n, k) & Eq(k, 0) & Eq(_n,
    -k))), ((-1)**k*pi**2*_n**3*sin(pi*_n)/(pi*_n**4 - 2*pi*_n**2*k**2 +
    pi*k**4) - (-1)**k*pi**2*_n**3*sin(pi*_n)/(-pi*_n**4 + 2*pi*_n**2*k**2
    - pi*k**4) + (-1)**k*pi*_n**2*cos(pi*_n)/(pi*_n**4 - 2*pi*_n**2*k**2 +
    pi*k**4) - (-1)**k*pi*_n**2*cos(pi*_n)/(-pi*_n**4 + 2*pi*_n**2*k**2 -
    pi*k**4) - (-1)**k*pi**2*_n*k**2*sin(pi*_n)/(pi*_n**4 -
    2*pi*_n**2*k**2 + pi*k**4) +
    (-1)**k*pi**2*_n*k**2*sin(pi*_n)/(-pi*_n**4 + 2*pi*_n**2*k**2 -
    pi*k**4) + (-1)**k*pi*k**2*cos(pi*_n)/(pi*_n**4 - 2*pi*_n**2*k**2 +
    pi*k**4) - (-1)**k*pi*k**2*cos(pi*_n)/(-pi*_n**4 + 2*pi*_n**2*k**2 -
    pi*k**4) - (2*_n**2 + 2*k**2)/(_n**4 - 2*_n**2*k**2 + k**4),
    True))*cos(_n*x)/pi, (_n, 1, oo)), SeqFormula(0, (_k, 1, oo))))
    rL   Trz   rñ   )r«   Zfinitec                 S   s   t |  | dkf| | dkfƒS ©Nr   rE   rµ   rF   rF   rG   rH   Z  s    z"test_issue_12557.<locals>.<lambda>rC   rB   r   N)r   r1   r   r+   r%   r&   r   )rL   rñ   rÁ   ÚfuncrF   rF   rG   Útest_issue_12557;  s   "2ÿrû   c               	   C   s¤  ddl m}  tdƒ\}}}}td||k ftt||k||k ƒfd||kfƒ}| |¡}|td||kf|t |t  |t||ƒkf| t tt||ƒ  dfƒksQJ ‚| tdƒƒD ]*}t	t
||f|ƒƒ}tddƒD ]}	| |¡ ||	¡| |¡ |¡ ||	¡ks€J ‚qgqWt|||ƒ}
| |
¡}t| t tt|t||ƒƒ  ||kfdƒ}| tdƒƒD ] }t	t
|||f|ƒƒ}| |¡ |
 |¡¡}|| |¡ksÉJ ‚q©||ksÐJ ‚d S )	Nr   rŒ   z
t0, t1 T tTrC   rB   r]   r@   )r   r   r   r&   rL   r2   r1   r#   r£   r“   r”   Úxreplacer\   r   r$   )r   Út0Út1ÚTr¬   rl   rm   rŸ   r¡   Úttr•   rž   ZtrurF   rF   rG   Útest_issue_6900`  s6   .


ý
ÿÿ
$þr  c                   C   sV   t ttƒttd ƒ d dktƒttt tk ttjk ƒttjtk ttk ƒƒks)J ‚d S )Nr?   r   )	r:   ÚabsrL   r5   r2   r   r   ZZeroZOnerF   rF   rF   rG   Útest_issue_10122z  s    *ÿr  c                  C   sÌ  t dtdkfdttkftt dfƒ} | |  tt¡ d tt d  }tdtƒ}t|tƒ ¡ t t dtdkftd  td t td t   ttd   dt tt ƒ td   dt ttt ƒ td   ttd   t|kftd  td  t td |   dt |   dtt   dt tt ƒ td   dt tt | ƒ td   ttd   |td   dfƒttktdk@ tdktt	 k@ B ft dtt  tdkftd  td t td t   dt t td t td t    td td t td t    dtt ƒ t  dttt ƒ t  dt  ttd   dt tt ƒ td   dt ttt ƒ td   ttd   t|kftd  td  t td |   dt t td  t td |    td td  t td |    dtt ƒ t  dtt | ƒ t  dt  dt tt ƒ td   dt tt | ƒ td   ttd   |td   dfƒttkft td  td t td t   tdkfttd  ttd   t|kftd td  t td |   td td t td t    dt t td  t td |    dt t td t td t    td td  t td |    td td t td t    ttd   |td   dfƒdfƒksdJ ‚d S )Nr   r?   TrC   rB   )
r&   rL   rv   r\   rb   r#   r1   r	   r"   r   )ÚuÚeÚMrF   rF   rG   Útest_issue_4313  sÌ   $ 

Fÿ
ÿÿ0
ÿÿÿÿÿ
þ
þþü ùDÿÿÿþ
þþþ
ýý8
ÿ ÿþþþýý
ü
üüúõ( ÿ$ÿ"þ þý
ý
ýýýùër  c                   C   sJ  t td ttdƒfƒ t¡dg fksJ ‚t dttd kft dttd k fƒdt dt d k fdƒ t¡dt tddfgfksAJ ‚t dtttƒfdƒ t¡dt tddfgfksZJ ‚t ttƒ ttƒdkfttƒdfƒ t¡ddt	ttƒ dft tttƒdfgfks…J ‚t dt
td ƒdkfdƒ t¡dd	d
t tddfgfks£J ‚d S )NrC   r]   Tr?   rA   r@   r   r[   )rB   r   r?   r   )r   r?   r?   r   )r&   rL   r   Z
_intervalsr   r   r   r+   r,   r   r   rF   rF   rF   rG   Útest__intervals¢  s*   (&ýý
ÿ""ÿÿÿÿr  c                  C   s¸   g d¢\} }}}}t |tdkf|dfƒt | ttd ƒdk f|ttd ƒdk f|dfƒ }| t¡ t¡t || tdkf| | tdkf| | tdk f|| tdk f|| dfƒksZJ ‚d S )N)r?   rC   r]   rT   r^   r?   TrC   r   rT   )r&   rL   r   r1   r   )rv   r’   r   r‘   r  rh   rF   rF   rG   Útest_containment´  s   .ÿ
ûr	  c                  C   sš   t td ƒ} t| tt tfƒdksJ ‚t| tddfƒdksJ ‚t| ttdƒfdƒ t¡dks0J ‚t| tdk fdƒ t¡tttd ƒtdk fdƒksKJ ‚d S )Nr?   r   rC   r@   rA   )r-   rL   r1   r   r&   r   r.   )Zd1rF   rF   rG   Útest_piecewise_with_DiracDeltaÀ  s   "ÿr
  c                  C   sn  t dtdk fdƒjd u sJ ‚t dtdk fdƒjdu sJ ‚tddd} t dtdk f| dfƒjs0J ‚t dtdk f| td	k fƒjd u sBJ ‚tdƒ} t dtdk f| dfƒjd u sVJ ‚t dtdk fdƒjd u sdJ ‚t dtdk fd
ƒjspJ ‚t dtdk ftdfƒjd u s€J ‚t dtdk fdƒjsŒJ ‚tƒ }t |tdk fƒjd u sœJ ‚t dtdk fd
ƒd	k }|dks­J ‚t|ƒdksµJ ‚d S )Nr   r?   rA   rB   Frv   T)Úzeror]   rQ   )	r&   rL   Úis_zeror   Z
is_nonzeror   Ú	is_finiter   r'   ©rv   r’   r   rF   rF   rG   Útest_issue_10258Ì  s    $  r  c                  C   s–   t ttdkfdƒt ttdkfdƒ} }| | }t|ƒ}dD ]}| t|¡| t|¡ks-J ‚q| | }t|ƒ}dD ]}| t|¡| t|¡ksHJ ‚q8d S )Nr?   rQ   r]   rŽ   )r   rC   rT   )r&   rL   r'   r\   )rv   r’   Úmrl   rŸ   rF   rF   rG   Útest_issue_10087á  s   &ÿr  c                  C   sà  t dƒ} t dƒ}t| d |dk f| d dfƒ}t| d |tddƒk f| d dfƒ}t|| |ddfƒ| d | d  d d| d  | d  d  | d | d   ksSJ ‚td|dk fd	ƒ}td|dk fd
ƒ}t|| |ddfƒdkssJ ‚t ddd}t ddd\}}} }}ttd||k|dk B || kB f|dfƒ|d|fƒ}| ¡ }	|	td|| kf|t||ƒ |td|ƒ  dfƒks¼J ‚dD ]/}
tddƒD ]'}t| d|ƒD ]}|| k|
f||f||fg}|	 |¡| |¡ ¡ ksëJ ‚qÎqÅq¾d S )Nzc:5rL   r?   rC   Tr]   rT   r   rQ   r@   rR   rb   r­   z	a,b,c,x,zrz   )TF)	r   r&   r   r1   r0   rd   r$   r£   r\   )r   rL   rs   rt   rb   rv   r’   r>   r   rž   rg   r„   Úzzr¡   rF   rF   rG   Útest_issue_8919í  s8   $:ÿþþ6þÿÿr  c                  C   sò   t dƒ} tdt| tƒd dƒfdtd dk fdƒ}| t¡t|tƒks%J ‚| tddf¡t|tddfƒks7J ‚t|tddfƒ | tƒtd ¡ ¡ dksMJ ‚| t¡ttt| tƒdƒtdk t| tƒdƒ@ B fdt tt	 ktdk @ fdƒkswJ ‚d S )	Nrl   r?   r   rC   rV   r@   r^   g      $@)
r   r&   r   rL   r1   r0   r\   rY   rb   r   )rl   rh   rF   rF   rG   Útest_unevaluated_integrals  s   *$,
&þr  c                  C   s\   t dƒ\} }}ttttdk tdkftdkdfƒfƒttttdktdk tdkƒfƒks,J ‚d S )Nza:cr?   r   T)r   r&   rL   rb   r3   r  rF   rF   rG   Ú%test_conditions_as_alternate_booleans  s   $ÿr  c                     s\  t dƒ\‰‰} }dd„ ‰ ˆ ˆtdk fˆtdkfƒttdk ˆˆƒks#J ‚ˆ ˆtdk fˆttk fƒttdk ˆˆƒks:J ‚ˆ ˆtdk fˆttdk ttk ƒf| tdkfƒttdk ˆˆƒks[J ‚ˆ ˆtdk fˆdfƒttdk ˆˆƒkspJ ‚ˆ ˆtdk fˆtdk f| dfƒttdk ˆttdk ˆ| ƒƒksJ ‚ˆ ˆtdk fˆtdk f| dfƒttdk ˆttdk ˆ| ƒƒks°J ‚ˆ ˆtdk fˆttk f| tdk fƒttdk ˆˆƒksÌJ ‚ˆ ˆtdk f| tdk fˆttk f|dfƒttdk ˆttdk | ˆƒƒksñJ ‚ˆ ˆtdk fˆtttk tdk ƒfƒttdk ˆˆƒksJ ‚tt‡ fdd	„ƒ tt‡ ‡fd
d	„ƒ tt	‡ ‡‡fdd	„ƒ d S )Nza:dc                  W   s   t | Ž  t¡S rD   )r&   r‡   r3   )r¯   rF   rF   rG   Ú_ITE   s   z+test_Piecewise_rewrite_as_ITE.<locals>._ITEr?   r   TrC   c                      s   ˆ t d t dk ft dfƒS rO   rµ   rF   )r  rF   rG   rH   2  r÷   z/test_Piecewise_rewrite_as_ITE.<locals>.<lambda>c                      s   ˆ t t tk ftt ˆkfƒS rD   )rL   rb   rF   )r  rv   rF   rG   rH   6  r÷   c                      s   ˆ ˆt dk fˆt dkfƒS )NrC   r]   rµ   rF   ©r  rv   r’   rF   rG   rH   7  r÷   )
r   rL   r3   r   r5   rb   r;   ra   rÀ   Ú
ValueError)r   r‘   rF   r  rG   Útest_Piecewise_rewrite_as_ITE  s4   ..,ÿ*ÿÿ"ÿ(ÿ"
ÿr  c                  C   s^   t dƒ\} }tdt| dƒfdƒ}| | |dk i¡}| |d¡dks#J ‚| |d¡dks-J ‚d S )Nzx, yr   TrA   r?   )r   r&   r   rü   r\   )rL   rb   r¥   ri   rF   rF   rG   Ú'test_Piecewise_replace_relational_27538:  s   þr  c                   C   s(   t tttƒƒtddt fƒdksJ ‚d S )Nr   rC   rT   )r1   r  r,   rL   r   rF   rF   rF   rG   Útest_issue_14052E  s   (r  c                   C   sÞ   t tdtfdtfdƒtdtfdƒ ƒtdtfdtfdƒksJ ‚t tdtfd	tfd
ƒtdtfdƒ ƒtdtfdtfdƒks>J ‚t tdd„ tdƒD ƒŽ ƒtdtfdƒksTJ ‚t tdd„ tddƒD ƒŽ ƒttdƒtfdƒksmJ ‚d S )Nr?   rC   rÓ   rê   )é   Té	   é   )rë   Tr]   rÔ   rS   )rÃ   Tr|   é!   )é7   Tc                 S   ó   g | ]	}t |tfd ƒ‘qS ©r@   ©r&   rv   r¼   rF   rF   rG   r¾   S  ó    ÿz$test_issue_14240.<locals>.<listcomp>é(   i  r@   c                 S   r!  r"  r#  r¼   rF   rF   rG   r¾   V  r$  é)   )r'   r&   rv   r’   r   r£   r
   r   rF   rF   rF   rG   Útest_issue_14240I  s0   ÿÿýÿÿý
ÿþ
ÿþr'  c                  C   s>   t dƒ} t| | dk ftdƒd dfƒ}t| ¡ ƒdksJ ‚d S )NrL   r?   é:   rS   Tz/Piecewise((x, x < 1), (8.28571428571429, True)))r   r&   r   rô   rc   ©rL   rl   rF   rF   rG   Útest_issue_14787[  s   r*  c                     sŒ  t dƒ\} }td| dk|dk@ | dk| dk @ |dk @ B |dk| dk @ tt|dƒdƒ@ B |dk| dk@ | dk @ tt|dƒdƒ@ B ftj| dk|dk @ | dk|dk@ | dk @ B |dk| dk @ tt|dƒdƒ@ B |dk| dk@ | dk @ tt|dƒdƒ@ B ftj tt|dƒdƒ|dk| dk @ |dk| dk@ | dk @ B @ fd|dk| dk @ tt|dƒdƒ@ |dk| dk@ | dk @ tt|dƒdƒ@ B fƒ}tdt| dƒt|dƒB t| dƒtt|dƒdƒ@ B fdt| dƒ|dk@ fdt| dƒtt|dƒdƒ@ f|tt| ƒdƒtt|ƒdƒ@ fƒ}t|ƒ}| ¡ }| ¡ }ddtj dtjddf}|D ]'}|D ]!}	| |||	i‰ ‡ fdd„||||fD ƒ}
t	t
|
ƒƒdks@J ‚q qd S )	Nzb erC   r?   r   rB   r[   c                    s   g | ]}|  ˆ ¡‘qS rF   )rü   )r½   rñ   ©r˜   rF   rG   r¾   ‚  s    z$test_issue_21481.<locals>.<listcomp>)r   r&   r   r   r   re   r   r'   rˆ   ÚlenÚset)r’   r  ÚCrà   rá   ÚsaÚsbr—   rŸ   r    ÚokrF   r+  rG   Útest_issue_21481`  s`   ÿþ&ýÿÿþ&ýÿ&ÿÿ&ÿÿò0üýÿr2  c                  C   s  t dƒ\} }tdt| dƒft| ƒdfƒ}| ¡ t| ƒksJ ‚t| t| dƒfd|  |d d  t| dƒt| | dƒ@ ft| ƒdfƒ}| ¡ t| ƒksKJ ‚t| d t| dƒfd|  |d d  t| dƒt| | dƒ@ ft| ƒdfƒ}| ¡ tdt| dƒft| ƒdfƒks„J ‚d S )Nry   r   TrT   rC   r?   rB   )r   r&   r   r,   rˆ   )rL   rb   r¥   ri   rj   rF   rF   rG   Útest_issue_8458†  s   FJ,r3  c               	   C   s  t dƒ} ttdttt| ƒdƒtt| ƒdƒƒfdƒsJ ‚t dƒ}tttj	t|ƒdk fdtt|ƒdkt
t|ƒdƒƒftjdfƒs@J ‚t ddd}ttj	t|ƒdk fdtt|ƒdkt
t|ƒdƒƒftjdfƒ}|ttj	|dk fd|dkftjdfd	d
ks|J ‚t| }ttj	t|ƒdk fdtt|ƒdkt
t|ƒdƒƒftjdfƒ}|tdt
t|ƒdƒftjdfd	d
ks³J ‚|tdt
|dƒftjdfd	d
ksÆJ ‚d S )Nr>   r?   r   rQ   rL   Tr˜   rz   FrI   )r   r   r&   r5   r   r   r   r   r   ÚPir   r´   r   )r>   rL   r˜   rh   rŸ   rF   rF   rG   Útest_issue_16417“  s6   .þþ

þ
þ
ÿ
ÿr5  c                     sÊ  t dƒ\} }}}}}t‰ ‡ fdd„}tdt| |ƒfdƒ}||ƒdˆ | |ƒ ks)J ‚t| t|dƒf|t|dƒf|dfƒ}||ƒ|ˆ d|ƒ ˆ d|ƒ |ˆ d|ƒ  |ˆ d|ƒ  | | ˆ d|ƒ  |ˆ d|ƒ ˆ d|ƒ  |ˆ d|ƒ  kswJ ‚tdt| |ƒfdƒ}	||	ƒdˆ | |ƒ ksŽJ ‚tdt| d	ƒfd
dƒ}
||
ƒdd	ˆ d	| ƒ  ks¨J ‚td	t| dƒfdt|dƒfdƒ}||ƒˆ d| ƒ ˆ d|ƒ dˆ d| ƒ  d	 ksÒJ ‚tdt| dƒt|dƒ@ fdƒ}||ƒˆ d| ƒ ˆ d|ƒ ˆ d| ƒ ˆ d|ƒ ksüJ ‚tdt|d	ƒt| dƒ@ fdƒ}||ƒˆ d| ƒ ˆ d	|ƒ ˆ d	|ƒ d ks$J ‚tdt| d	ƒt|dƒ@ fdƒ}||ƒdˆ d|ƒ ˆ d	| ƒ d	ˆ d	| ƒ  d ksOJ ‚tdt| dƒt|dƒ@ fdƒ}||ƒdˆ d|ƒ ˆ d| ƒ d kssJ ‚tdt| dƒt|dƒB fdƒ}||ƒdˆ d| ƒ ˆ d|ƒ d ks—J ‚tdt|dƒt| dƒB fdƒ}||ƒˆ d| ƒ ˆ d|ƒ ˆ d| ƒ d ks¿J ‚tdt| dƒt|d	ƒB fdƒ}||ƒdˆ d| ƒ ˆ d	|ƒ dˆ d	|ƒ  d ksêJ ‚td	t| dƒt|dƒB fdƒ}||ƒdˆ d| ƒ ˆ d|ƒ dˆ d| ƒ  dˆ d|ƒ  d ksJ ‚tdt| dƒt|dƒB fdƒ}||ƒdˆ d| ƒ ˆ d|ƒ d ks@J ‚tdt| d	ƒt|dƒB fd	t| dƒt|dƒ@ fdƒ}||ƒdˆ d|ƒ ˆ d	| ƒ ˆ d| ƒ ˆ d|ƒ ˆ d|ƒˆ d	| ƒ  dˆ d|ƒ ˆ d| ƒ ˆ d|ƒ  ˆ d|ƒ d ks™J ‚tdt||ƒfdƒtdt||ƒfdƒ tdt|| ƒfdƒ tdt|| ƒfdƒ }||ƒˆ ||ƒˆ ||ƒ ˆ || ƒ ˆ || ƒ ksÜJ ‚tdt|| ƒt||ƒt||ƒB t|| ƒB @ fdt|| ƒfdt||ƒt||ƒB t|| ƒB fdƒ}||ƒˆ ||ƒˆ ||ƒ ˆ || ƒ ˆ || ƒ ks&J ‚tdt|dƒt| dƒt| |ƒ@ B fd
ƒ}||ƒdˆ d| ƒ ˆ d|ƒ ˆ | |ƒ dˆ d| ƒ ˆ | |ƒ  dˆ d|ƒ  d ksgJ ‚td| dkfdƒ}||ƒ|ksyJ ‚tdt| dk | dkƒfdƒ}||ƒ|ksJ ‚tdt| dk| dk ƒfdƒ}||ƒ|ks§J ‚tdt|dƒt| dƒB t| dƒt|dƒB @  fdƒ}||ƒˆ d|ƒˆ d| ƒ ˆ d|ƒˆ d| ƒ  ˆ d| ƒ d ksãJ ‚d S )Nzx y z n t mc                    s   t |  ˆ ¡ƒS rD   )r	   r‡   r§   ©ÚKrF   rG   rH   ¶  rP   z5test_eval_rewrite_as_KroneckerDelta.<locals>.<lambda>r   rA   r?   Tr@   r]   rÓ   rÔ   rT   rC   r€   rR   r^   éüÿÿÿrQ   rB   r[   rŽ   rU   rê   )r   r/   r&   r   r   r2   r5   )rL   rb   r>   rY   r¬   r  rl   r¥   ri   rj   rk   rp   rq   rÆ   rÜ   Zp9Zp10Zp11Zp12Zp13Zp14Zp15Zp16Zp17Zp18Zp19Zp20Zp21Zp22rF   r6  rG   Ú#test_eval_rewrite_as_KroneckerDelta³  s‚   $<ÿÿ
ÿ 4628**28F*4D ÿÿÿ&ÿÿ6,.ÿ6(Z4Hr9  c                  C   s8   ddl m} m} | dddƒ}| dddƒ}||| ƒ d S )Nr   )ÚUniformÚdensityÚu1r?   Úu2)Zsympy.statsr:  r;  )r:  r;  r<  r=  rF   rF   rG   Útest_identical_conds_issueÿ  s   r>  c                  C   s:   t dtdkfƒ} t| tdtddƒfƒ}t|ƒdksJ ‚d S )Nr?   i`	  r   z252.4é   z252.400000000000000000000000000)r&   rL   r1   r   rô   )rl   r—   rF   rF   rG   Útest_issue_7370	  s   r@  c                  C   s‚   t dƒ} t dƒ}tdddƒ}||d | |d i}tdt|dk| dk dƒfƒ}| |¡tdt|d dk|d dk dƒfƒks?J ‚d S )NrL   rb   Úinpr?   )r   r   r   T)r   r6   r&   r3   rü   )rL   rb   rA  Zrep_dictrh   rF   rF   rG   Útest_issue_14933  s   6rB  c                   C   s   t tdd„ ƒ d S )Nc                   S   s   t ttdk fdtdkfƒ ¡ S )Nr   r?   )r&   rL   rb   rä   rF   rF   rF   rG   rH     s    z"test_issue_16715.<locals>.<lambda>)r;   rÀ   rF   rF   rF   rG   Útest_issue_16715  r¹   rC  c                  C   s†   t ddd\} }t ddd}t|tj  }tt|| ƒ|d| fƒ}| ¡ dtt|  d| d  d ƒ d td| d   ksAJ ‚d S )	Nzt tauTrz   rY   rª   r   rC   r?   )r   r   r   re   r1   r!   rˆ   )r¬   ÚtaurY   ZlamÚeqrF   rF   rG   Útest_issue_20360  s
   DrF  c                  C   sŠ  dd„ } | t ttt ktdk @ fƒƒtt ktdk @ ksJ ‚| t ttt kttk @ fƒƒtt kttk @ ks8J ‚| t ttdktdk @ fƒƒtdktdk @ ksPJ ‚| t ttdkttk @ fƒƒtdkttk @ kshJ ‚| t ttdktt k@ fƒƒtdktt k@ ks‚J ‚| t ttdktdk@ fƒƒtdktdk@ ksšJ ‚| t ttdktdk @ fƒƒtdktdk @ ks²J ‚| t ttdkttk @ fƒƒtdkttk @ ksÊJ ‚| t ttdktdk@ fƒƒtdktdk@ ksâJ ‚| t tttktt k@ fƒƒtt kttk@ ksüJ ‚| t tttktdk@ fƒƒtdkttk@ ksJ ‚| t ttt ktdk @ fƒƒtdk tt k@ ks0J ‚| t ttt kttk @ fƒƒttk tt k@ ksKJ ‚| t ttt ktdk@ fƒƒtdktt k@ ksfJ ‚| t ttt kttk@ fƒƒttktt k@ ksJ ‚| t ttdkttk@ fƒƒtdkttk@ ksšJ ‚| t ttttƒƒdktttƒƒdk B fƒƒtttƒƒdktttƒƒdk B ksÃJ ‚d S )Nc                 S   s   | j d jS rù   )r¯   rg   rµ   rF   rF   rG   rH   *  rN   z%test_piecewise_eval.<locals>.<lambda>r]   r€   r?   )r&   rL   r   r   r   rv   rw   rF   rF   rG   Útest_piecewise_eval&  sh   ÿÿÿÿÿÿÿÿÿÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ*ÿrG  c                  C   s\   t ddd} td|  | dkfd|  dfƒ}t|| ƒtt| ƒ | dkft| ƒdfƒks,J ‚d S )NrL   Trz   rB   r   r?   )r   r&   r1   r"   r)  rF   rF   rG   Útest_issue_22533R  s   2rH  c                   C   s>   t dtdkfdtdkfdtdkfƒt dtdkfdƒksJ ‚d S )Nr?   rC   r]   rQ   rK   rF   rF   rF   rG   Útest_issue_24072X  s   "ÿrI  c                  C   sÆ   t ddd} td| dk ftd|  ƒdfƒ}| | t¡du sJ ‚| | d¡dks)J ‚| | d¡dks3J ‚| | d¡dks=J ‚| | d	¡dksGJ ‚| | td
ƒ¡dksSJ ‚| | td
dd¡dksaJ ‚dS )z9 Issue 24127: Tests eval_is_meromorphic auxiliary method rL   Trz   r?   r   NrB   FrC   rv   )r   r&   r%   Zis_meromorphicr   r   r)  rF   rF   rG   Ú#test_piecewise__eval_is_meromorphic]  s    rJ  N)¤Zsympy.concrete.summationsr   Zsympy.core.addr   Zsympy.core.basicr   Zsympy.core.containersr   Zsympy.core.exprr   Zsympy.core.functionr   r   r	   Zsympy.core.mulr
   Zsympy.core.modr   Zsympy.core.numbersr   r   r   r   r   r   Zsympy.core.relationalr   r   r   r   Zsympy.core.singletonr   Zsympy.core.symbolr   r   Z(sympy.functions.combinatorial.factorialsr   Z$sympy.functions.elementary.complexesr   r   r   r   r   r   r    Z&sympy.functions.elementary.exponentialr!   r"   Z(sympy.functions.elementary.miscellaneousr#   r$   r%   Z$sympy.functions.elementary.piecewiser&   r'   r(   r)   r*   Z(sympy.functions.elementary.trigonometricr+   r,   Z'sympy.functions.special.delta_functionsr-   r.   Z(sympy.functions.special.tensor_functionsr/   Zsympy.integrals.integralsr0   r1   Zsympy.logic.boolalgr2   r3   r4   r5   Z"sympy.matrices.expressions.matexprr6   Zsympy.printingr7   Zsympy.sets.containsr8   Zsympy.sets.setsr9   Zsympy.solvers.solversr:   Zsympy.testing.pytestr;   r<   Zsympy.utilities.lambdifyr=   rv   r’   r   r‘   rL   rb   r>   ru   rx   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*  r2  r3  r5  r9  r>  r@  rB  rC  rF  rG  rH  rI  rJ  rF   rF   rF   rG   Ú<module>   sÐ     $ 
)
-
@lC

-J%#& L
	,