a
    lº”hø?  ã                   @   sØ  d dl mZmZmZmZmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ d dl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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„ Z(dd„ Z)dd„ Z*dd„ Z+dd„ Z,dd„ Z-dd„ Z.dd„ Z/dd „ Z0d!d"„ Z1d#d$„ Z2d%d&„ Z3d'd(„ Z4d)d*„ Z5d+d,„ Z6d-d.„ Z7d/d0„ Z8d1d2„ Z9d3d4„ Z:d5d6„ Z;d7d8„ Z<d9d:„ Z=d;d<„ Z>d=d>„ Z?d?d@„ Z@dAdB„ ZAdCdD„ ZBdEdF„ ZCdGdH„ ZDdIdJ„ ZEdKdL„ ZFdMS )Né    )ÚsymbolsÚSymbolÚTupleÚooÚDummy)ÚIndexException)Úraises)Úiterable)ÚSum)ÚFunctionÚSubsÚ
Derivative)ÚStrictLessThanÚGreaterThanÚStrictGreaterThanÚLessThan)ÚS)ÚexpÚlog)ÚcosÚsin©ÚKroneckerDelta)ÚOrder)ÚRange)ÚIndexedBaseÚIdxÚIndexedc                     sô   t ddd\‰ } }tˆ ƒtˆ dƒks(J ‚tˆ | ƒtˆ d| d fƒksHJ ‚tˆ tƒtˆ dtfƒksdJ ‚t ddd‰tt‡fdd	„ƒ ttd
d	„ ƒ tt‡ ‡fdd	„ƒ tt‡ fdd	„ƒ tt‡ ‡fdd	„ƒ tt‡ ‡fdd	„ƒ tt‡ fdd	„ƒ d S )Núi a bT©Úintegeré   r   ÚxFc                      s   t ˆ ƒS ©N©r   © ©r"   r%   úM/var/www/auris/lib/python3.9/site-packages/sympy/tensor/tests/test_indexed.pyÚ<lambda>   ó    z'test_Idx_construction.<locals>.<lambda>c                   S   s   t dƒS ©Ng      à?r$   r%   r%   r%   r'   r(      r)   c                      s
   t ˆ ˆƒS r#   r$   r%   ©Úir"   r%   r'   r(      r)   c                      s
   t ˆ dƒS r*   r$   r%   ©r,   r%   r'   r(      r)   c                      s   t ˆ ˆdfƒS )Né   r$   r%   r+   r%   r'   r(      r)   c                      s   t ˆ dˆfƒS )Né   r$   r%   r+   r%   r'   r(       r)   c                      s
   t ˆ dƒS )N)r/   g      @r$   r%   r-   r%   r'   r(   !   r)   )r   r   r   r   Ú	TypeError)ÚaÚbr%   r+   r'   Útest_Idx_construction   s     r3   c                  C   s^   t ddd\} }}t| ƒjs J ‚t| ƒjdks2J ‚t| d ƒjdksHJ ‚tdƒjdksZJ ‚d S )Nr   Tr   r,   r/   zi + 2Zfoo)r   r   Ú
is_integerÚname©r,   r1   r2   r%   r%   r'   Útest_Idx_properties$   s
    r7   c                  C   sJ  t ddd\} }}t| ƒjd u s$J ‚t| ƒjd u s6J ‚t| |ƒjdksJJ ‚t| |ƒj|d ksbJ ‚t| dƒjdksvJ ‚t| dƒjdksŠJ ‚t| tƒjdksžJ ‚t| tƒjtu s²J ‚t| ||fƒj|ksÊJ ‚t| ||fƒj|ksâJ ‚t| dƒjdksöJ ‚t| dƒjdksJ ‚t| t tfƒjt u s*J ‚t| t tfƒjtu sFJ ‚d S )	Nr   Tr   r   r!   r.   é   ©r!   r.   ©r   r   ÚlowerÚupperr   r6   r%   r%   r'   Útest_Idx_bounds,   s    r=   c                  C   sL  t ddd\} }}}t|ƒjd u s&J ‚t|ƒjd u s8J ‚t||ƒjdksLJ ‚t||ƒj|d ksdJ ‚t|dƒjdksxJ ‚t|dƒjdksŒJ ‚t|tƒjdks J ‚t|tƒjtu s´J ‚t|||fƒj|ksÌJ ‚t|||fƒj|ksäJ ‚t|dƒjdksøJ ‚t|dƒjdksJ ‚t|t tfƒjt u s,J ‚t|t tfƒjtu sHJ ‚d S )	Nzi a b xTr   r   r!   r.   r8   r9   r:   )r,   r1   r2   r"   r%   r%   r'   Útest_Idx_fixed_bounds>   s    r>   c                  C   s  t ddƒ} t ddƒ}t ddƒ}t ddƒ}| d	ks4J ‚| d	k s@J ‚| d	krLJ ‚| d	krXJ ‚d	| ksdJ ‚d	| kspJ ‚d	| kr|J ‚d	| k rˆJ ‚t| d	ƒs–J ‚t| d	ƒs¤J ‚t| d	ƒr²J ‚t| d	ƒrÀJ ‚| d
ksÌJ ‚t| d
k tƒsÞJ ‚t| d
ktƒsðJ ‚| d
krüJ ‚t| dktƒsJ ‚| dk rJ ‚| dks,J ‚t| dktƒs@J ‚| dkrNJ ‚| dk r\J ‚| dksjJ ‚| dksxJ ‚ddlm} t| |k tƒs˜J ‚t| |ktƒs¬J ‚t| |ktƒsÀJ ‚t| |ktƒsÔJ ‚| |k sâJ ‚| |ksðJ ‚| |krþJ ‚| |krJ ‚| |ksJ ‚t| |k tƒs.J ‚t| |ktƒsBJ ‚| |krPJ ‚t| |k tƒsdJ ‚t| |ktƒsxJ ‚t| |ktƒsŒJ ‚t| |ktƒs J ‚t dƒ}t dƒ}t||k tƒsÄJ ‚t||ktƒsØJ ‚t||ktƒsìJ ‚t||ktƒs J ‚d S )NÚi14©r!   r8   Úi79)é   é	   Úi46)r8   é   Úi35)é   r.   r.   r8   r!   r   r&   ÚiNone1ÚiNone2)r   r   r   r   r   Ú
isinstanceZ	sympy.abcr"   )r?   rA   rD   rF   r"   rH   rI   r%   r%   r'   Útest_Idx_inequalitiesP   sf    



rK   c                  C   sN   t ddƒ} tdƒ| ksJ ‚tdƒ| ks*J ‚tdƒ| kr:J ‚tdƒ| k rJJ ‚d S )Nr?   r@   r.   )r   r   )r?   r%   r%   r'   Ú#test_Idx_inequalities_current_fails“   s
    
rL   c                  C   sr   t ddd\} }}t| ƒ}|j|jŽ |ks.J ‚t| |ƒ}|j|jŽ |ksLJ ‚t| ||fƒ}|j|jŽ |ksnJ ‚d S )Nr   Tr   )r   r   ÚfuncÚargs)r,   r1   r2   Úiir%   r%   r'   Útest_Idx_func_argsœ   s    
rP   c                  C   sº   t ddd\} }}t| |ƒ ||¡t| |ƒks2J ‚t| |ƒ | |¡t||ƒksRJ ‚t| ƒ | d¡tdƒksnJ ‚t| |ƒ |d¡t| dƒksŽJ ‚t| ||fƒ | d¡td||fƒks¶J ‚d S )Nr   Tr   r/   )r   r   Úsubsr6   r%   r%   r'   Útest_Idx_subs¦   s       rR   c                  C   s¦   t ddd\} }t dƒ}t|| |ƒ}t|ƒ}||| |f ks@J ‚||| |f ksTJ ‚||| |g kshJ ‚||t| |ƒ ks~J ‚tdd„ |d jdd … D ƒƒs¢J ‚d S )	Núi jTr   r1   c                 s   s   | ]}|j V  qd S r#   )Z
is_Integer)Ú.0r1   r%   r%   r'   Ú	<genexpr>¹   r)   z)test_IndexedBase_sugar.<locals>.<genexpr>)r!   r   r!   )r   r   r   r   ÚallrN   )r,   Újr1   ÚA1ÚA2r%   r%   r'   Útest_IndexedBase_sugar°   s    rZ   c                  C   sl   t ddd} t dƒ\}}t|ƒ}t|ƒ}||  ||   ||¡ksDJ ‚ddi}|d |d  ||¡kshJ ‚d S )Nr,   Tr   úa br!   r/   ©r   r   rQ   )r,   r1   r2   ÚAÚBÚCr%   r%   r'   Útest_IndexedBase_subs¼   s    r`   c                     sJ  t ddd\‰‰} }td| | fd}td| |fd‰ˆjt| |ƒksHJ ‚|ˆˆf ˆˆˆf ksdJ ‚|ˆˆf ˆˆˆf  || ¡ksˆJ ‚ˆjˆjŽ ˆksœJ ‚ˆˆˆf jˆˆˆf jŽ ˆˆˆf ksÈJ ‚tt‡‡fdd„ƒ tt‡‡‡fdd„ƒ td	| d‰ ˆ jt| ƒksJ ‚ˆ ˆ  ˆˆ¡ˆ ˆ ks0J ‚tt‡ ‡‡fd
d„ƒ d S )Nzi j m nTr   r1   ©Úshapec                      s   ˆ ˆ S r#   r%   r%   )r2   r,   r%   r'   r(   Ï   r)   z(test_IndexedBase_shape.<locals>.<lambda>c                      s   ˆ ˆˆˆf S r#   r%   r%   )r2   r,   rW   r%   r'   r(   Ð   r)   ÚFc                      s   ˆ ˆˆf S r#   r%   r%   )rc   r,   rW   r%   r'   r(   Ô   r)   )	r   r   rb   r   rQ   rM   rN   r   r   )ÚmÚnr1   r%   )rc   r2   r,   rW   r'   Útest_IndexedBase_shapeÆ   s    $,rf   c                  C   sÂ   t ddd} t dƒ}t|dd}|||  fD ]T}|js:J ‚|jsDJ ‚|jrNJ ‚|jsXJ ‚|jsbJ ‚|jslJ ‚tt	|ƒƒ|ks,J ‚q,|t|ƒks’J ‚|t|dddks¨J ‚||  t
|| ƒks¾J ‚d S )Nr,   Tr   r1   )Úpositive)rg   Úreal)r   r   Úis_realZ
is_complexZis_imaginaryZis_nonnegativeZ
is_nonzeroZis_commutativer   r   r   )r,   r1   r]   Úcr%   r%   r'   Útest_IndexedBase_assumptions×   s    





rk   c                  C   s\   t ddd} t| ƒ}tddd}|js*J ‚|js4J ‚|jjs@J ‚|jjsLJ ‚||ksXJ ‚d S )NÚITr   )r   r   r4   Úlabel)rl   Z	I_inheritZ
I_explicitr%   r%   r'   Ú(test_IndexedBase_assumptions_inheritanceé   s    

rn   c                  C   sV   G dd„ dt ƒ} | dƒ}t|ƒ| ks(J ‚t|ƒ}t|ƒ| ks@J ‚t|jƒ| ksRJ ‚dS )z`Regression test issue #17652.

    IndexedBase.label should not upcast subclasses of Symbol
    c                   @   s   e Zd ZdS )z"test_issue_17652.<locals>.SubClassN)Ú__name__Ú
__module__Ú__qualname__r%   r%   r%   r'   ÚSubClassú   s   rr   ÚXN)r   Útyper   rm   )rr   r"   Úbaser%   r%   r'   Útest_issue_17652õ   s    rv   c                      sŽ   t ddd\‰‰tdˆˆƒ‰ ˆ ttdƒˆˆƒks4J ‚ˆ ttdƒˆˆƒksLJ ‚tt‡ ‡‡fdd„ƒ ttdd„ ƒ ˆ jˆ ˆ jj	ˆˆhksŠJ ‚d S )NrS   Tr   r]   c                      s   t ˆ ˆˆƒS r#   ©r   r%   ©r]   r,   rW   r%   r'   r(   	  r)   z*test_Indexed_constructor.<locals>.<lambda>c                   S   s   t dƒS ©Nr]   rw   r%   r%   r%   r'   r(   
  r)   )
r   r   r   r   r   r0   r   Zfree_symbolsru   rm   r%   r%   rx   r'   Útest_Indexed_constructor  s    rz   c                  C   s<   t ddd\} }t dƒ}t|| |ƒ}||j|jŽ ks8J ‚d S )NrS   Tr   r1   )r   r   rM   rN   )r,   rW   r1   r]   r%   r%   r'   Útest_Indexed_func_args  s    r{   c                  C   sz   t ddd\} }}t dƒ\}}t|ƒ}t|ƒ}|| |f || |f  ||¡ksRJ ‚|| |f || |f  ||¡ksvJ ‚d S )Nzi j kTr   r[   r\   )r,   rW   Úkr1   r2   r]   r^   r%   r%   r'   Útest_Indexed_subs  s    $r}   c                     s  t ddd\‰‰tdˆˆƒ‰ ˆ jdks*J ‚ˆ jdks8J ‚ˆ jˆˆfksJJ ‚ˆ jtdƒks\J ‚ˆ jd d gksnJ ‚tt	‡ fdd„ƒ t d	dd\} ‰tdt
ˆˆƒt
ˆ| ƒƒjtd
ˆd ƒtd
| d ƒgksÊJ ‚tdt
ˆˆƒt
ˆ| ƒƒjtˆ| ƒksòJ ‚tt	‡‡‡fdd„ƒ d S )NrS   Tr   r]   zA[i, j]r/   c                      s   ˆ j S r#   ra   r%   )r]   r%   r'   r(   &  r)   z)test_Indexed_properties.<locals>.<lambda>ún mr   r!   c                      s   t dtˆ ˆƒtˆƒƒjS ry   )r   r   rb   r%   )r,   rW   rd   r%   r'   r(   ,  r)   )r   r   r5   ÚrankÚindicesru   r   Úrangesr   r   r   r   rb   )re   r%   )r]   r,   rW   rd   r'   Útest_Indexed_properties  s$    ÿÿÿ(r‚   c                  C   s  t ddd\} }t ddd\}}t ddd\}}td||fd}|jt||ƒksTJ ‚t|t| |ƒt||ƒƒjtd|d	 ƒtd|d	 ƒgksŽJ ‚t|t| |ƒt||ƒƒjt||ƒks¶J ‚t|t| |ƒt|ƒƒjtd|d	 ƒd
gksäJ ‚t|t| |ƒt|ƒƒjt||ƒksJ ‚d S )NrS   Tr   zo pr~   r1   ra   r   r!   )NN)r   r   rb   r   r   r   r   )r,   rW   ÚoÚpre   rd   r1   r%   r%   r'   Útest_Indexed_shape_precedence/  s"    ÿÿ(ÿÿr…   c                  C   sH   t ddd\} }td| | | ƒ}|jdks.J ‚|j| | | fksDJ ‚d S )NrS   Tr   r]   r/   )r   r   r   r€   ©r,   rW   r]   r%   r%   r'   Útest_complex_indices=  s    r‡   c                  C   s0   t ddd\} }td| | | ƒ}t|ƒr,J ‚d S )NrS   Tr   r]   )r   r   r	   r†   r%   r%   r'   Útest_not_interableD  s    rˆ   c                  C   s|   t ddd} | }td|d ƒ}td|fd}d||d   ||   || ¡}|| ||d    || ¡}||ksxJ ‚d S )NÚNTr   r,   r!   Úyra   )r   r   r   Zcoeff)r‰   Zlen_yr,   rŠ   r1   r2   r%   r%   r'   Útest_Indexed_coeffJ  s    "r‹   c                  C   sè  ddl m}  tdtd\}}}}tdƒ}tdddd\}}|jsDJ ‚td	td\}}	|| ||  }
}|
}| |¡| ||ƒks‚J ‚| |
¡| ||ƒksšJ ‚td
ƒ|
 }| |¡td
ƒ| ||ƒ ksÆJ ‚| |
¡td
ƒ| ||ƒ ksæJ ‚| |¡tju súJ ‚t	||t
 t
fƒ |¡t	d
| ||ƒ |t
 t
fƒks4J ‚t	| |¡|t
 t
fƒt	d
| ||ƒ |t
 t
fƒksnJ ‚t	||t
 t
fƒ |¡ ¡ d
ks”J ‚t	| |
¡|t
 t
fƒ ¡ t	d
|t
 t
fƒ ¡ ksÌJ ‚t	||t
 t
fƒ |
¡ ¡ t
u sòJ ‚|| | td
ƒ }| |
¡|||  | ||ƒ ks,J ‚| |¡|| td
ƒ ksLJ ‚| |d
¡tju sdJ ‚t	||t
 t
fƒ |
¡t	|| ||ƒ ||  |t
 t
fƒks¦J ‚t	| |
¡|t
 t
fƒt	|| ||ƒ ||  |t
 t
fƒksèJ ‚t	||t
 t
fƒ |
¡ ¡ |||  ksJ ‚t	||t
 t
fƒ |
¡t	|| ||ƒ ||  |t
 t
fƒksXJ ‚t	| |
¡|t
 t
fƒt	|| ||ƒ ||  |t
 t
fƒksšJ ‚t	||t
 t
fƒ |
¡ ¡ |||  ksÈJ ‚|t|| ƒ }| |
¡d
| t|| ƒ | | ||ƒ ks
J ‚| |¡d
| t|| ƒ | ks2J ‚||	||f  ||  }| |
¡||	||f  | ||ƒ kstJ ‚| |¡||	||f  ks”J ‚| |	||f ¡|||  ks¸J ‚| |	||f ¡|| ||ƒ | ||ƒ ||  ksðJ ‚| |	||f ¡|| ||ƒ ||  ksJ ‚t	||t
 t
fƒ |	||f ¡t	|| ||ƒ | ||ƒ ||  |t
 t
fƒksrJ ‚t	||t
 t
fƒ |	||f ¡ ¡ || ||ƒ ||  ks²J ‚||  || ¡dksÎJ ‚||  || ¡| ||ƒksðJ ‚t	|||  |t
 t
fƒ || ¡t	|| ||ƒ |t
 t
fƒks6J ‚t	|||  |t
 t
fƒ || ¡ ¡ |kshJ ‚t	|||  |t
 t
fƒ || ¡t	|| ||ƒ |t
 t
fƒks®J ‚t	|||  |t
 t
fƒ || ¡ ¡ t
| ksäJ ‚d S )Nr   r   zi j k l©Úclsr1   zm, nT)r    Zfinitezh Lr/   r!   )Ú(sympy.functions.special.tensor_functionsr   r   r   ri   r   Údiffr   ZZeror
   r   Zdoitr   r   )r   r,   rW   r|   Úlr1   rd   re   ÚhÚLÚhiZhjÚexprr%   r%   r'   Útest_differentiationT  s\    
  ::&8&& BB.BB.2(* $8.T@"F2Fr•   c                  C   sp   t dƒ} tddd}t| | ƒ | | ¡| | | | d d  | | d d  t| | d | | ƒ kslJ ‚d S )	Nr]   r,   Tr   rG   rE   r.   éx   )r   r   r   Zseriesr   )r]   r,   r%   r%   r'   Útest_indexed_series  s    r—   c                  C   s²   t dƒ} tdƒ\}}}| |  ¡ r&J ‚| |  |¡s8J ‚| dd|  |f  ¡ rTJ ‚| dd|  |f  |¡rrJ ‚| dd|  |f  |¡sJ ‚| dd|  |f  |¡r®J ‚d S )Nr]   úi,j,kr!   r/   )r   r   Úis_constant)r]   r,   rW   r|   r%   r%   r'   Útest_indexed_is_constant–  s    rš   c                  C   s–   t dƒ} t tdƒƒtdddƒks$J ‚| d  tdƒtdƒ¡dksDJ ‚| d  | tdƒ¡dks`J ‚| d  | tdƒ¡dks|J ‚ttdƒdƒdks’J ‚d S )NÚdr.   r   r!   r/   )r   Úranger   rQ   r   r   )r›   r%   r%   r'   Útest_issue_12533¡  s     r   c                      s.   t dƒ‰tddˆfƒ‰ tt‡ ‡fdd„ƒ d S )Nre   r,   r   c                      s   ˆ   ˆd¡S )Ng      ø?)rQ   r%   ©r,   re   r%   r'   r(   ­  r)   z"test_issue_12780.<locals>.<lambda>)r   r   r   r0   r%   r%   rž   r'   Útest_issue_12780ª  s    rŸ   c                      sj   t dƒ‰ tdˆ ƒjdksJ ‚tdˆ ƒjdks0J ‚tdˆ ƒjˆ d ksHJ ‚t ddd‰ tt‡ fdd„ƒ d S )	Nrd   r,   r   r!   F)rh   c                      s
   t dˆ ƒS )Nr,   r$   r%   ©rd   r%   r'   r(   ¶  r)   z"test_issue_18604.<locals>.<lambda>)r   r   r5   r;   r<   r   r0   r%   r%   r    r'   Útest_issue_18604°  s    r¡   c                  C   sÖ  t dƒ} tdƒ\}}}tdƒ\}}}tdƒ}t| | | | | | ƒ | | ¡dksVJ ‚t| | | | |ƒ | | ¡dks|J ‚t| | | | |ƒ | | ¡dks¢J ‚t| | | | |ƒ |¡dksÄJ ‚t| | | | |ƒ |¡dksæJ ‚t| | | | | | ƒ | | ¡t||ƒksJ ‚t||| | ƒ | | ¡t||ƒksBJ ‚t|| | ƒ| | |ƒ | | ¡dksnJ ‚t|| | ƒ| | | | ƒ | | ¡t|| | ƒ| | ƒt||ƒ ksºJ ‚t||| | d ƒ | | ¡dt||ƒ | |  ksôJ ‚t| | | | | | d ƒ | | ¡dt||ƒ | |  ks6J ‚t| | | || | ƒ | | ¡d| |  ksjJ ‚t| | | || | ƒ | | ¡d| |  t||ƒ ks¨J ‚t| | | || | ƒ | | ¡| | | | t||ƒ  ksêJ ‚t| | | || | ƒ | | ¡| | | | t||ƒ  ks,J ‚t| | | || | ƒ | | ¡d| |  t||ƒ ksjJ ‚t| | | || | ƒ | | ¡t||ƒ| |  t||ƒ| |   ks¶J ‚t| | | | | |ƒ | | ¡dksâJ ‚t| | | | | |ƒ | | ¡dksJ ‚t| | | | | |ƒ | | ¡|ks:J ‚t| | | | | |ƒ | | ¡|t||ƒ kspJ ‚t| | | | | |ƒ | | ¡dksœJ ‚t| | | | | |ƒ | | ¡|t||ƒ ksÒJ ‚d S )Nr]   r˜   zx,y,zÚfr!   r   r/   )r   r   r   r   r   r   r   )r]   r,   rW   r|   r"   rŠ   Úzr¢   r%   r%   r'   Útest_Subs_with_Indexed¸  s6    *&&""2*,L:B4>BB>L,,,6,r¤   c               
   C   s   t dtd\} }t dƒ}t dƒ\}}}t dƒ\}}}}	}
}tdƒ}|| | ||  d | ƒ}t dtd}| | | ¡ | | ||  t||ƒ d tt||ƒ|ƒ|f| | ||  d | fƒ | ¡sÎJ ‚| | | ¡ | | ¡ dt||ƒ t||ƒ tt||ƒ|ƒ|f| | ||  d | fƒ | d	| | ||  d  t||ƒ t||ƒ tt||ƒ||ƒ|f| | ||  d | fƒ |d   ¡sœJ ‚d S )
Nzx,yrŒ   Úsigmar˜   zm0:6r¢   r/   Zxi_1r8   )	r   r   r   r   r   Zdummy_eqr   r   r   )r"   rŠ   r¥   r,   rW   r|   Zm0Úm1Úm2Zm3Zm4Zm5r¢   r”   Z_xi_1r%   r%   r'   Ú(test_complicated_derivative_with_IndexedÙ  sV    ÿýÿûÿÿýÿû*ýÿûúÿr¨   c                  C   sl   t ddd} t ddd}t dƒ}| d |d  |d | d  ksDJ ‚| d |d  |d | d  kshJ ‚d S )NÚtF)ZcommutativeÚuÚvr   )r   )r©   rª   r«   r%   r%   r'   Útest_IndexedBase_commutativeú  s
    $r¬   N)GZ
sympy.corer   r   r   r   r   Zsympy.tensor.indexedr   Zsympy.testing.pytestr   Zsympy.utilities.iterablesr	   Zsympy.concrete.summationsr
   Zsympy.core.functionr   r   r   Zsympy.core.relationalr   r   r   r   Zsympy.core.singletonr   Z&sympy.functions.elementary.exponentialr   r   Z(sympy.functions.elementary.trigonometricr   r   rŽ   r   Zsympy.series.orderr   Zsympy.sets.fancysetsr   r   r   r   r3   r7   r=   r>   rK   rL   rP   rR   rZ   r`   rf   rk   rn   rv   rz   r{   r}   r‚   r…   r‡   rˆ   r‹   r•   r—   rš   r   rŸ   r¡   r¤   r¨   r¬   r%   r%   r%   r'   Ú<module>   sX   C	



	
<	!!