a
    {þdPð  ã                   @   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™eVd–d—„ ƒZšd˜d™„ Z›dšd›„ Zœdœd„ Zdž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   sn  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sPJ ‚tttdk fddƒtttdk fdƒkszJ ‚tttdk fddddkfƒtttdk fƒ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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sNJ ‚tttdk fttdk ftdfƒtksxJ ‚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ún J ‚ttdfƒtksJ ‚ttdd
„ ƒ ttdfƒtks4J ‚ttdd
„ ƒ ttdd
„ ƒ ttdd
„ ƒ tdƒtddƒksvJ ‚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s¾J ‚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svJ ‚| 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sPJ ‚| td¡tdƒksjJ ‚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s6J ‚tdtttƒfdƒ tt¡dks\J ‚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s0J ‚tdttd dƒfdtdk fƒ tt¡dksbJ ‚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s6J ‚ttttddfƒtdk fƒ}| ¡ ttjtdk fƒksrJ ‚t}t| }tdtdk fdt tdk fdt tdkfƒ}t| | }t|tƒ|ksÊJ ‚t|| tƒ|ksâJ ‚t| |ksôJ ‚t| | |t|  k	sJ ‚|| || k	s(J ‚|| || k	s>J ‚|| ||  k	sVJ ‚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
s2J ‚t|tdk f|dfƒ}| tdd¡dk
s`J ‚| tdd¡| k
szJ ‚| tdd¡| td¡| td¡ k
s¦J ‚| tdd¡|k
s¾J ‚| td d¡| td¡k
sÞJ ‚| 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sXJ ‚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sNJ ‚t"|tƒrf|j#du sjJ ‚d S )$Né   r   T©r   T©r?   T)r   Féÿÿÿÿé   c                   S   s   t ƒ S ©N©r&   © rF   rF   úx/var/www/html/stable-diffusion-webui/venv/lib/python3.9/site-packages/sympy/functions/elementary/tests/test_piecewise.pyÚ<lambda>7   ó    z!test_piecewise1.<locals>.<lambda>F©Úevaluatec                   S   s   t tƒS rD   ©r&   ÚxrF   rF   rF   rG   rH   =   rI   c                   S   s   t tdfƒS ©NrC   rL   rF   rF   rF   rG   rH   ?   rI   c                   S   s   t ttd fƒS rN   rL   rF   rF   rF   rG   rH   @   rI   c                   S   s   t dgdfƒS ©Nr?   TrE   rF   rF   rF   rG   rH   A   rI   ))r?   rC   T©rC   Té   é   é   éûÿÿÿé
   ç        zf,g,h)ÚclsÚn)Únegativeg      ð¿éþÿÿÿ)Úsubsg      ð?é   é   éöÿÿÿ)$r   r&   r*   rM   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Úp6rX   Zf_intÚfpZdpZfp_dxZdp2Úf1Úf2ZpevalZpeval_intervalZpeval2rF   rF   rG   Útest_piecewise1$   s    ÿ
ÿÿÿÿ
ÿ
*ÿ
þ
ÿ
"ÿ
 ÿ
þ,<, ..&&&&"ÿ
*(ÿÿ
26 ,4ÿ
ÿ
ÿ
ÿ, "ý(  0(rs   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&   rM   Úar`   Zfree_symbols©rj   rF   rF   rG   Útest_piecewise_free_symbols½   s    rv   c                  C   s¼  t ddd\} }t| d d | dkfdƒ}t|| ddfƒtdd	ƒksHJ ‚t| d
 d
 | dkf|d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k fƒksÌJ ‚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sVJ ‚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   rZ   é   r\   r]   rS   é+   rQ   iCýÿÿé   i_ýÿÿ)r   r&   r1   r   )rM   r`   rj   rk   rF   rF   rG   Útest_piecewise_integrate1Â   s    *"  (" r}   c                  C   s>  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svJ ‚|  td¡ tt df¡dks˜J ‚t| tdt fƒtdtƒks¸J ‚t| tdtfƒtdtƒ t ksÜJ ‚t| tt dfƒtdtƒ d ksJ ‚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 ]J}|  t|df¡| t|¡ks”J ‚|  td|f¡| t|¡ksnJ ‚qn|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&   rM   r   r1   r`   r   r$   r[   r#   r   rc   )rk   Ú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s J ‚| tddf¡| | d¡ksÀJ ‚| tddf¡| | d¡ksàJ ‚| td	df¡| | d	¡ksJ ‚| tdd	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¡ƒ 	¡ 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sHJ ‚|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 ‚d S )
Nr`   Trx   r?   r   rB   r@   rZ   rC   )r   r&   rM   r9   Úcontainsr1   r[   r'   ÚrewriteÚsimplifyr   rc   r$   r#   ©r`   rk   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sžJ ‚| tddf¡| | d¡ks¾J ‚| tddf¡| | d¡ksÞJ ‚| tddf¡| | d¡ksþJ ‚| tdd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¡ƒ ¡ 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sDJ ‚|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 ‚d S )
Nr`   Trx   r   rB   r?   rZ   rC   r@   )r   r&   r5   rM   r1   r[   r'   r…   r†   r   rc   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 ‚qÂd S )	Nr   ©Úpermutationsr?   rC   ©r\   TrZ   T)r?   rC   r\   rS   )Ú	itertoolsr‹   r   rM   ÚcÚdr&   rt   Úbr1   r$   r#   ÚdictÚzipr[   )r‹   Úlimrf   ÚqÚvÚrrF   rF   rG   Útest_piecewise_integrate2K  s    
:4þ
r—   c                   C   s*   t dtdk fdƒ ttdf¡dks&J ‚d S )Nr?   rS   r@   r~   )r&   rM   r1   r   rF   rF   rF   rG   Útest_meijer_bypassX  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sLJ ‚qL| 	td	¡ 	td¡d
ks¦J ‚tdttkfdttk fdƒ}| |¡}| |ddD ]<\}}ttttf||fƒƒ}| 	|¡| 	|¡ |¡ksØJ ‚qØd S )Nr   )Úcartesr]   )rZ   rB   r   r?   rC   r]   rQ   rR   r?   rC   r@   )ÚrepeatrS   rR   )
Zsympy.utilities.iterablesr™   rM   r&   rt   r   r1   r‘   r’   r[   )r™   r“   ÚNrf   ÚansÚiÚjÚrepsrF   rF   rG   Ú/test_piecewise_integrate3_inequality_conditions^  s    

 
r    c                  C   sp  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 ]Š}| |
¡}tdƒD ]r}| d	|d||i}| |¡| |¡ |
 |¡¡ksFJ ‚| d|d	||i}| |¡| |¡ |
 |¡¡ksJ ‚qqöt||tƒ}
||||||	fD ]Œ}| |
¡}tdƒD ]r}| 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srJ ‚qr| |¡td|| k f|  | |t
| |ƒkf|  t
| |ƒ dfƒksÖJ ‚|	 |¡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 ]Œ}| |
¡}tdƒD ]r}| d	|d||i}| |¡| |¡ |
 |¡¡ks.J ‚| d|d	||i}| |¡| |¡ |
 |¡¡ksôJ ‚qôqÞd S )Nrt   Trx   r   rM   r`   r   rA   r?   r@   r]   r\   )r   r&   r5   r2   r   r   r1   Úranger[   r$   r#   r   rc   )rt   r   rM   r`   Úp0Úp1rg   rh   ri   rn   r“   rf   rœ   r   rŸ   rF   rF   rG   Ú-test_piecewise_integrate4_symbolic_conditionsx  sp    
&,
&.ý

ý

ý"(
&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sLJ ‚d S )Nr   Tr?   r\   rS   )r&   r   r`   rM   r1   ©rf   rF   rF   rG   Ú0test_piecewise_integrate5_independent_conditions¹  s    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   TrS   )r&   r3   rM   r`   r'   r   rc   r…   r¥   rF   rF   rG   Útest_issue_22917¾  s4    &.ÿ( ÿÿþ(.ÿ( ÿÿþü$þ,.ÿr§   c            
      C   sZ
  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slJ ‚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szJ ‚t | t|tƒ¡Ž  ¡ | t|tƒ¡ks¨J ‚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s8J ‚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ƒ}	|	 ¡ j|	jks,J ‚t dtdk fdtdk fdƒ ¡ t dtdk fdƒksdJ ‚t dtdkfƒ ¡ t dtdkf|dfƒks”J ‚t dtdkttk @ fƒ ¡ t dtdkttk @ f|dfƒ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fdƒk	shJ ‚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
sVJ ‚d S )NrC   r?   r   rB   TrA   r@   rj   r   ©ÚintegerrX   Út©ZpositiverS   rZ   r~   r\   r]   rŒ   )r&   rM   r   r†   r   rt   r2   r   r   r`   r   r,   r   r   r[   r   r   rc   r)   Úargsr   )
rf   r¬   rœ   rj   r   rX   rª   ÚexprÚnanZcoveredrF   rF   rG   Útest_piecewise_simplifyÎ  s”   .ÿÿÿÿþ&ÿÿÿþýý
"*ÿ
$.P(ÿÿÿÿÿÿÿÿ(ÿÿÿ4ÿÿÿÿÿ$ÿÿÿÿ÷	ÿÿ"ÿÿ&ÿÿÿÿÿÿÿ(ÿÿÿÿÿÿÿ ÿÿÿÿö÷6ÿÿÿ,ÿ
ÿÿÿý$ÿ
ÿÿ
&ÿ
&ÿ
&ÿÿ
&ÿ
&ÿÿr¯   c                     sj  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sZJ ‚t td d tdkfdƒ‰ tˆ tƒdgksˆJ ‚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sôJ ‚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sœJ ‚|dd„ |D ƒƒddgks¼J ‚|dd„ |D ƒƒddgksÜJ ‚|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sfJ ‚d S )Nr   rC   r?   r\   rA   r]   rS   T)rU   FrB   r@   c                      s
   t ˆ tƒS rD   )r:   rM   rF   ru   rF   rG   rH   E  rI   z&test_piecewise_solve.<locals>.<lambda>c                 S   s   t tdd„ | ƒƒS )Nc                 S   s
   | t juS rD   )r   ÚNaN©rM   rF   rF   rG   rH   H  rI   z4test_piecewise_solve.<locals>.nona.<locals>.<lambda>)ÚlistÚfilter)rœ   rF   rF   rG   ÚnonaG  s    z"test_piecewise_solve.<locals>.nonac                 S   s   g | ]}|  td ¡‘qS )rZ   ©r[   r`   ©Ú.0r   rF   rF   rG   Ú
<listcomp>K  rI   z(test_piecewise_solve.<locals>.<listcomp>c                 S   s   g | ]}|  td ¡‘qS )rC   rµ   r¶   rF   rF   rG   r¸   L  rI   rZ   c                 S   s   g | ]}|  td ¡‘qS )r\   rµ   r¶   rF   rF   rG   r¸   M  rI   rf   r«   rj   rP   )r&   rM   r[   r:   r;   ÚNotImplementedErrorr`   r   r°   r   r   r   r2   r%   )Úabs2rk   r´   rf   rœ   Zabsxm3rF   ru   rG   Útest_piecewise_solve%  sd    "" &ÿ4"
  ýþþ&&ÿ
$r»   c                  C   s>  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sHJ ‚t| |  ƒt dt tdk fddtkfƒksvJ ‚t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 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s4J ‚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   rP   rU   )r^   Té   )iøÿÿÿTr@   rS   TrZ   FrJ   )	r&   rM   r'   r1   r   r`   r3   r   r
   )rf   r£   rg   rt   r   rF   rF   rG   Útest_piecewise_foldh  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sPJ ‚| td¡dksdJ ‚| tt d ¡dks~J ‚t dt| dƒfdƒ}t|ƒ}tddƒD ] }| t|¡| t|¡ks¤J ‚q¤dt dtdk fd	ƒk }t|ƒ}tdƒD ] }| t|¡| t|¡ksìJ ‚qìt 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sVJ ‚qVd S )
Nr   r@   TrC   r?   rS   rA   rB   rŒ   )	r&   r+   rM   r   r   r[   r   r'   r¡   )	r£   rg   ri   rœ   r   Úr1rn   ro   Ú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sxJ ‚d S )Nr   r@   r?   T)r&   r+   rM   r   r   r'   )r£   rg   rh   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s‚J ‚ttdt |  ƒd dt dt |fdƒks°J ‚|t dt |fdƒksÊJ ‚|ttdt |  ƒƒksæJ ‚d S )Nr?   r   FTr@   rJ   )r&   r9   r„   rM   r'   r	   )r£   rg   re   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&   rM   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sdJ ‚|jdd|ksxJ ‚ttt tdtfƒ ¡ } |  ¡ | ks J ‚d S )Nr?   rC   rB   r\   F©Údeep)r&   rM   r0   rb   r   r`   r   )r£   rg   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sBJ ‚|  t¡t dtddƒ t¡fdƒksjJ ‚t| tƒt dtdkftd d tdkftjdfƒks¢J ‚d S )Nr   r?   r@   g      à¿ç      à?rC   T)	r&   rM   r9   r„   r[   r   r1   r   rc   )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sVJ ‚t| d ƒt dtdk ftjttdƒfdtdkfddd ks–J ‚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s8J ‚tt dttkfƒddt dttkfƒksfJ ‚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?   FrJ   rC   T)Zskip_nanzxr, yrrx   rP   rŒ   r\   rÄ   )	r&   rM   r   rc   r(   r   r`   r°   r   )rf   ZxrÚyrr£   Zp1xrg   Zp2xZp2xxrF   rF   rG   Útest_piecewise_exclusiveÎ  sL     ÿ$ÿÿ
ÿÿÿþþþÿÿ
rÊ   c               	   C   sl  t tdfƒtksJ ‚tdk } t t| ftd | fƒt t| fƒksBJ ‚t t| ftd | jfƒt t| fƒksjJ ‚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 ]F}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s0J ‚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s”J ‚t d|	fd|	 fdtjfƒt d|	fdtjfƒksÊJ ‚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shJ ‚d S )NTr?   r]   c                 S   s   t | tƒrt| jŽ S | S rD   )rd   r&   r¬   )r   rF   rF   rG   Ú	canonicalò  s    

z*test_piecewise_collapse.<locals>.canonicalrC   r\   ©rS   T©r]   T)r   rC   rU   rK   Fzr1:5rS   )rQ   TrŒ   )r?   rC   r\   rS   g      @rP   )r&   rM   Úreversedr[   r   r5   r   Útruer2   r‘   r’   )rt   r   rË   r¬   r   r¾   Z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sTJ ‚|d	ƒd	ksdJ ‚|d
ƒd
kstJ ‚|dƒd	ks„J ‚d S )NrC   r   r?   FTr@   g       Àg      @rV   rÇ   g       @)r&   rM   r9   r„   r=   )rf   rj   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svJ ‚d S )Nr   )ÚOrC   r?   )rX   )Zsympy.series.orderrÒ   r&   r,   rM   r+   Znseries)rÒ   r£   rg   rF   rF   rG   Útest_piecewise_series(  s    "2rÓ   c                  C   sn  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sÖJ ‚| t¡d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 ‚| t¡tksRJ ‚| t¡dt ksjJ ‚d S )Nr?   r@   Tr   )r&   rM   Zas_leading_term)r£   rg   rh   ri   rn   ro   r¿   Úp8rF   rF   rG   Útest_piecewise_as_leading_term/  s     rÕ   c                  C   s<  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sŠJ ‚t|ƒt| ƒks J ‚t|ƒ|ks°J ‚| jdu s¾J ‚| jdu sÌJ ‚|jdu sÚJ ‚|jdu sèJ ‚|jd u söJ ‚|jd u sJ ‚|  ¡ | dfksJ ‚| ¡ dt | fks8J ‚d S )NrC   r   r?   TF)r&   rM   r   r   r'   Zis_imaginaryZis_realZas_real_imag)r£   rg   rh   ri   rF   rF   rG   Útest_piecewise_complexB  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spJ ‚| ¡ tt| |d  ƒtdkft| d | ƒdfƒksªJ ‚| ¡ tt| |d  ƒtdkft| d | ƒdfƒksäJ ‚d S )NúA BF)ZcommutativerC   r   T)r   r&   rM   r   r   r    )ÚAÚBrf   rF   rF   rG   Útest_conjugate_transposeW  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sTJ ‚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sœJ ‚d S )NTrJ   r?   F)r&   rM   r   r¬   r¥   rF   rF   rG   Útest_piecewise_evaluateb  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sHJ ‚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s”J ‚d S )Nr   TrC   r@   )r&   rM   Úas_expr_set_pairsr9   r   rF   rF   rF   rG   Útest_as_expr_set_pairsn  s    "ÿ(ÿrÝ   c                  C   s0   t dttdƒfdƒ} tt| ƒƒ}| |ks,J ‚d S )NrU   r   )é   T)r&   r   rM   r   r7   )rf   r”   rF   rF   rG   Útest_S_srepr_is_identityv  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szJ ‚qzd S )Nr?   rS   rC   r\   rB   rŒ   rT   r]   é   r~   )r&   rM   r4   r1   r`   r¡   r[   )rf   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s0J ‚tdtttdk tdkƒtdk ƒfdƒ  tddf¡dksjJ ‚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kfdtdtƒ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t td ktdk ƒfdƒ  tddf¡dksDJ ‚tdtdkfdttd kfdƒ  tddf¡dkszJ ‚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sRJ ‚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säJ ‚|   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sLJ ‚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]   rS   rQ   rP   rB   TrR   é   rU   é   )r1   rM   r%   r   r&   r2   r5   r   r   r)   r`   r$   r   rc   r[   r4   r°   )rf   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s4J ‚tdttdktdk ƒfƒ t¡t| tdk fttdk f| dfƒksxJ ‚tdttdktdk ƒfƒ tddf¡| u s¦J ‚tdttdktdk ƒfƒ tddf¡dksÔJ ‚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\   rS   r×   za brx   )r)   r&   rM   r1   r2   r   r5   )r®   rØ   rÙ   rt   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sTJ ‚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   rj   æ  s    ztest_issue_11922.<locals>.fc                    s    ˆ t ƒˆ t |  ƒ  t ddf¡S )NrB   r?   ©rM   r1   ©Úkru   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ç   ru   rF   rG   rH   ì  s    ÿÿr\   Tr«   r?   rU   )r   r[   r&   rM   r1   )Zautocorrrè   Zgood_autocorrrt   rF   ru   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s”J ‚t|ƒdks¤J ‚t dtt dk fdƒ t¡t dttkft t dfƒksàJ ‚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&   rM   r1   r   r0   rb   Ústrr`   )rj   r   rF   rF   rG   Útest_issue_5227÷  s,    ÿÿÿÿûÿÿrì   c            
      C   st  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sŒJ ‚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sJ ‚t||ƒ}	|	|ksJ ‚| |ddf¡tdtd| ƒƒd ksFJ ‚| |ddf¡tdtd| ƒƒd kspJ ‚d S )Nrt   Trx   r   rM   r`   r   rA   r?   r@   rC   rS   )r   r&   r5   r1   r   r2   r#   r$   )
rt   r   rM   r`   r¢   r£   rh   ri   Zip3Zip4rF   rF   rG   Útest_issue_10137  s&    $

ý
*rí   c                     sž   dd„ ‰ ‡ fdd„} | t ƒ}| t d¡| t d¡ks8J ‚| t d¡dksLJ ‚tˆ t t ƒˆ tƒ ƒtdtd	ktdk@ t t d	k@ t t dk@ fd
ƒksšJ ‚d S )Nc                 S   s   t d| dk| dk@ fdƒS )Nr?   rB   r@   rE   r±   rF   rF   rG   rH     rI   z-test_stackoverflow_43852159.<locals>.<lambda>c                    s$   t ˆ | t ƒˆ tƒ tt t
 fƒS rD   )r1   r`   r   r±   ru   rF   rG   rH     rI   g      ø¿g      ø?r\   r   r?   rB   r@   )rM   r[   r'   r`   r&   )ZConvZcxrF   ru   rG   Útest_stackoverflow_43852159  s    *þrî   c                  C   s®   t ddd} t dddd}dd„ }t|| ƒ| t tfƒtd ksDJ ‚t||  ƒt| d ƒ }t|| t tfƒtdd	|  |d  d|d   t|d
ƒftd dfƒksªJ ‚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))))
    rM   Trx   rè   )r©   Zfinitec                 S   s   t |  | dkf| | dkfƒS ©Nr   rE   r±   rF   rF   rG   rH   D  rI   z"test_issue_12557.<locals>.<lambda>rC   rB   r   N)r   r1   r   r+   r%   r&   r   )rM   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s¢J ‚| tdƒƒD ]T}t	t
||f|ƒƒ}tddƒD ]2}	| |¡ ||	¡| |¡ |¡ ||	¡ksÎJ ‚qÎq®t|||ƒ}
| |
¡}t| t tt|t||ƒƒ  ||kfdƒ}| tdƒƒD ]D}t	t
|||f|ƒƒ}| |¡ |
 |¡¡}|| |¡ksRJ ‚qR||ks¦J ‚d S )	Nr   rŠ   z
t0, t1 T tTrC   rB   r\   r@   )r   r‹   r   r&   rM   r2   r1   r#   r¡   r‘   r’   Úxreplacer[   r   r$   )r‹   Út0Út1ÚTrª   rj   rk   r   rŸ   Úttr“   rœ   ZtrurF   rF   rG   Útest_issue_6900J  s4    .

ý
ÿ
$þ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sRJ ‚d S )Nr?   r   )	r:   ÚabsrM   r5   r2   r   r   ZZeroZOnerF   rF   rF   rG   Útest_issue_10122d  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sÈJ ‚d S )Nr   r?   TrC   rB   )
r&   rM   rt   r[   r`   r#   r1   r	   r"   r   )ÚuÚeÚMrF   rF   rG   Útest_issue_4313i  sÌ    $ 

Fÿ
ÿÿ0
ÿÿÿÿÿ
þ
þþü ùDÿÿÿþ
þþþ
ýý8
ÿ ÿþþþýý
ü
üüúõ( ÿ$ÿ"þ þý
ý
ýýýùërý   c                   C   sN  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s‚J ‚t dtttƒfdƒ t¡dt tddfgfks´J ‚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sJJ ‚d S )NrC   r\   Tr?   rA   r@   r   rZ   )rB   r   r?   r   )r   r?   r?   r   )r&   rM   r   Z
_intervalsr   r   r   r+   r,   r   r   rF   rF   rF   rG   Útest__intervalsŒ  s6    (&ýýýÿ
$ÿ"ÿÿ
ÿÿÿ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s´J ‚d S )N)r?   rC   r\   rS   r]   r?   TrC   r   rS   )r&   rM   r   r1   r   )rt   r   rŽ   r   rû   rf   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s`J ‚t| tdk fdƒ t¡tttd ƒtdk fdƒks–J ‚d S )Nr?   r   rC   r@   rA   )r-   rM   r1   r   r&   r   r.   )Úd1rF   rF   rG   Útest_piecewise_with_DiracDeltaª  s    "ÿr  c                  C   sx  t dtdk fdƒjd u sJ ‚t dtdk fdƒjdu s8J ‚tddd} t dtdk f| dfƒjs`J ‚t dtdk f| td	k fƒjd u s„J ‚tdƒ} t dtdk f| dfƒjd u s¬J ‚t dtdk fdƒjd u sÈJ ‚t dtdk fd
ƒjsàJ ‚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sbJ ‚t|ƒdkstJ ‚d S )Nr   r?   rA   rB   Frt   T)Zzeror\   rP   )	r&   rM   Úis_zeror   Z
is_nonzeror   Ú	is_finiter   r'   ©rt   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spJ ‚qpd S )Nr?   rP   r\   rŒ   )r   rC   rS   )r&   rM   r'   r[   )rt   r   Úmrj   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s¦J ‚td|dk fd	ƒ}td|dk fd
ƒ}t|| |ddfƒdksæJ ‚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szJ ‚dD ]f}
tddƒD ]T}t| d|ƒD ]>}|| k|
f||f||fg}|	 |¡| |¡ ¡ ksžJ ‚qžqŒq~d S )Nzc:5rM   r?   rC   Tr\   rS   r   rP   r@   rQ   r`   r«   z	a,b,c,x,zrx   )TF)	r   r&   r   r1   r0   rb   r$   r¡   r[   )rŽ   rM   rq   rr   r`   rt   r   r>   r   rœ   re   r‚   ÚzzrŸ   rF   rF   rG   Útest_issue_8919×  s2    $:ÿþþ8r	  c                  C   sò   t dƒ} tdt| tƒd dƒfdtd dk fdƒ}| t¡t|tƒksJJ ‚| tddf¡t|tddfƒksnJ ‚t|tddfƒ | tƒtd ¡ ¡ dksšJ ‚| 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sîJ ‚d S )	Nrj   r?   r   rC   rU   r@   r]   g      $@)
r   r&   r   rM   r1   r0   r[   rX   r`   r   )rj   rf   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sXJ ‚d S )Nza:cr?   r   T)r   r&   rM   r`   r3   r  rF   rF   rG   Ú%test_conditions_as_alternate_booleans  s    $ÿr  c                     sd  t dƒ\‰‰} }dd„ ‰ ˆ ˆtdk fˆtdkfƒttdk ˆˆƒksFJ ‚ˆ ˆtdk fˆttk fƒttdk ˆˆƒkstJ ‚ˆ ˆ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sàJ ‚ˆ ˆ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dk f| dfƒttdk ˆttdk ˆ| ƒƒksdJ ‚ˆ ˆ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     rI   z/test_Piecewise_rewrite_as_ITE.<locals>.<lambda>c                      s   ˆ t t tk ftt ˆkfƒS rD   )rM   r`   rF   )r  rt   rF   rG   rH      rI   c                      s   ˆ ˆt dk fˆt dkfƒS )NrC   r\   r±   rF   ©r  rt   r   rF   rG   rH   !  rI   )
r   rM   r3   r   r5   r`   r;   r_   r¹   Ú
ValueError)rŽ   r   rF   r  rG   Útest_Piecewise_rewrite_as_ITE  s4    ..,ÿ*ÿ
ÿ
"ÿ
(ÿ
"ÿ
r  c                   C   s(   t tttƒƒtddt fƒdks$J ‚d S )Nr   rC   rS   )r1   rø   r,   rM   r   rF   rF   rF   rG   Útest_issue_14052$  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s¨J ‚t tdd„ tddƒD ƒŽ ƒttdƒtfdƒksÚJ ‚d S )Nr?   rC   rÌ   râ   )é   Té	   é   )rã   Tr\   rÍ   rR   )r¼   Trz   é!   )é7   Tc                 S   s   g | ]}t |tfd ƒ‘qS ©r@   ©r&   rt   r¶   rF   rF   rG   r¸   2  s   z$test_issue_14240.<locals>.<listcomp>é(   i  r@   c                 S   s   g | ]}t |tfd ƒ‘qS r  r  r¶   rF   rF   rG   r¸   5  s   é)   )r'   r&   rt   r   r   r¡   r
   r   rF   rF   rF   rG   Útest_issue_14240(  s0    ÿÿýÿÿý
ÿþ
ÿþr  c                  C   s>   t dƒ} t| | dk ftdƒd dfƒ}t| ¡ ƒdks:J ‚d S )NrM   r?   é:   rR   Tz/Piecewise((x, x < 1), (8.28571428571429, True)))r   r&   r   rë   ra   ©rM   rj   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 ]N}|D ]B}	| |||	i‰ ‡ fdd„||||fD ƒ}
t	t
|
ƒƒdks@J ‚q@q8d S )	Nzb erC   r?   r   rB   rZ   c                    s   g | ]}|  ˆ ¡‘qS rF   )rò   )r·   rè   ©r–   rF   rG   r¸   a  rI   z$test_issue_21481.<locals>.<listcomp>)r   r&   r   r   r   rc   r   r'   r†   ÚlenÚset)r   rû   ÚCrØ   rÙ   ÚsaZsbr•   r   rž   ÚokrF   r  rG   Útest_issue_21481?  s\    ÿþ&ýÿÿþ&ýÿ&ÿÿ&ÿÿò0ür$  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s–J ‚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 )Nrw   r   TrS   rC   r?   rB   )r   r&   r   r,   r†   )rM   r`   r£   rg   rh   rF   rF   rG   Útest_issue_8458e  s    FJr%  c               	   C   s”  t dƒ} ttdttt| ƒdƒtt| ƒdƒƒfdƒs6J ‚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shJ ‚|tdt
|dƒftjdfd	d
ksJ ‚d S )Nr>   r?   r   rP   rM   Tr–   rx   FrJ   )r   r   r&   r5   r   r   r   r   r   ÚPir   r°   r   )r>   rM   r–   rf   r   rF   rF   rG   Útest_issue_16417r  s6    .þþ

þ
þ
ÿ
ÿr'  c                     sÒ  t dƒ\} }}}}}t‰ ‡ fdd„}tdt| |ƒfdƒ}||ƒdˆ | |ƒ ksRJ ‚t| t|dƒf|t|dƒf|dfƒ}||ƒ|ˆ d|ƒ ˆ d|ƒ |ˆ d|ƒ  |ˆ d|ƒ  | | ˆ d|ƒ  |ˆ d|ƒ ˆ d|ƒ  |ˆ d|ƒ  ksîJ ‚tdt| |ƒfdƒ}	||	ƒdˆ | |ƒ ksJ ‚tdt| d	ƒfd
dƒ}
||
ƒdd	ˆ d	| ƒ  ksTJ ‚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sPJ ‚tdt| d	ƒt|dƒ@ fdƒ}||ƒ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ƒB fdƒ}||ƒdˆ d| ƒ ˆ d|ƒ d ks6J ‚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sTJ ‚tdt|dƒt| dƒt| |ƒ@ B fd
ƒ}||ƒdˆ d| ƒ ˆ d|ƒ ˆ | |ƒ dˆ d| ƒ ˆ | |ƒ  dˆ d|ƒ  d ksÖJ ‚td| dkfdƒ}||ƒ|ksúJ ‚tdt| dk | dkƒfdƒ}||ƒ|ks(J ‚tdt| dk| dk ƒfdƒ}||ƒ|ksVJ ‚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   •  rI   z5test_eval_rewrite_as_KroneckerDelta.<locals>.<lambda>r   rA   r?   Tr@   r\   rÌ   rÍ   rS   rC   r~   rQ   r]   éüÿÿÿrP   rB   rZ   rŒ   rT   râ   )r   r/   r&   r   r   r2   r5   )rM   r`   r>   rX   rª   r  rj   r£   rg   rh   ri   rn   ro   r¿   rÔ   Zp9Zp10Zp11Zp12Zp13Zp14Zp15Zp16Zp17Zp18Zp19Zp20Zp21Zp22rF   r(  rG   Ú#test_eval_rewrite_as_KroneckerDelta’  s‚    $<ÿÿÿ
  6828**28F*4D ÿÿÿ&ÿÿ6,.ÿ6(Z4r+  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    r0  c                  C   s:   t dtdkfƒ} t| tdtddƒfƒ}t|ƒdks6J ‚d S )Nr?   i`	  r   z252.4é   z252.400000000000000000000000000)r&   rM   r1   r   rë   )rj   r•   rF   rF   rG   Útest_issue_7370è  s    r2  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 )NrM   r`   Úinpr?   )r   r   r   T)r   r6   r&   r3   rò   )rM   r`   r3  Zrep_dictrf   rF   rF   rG   Útest_issue_14933î  s    r4  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&   rM   r`   rÜ   rF   rF   rF   rG   rH   ú  rI   z"test_issue_16715.<locals>.<lambda>)r;   r¹   rF   rF   rF   rG   Útest_issue_16715ù  s    r5  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s‚J ‚d S )	Nzt tauTrx   rX   r¨   r   rC   r?   )r   r   r   rc   r1   r!   r†   )rª   ÚtaurX   ZlamÚeqrF   rF   rG   Útest_issue_20360ý  s
    r8  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spJ ‚| 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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s8J ‚| t ttdktdk @ fƒƒtdktdk @ ksjJ ‚| 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s6J ‚| t ttt ktdk @ fƒƒtdk tt k@ kslJ ‚| 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tk@ fƒƒttktt 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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¬   re   r±   rF   rF   rG   rH   	  rI   z%test_piecewise_eval.<locals>.<lambda>r\   r~   r?   )r&   rM   r   r   r   rt   ru   rF   rF   rG   Útest_piecewise_eval  sh    ÿÿÿÿÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
*ÿr9  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sXJ ‚d S )NrM   Trx   rB   r   r?   )r   r&   r1   r"   r  rF   rF   rG   Útest_issue_225331  s    r:  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\   rP   rL   rF   rF   rF   rG   Útest_issue_240727  s    "ÿr;  c                  C   sÆ   t ddd} td| dk ftd|  ƒdfƒ}| | t¡du s>J ‚| | d¡dksRJ ‚| | d¡dksfJ ‚| | d¡dkszJ ‚| | d	¡dksŽJ ‚| | td
ƒ¡dks¦J ‚| | td
dd¡dksÂJ ‚dS )z9 Issue 24127: Tests eval_is_meromorphic auxiliary method rM   Trx   r?   r   NrB   FrC   rt   )r   r&   r%   Zis_meromorphicr   r   r  rF   rF   rG   Ú#test_piecewise__eval_is_meromorphic<  s    r<  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=   rt   r   rŽ   r   rM   r`   r>   rs   rv   r}   rƒ   rˆ   r‰   r—   r˜   r    r¤   r¦   r§   r¯   r»   r½   rÀ   rÁ   rÂ   rÃ   rÆ   rÈ   rÊ   rÐ   rÑ   rÓ   rÕ   rÖ   rÚ   rÛ   rÝ   rß   rá   rä   rå   ré   rì   rí   rî   rñ   r÷   rù   rý   rþ   rÿ   r  r  r  r	  r
  r  r  r  r  r  r$  r%  r'  r+  r0  r2  r4  r5  r8  r9  r:  r;  r<  rF   rF   rF   rG   Ú<module>   sÌ    $ 
)
-
@WC

-J%#& L
	,