a
    kº”h'W  ã                   @   s*  d dl 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
 d dlmZ d dlmZ d dlmZmZ d d	lmZmZmZmZmZmZ 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$ 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!„ Z-d"d#„ Z.d$d%„ Z/d&d'„ Z0d(d)„ Z1d*d+„ Z2d,d-„ Z3d.d/„ Z4d0d1„ Z5e j6 7d2d3d4g¡e j6 7d5eg d6¢g d7¢g d8¢gƒed9d:g d;¢ƒfeg d6¢g d7¢g d8¢gƒed:d<gd9d=gd>d?ggƒfed<d<e
d@ƒƒed<d:e
dAƒƒfg¡dBdC„ ƒƒZ8e j6 7dDd3efeefg¡dEdF„ ƒZ9dGdH„ Z:dS )Ié    N)Ú
expand_mul)ÚIÚRational)ÚS)ÚSymbolÚsymbols)Úsympify)Úsimplify)Ú
ShapeErrorÚNonSquareMatrixError)ÚImmutableMatrixÚMatrixÚeyeÚonesÚImmutableDenseMatrixÚdotprodsimp)Ú_det_laplace)Úraises)ÚNonInvertibleMatrixError)ÚDMShapeError)Úlinsolve)ÚxÚyc                  C   sd   t tdƒƒ} tdƒ< |  tddƒ¡t tdƒƒt ddg ƒfksBJ ‚W d   ƒ n1 sV0    Y  d S )Ná  [
        [             -3/4,       45/32 - 37*I/16,                   0,                     0],
        [-149/64 + 49*I/32, -177/128 - 1369*I/128,                   0, -2063/256 + 541*I/128],
        [                0,         9/4 + 55*I/16, 2473/256 + 137*I/64,                     0],
        [                0,                     0,                   0, -177/128 - 1369*I/128]]Té   é   á¡  [
            [                          -32549314808672/3306971225785 - 17397006745216*I/3306971225785],
            [                               67439348256/3306971225785 - 9167503335872*I/3306971225785],
            [-15091965363354518272/21217636514687010905 + 16890163109293858304*I/21217636514687010905],
            [                                                          -11328/952745 + 87616*I/952745]]r   )r   r   r   Úgauss_jordan_solver   ©ÚM© r    úO/var/www/auris/lib/python3.9/site-packages/sympy/matrices/tests/test_solvers.pyÚ%test_issue_17247_expression_blowup_29   s
    

ür"   c                  C   sX   t tdƒƒ} tdƒ0 |  tddƒ¡t tdƒƒks6J ‚W d   ƒ n1 sJ0    Y  d S )Nr   Tr   r   r   )r   r   r   Úcholesky_solver   r   r    r    r!   Ú%test_issue_17247_expression_blowup_30   s    
r$   c                  C   s¤   t td d td dt  d  tgtdggƒ} t ddgƒ}dd„ }t dt dtd  dt  td d  d t  t gƒ}|| j||d t ddgƒks J ‚d S )Nr   é   r   c                 S   s   |   ¡ rdS dS )NFT)Ú_random)Úer    r    r!   Ú<lambda>@   ó    z)test_LUsolve_iszerofunc.<locals>.<lambda>)Z
iszerofunc)r   r   ÚLUsolve)r   ÚbZis_zero_funcZx_expr    r    r!   Útest_LUsolve_iszerofunc;   s
    0:r,   c               	   C   sÔ   t td dt ddgdt td dtd gddt td dgdddtd ggƒ} tdƒh |  tddƒ¡t td dt  gtd dt  gtd dt  gdtd  ggƒks²J ‚W d   ƒ n1 sÆ0    Y  d S )Nr   r   Tr   )r   r   r   r*   r   r   r    r    r!   Ú%test_issue_17247_expression_blowup_32G   s    ü
ür-   c                     s¸  t g d¢g d¢g d¢gƒ‰ t ddg d¢ƒ} ˆ |  ‰ˆ  ˆ¡}|| ksHJ ‚t g d¢g d¢g d	¢gƒ‰ t ddg d
¢ƒ} ˆ |  ‰ˆ  ˆ¡}|| ksJ ‚t ddgddgddggƒ‰ t g d¢ƒ‰ˆ  ˆ¡t ddgƒksÐJ ‚t g d¢ƒ‰tt‡ ‡fdd„ƒ t g d¢g d¢g d	¢g d¢g d¢g d¢gƒ‰ t g d¢ƒ} ˆ |  ‰ˆ  ˆ¡}|| ksHJ ‚t g d¢g d¢gƒ‰ t g d¢ƒ} ˆ |  ‰tt‡ ‡fdd„ƒ t dddd„ ƒ‰ t  dd¡‰tt‡ ‡fdd„ƒ d S )N©r%   é   é   ©r/   é   r%   ©é   r/   r2   r/   r   ©r/   é   r0   ©r   éÿÿÿÿr%   ©r0   é
   r6   ©r4   r/   r   ©r8   r%   r0   r%   r   )r/   r   r   )r/   r   r%   c                      s
   ˆ   ˆ¡S ©N©r*   r    ©ÚAr+   r    r!   r(   g   r)   ztest_LUsolve.<locals>.<lambda>)r%   r   éüÿÿÿ)r8   r%   r   c                      s
   ˆ   ˆ¡S r=   r>   r    r?   r    r!   r(   u   r)   r   c                 S   s   | dkrd| | d  S dS )Nr/   r   r   r    )ÚiÚjr    r    r!   r(   w   r)   c                      s
   ˆ   ˆ¡S r=   r>   r    r?   r    r!   r(   y   r)   )r   r*   r   Ú
ValueErrorÚNotImplementedErrorÚzerosr   ©r   Úsolnr    r?   r!   Útest_LUsolveT   sN    þ
þ
û
rI   c                  C   sì   t ddd\} }}}t ddd\}}t| |g||ggƒ}|| t||gƒ¡ }|d  ¡ |ksbJ ‚|d || d  | | | d  | | d  | | d  | |  |  || | d  | | d  | | d  | |   ksèJ ‚d S )Núa:4F)Zcommutativeúb:2)r   r   )r   r   r8   )r   r   r*   Úexpand)Za0Za1Za2Úa3Úb0Úb1r@   Úcheckr    r    r!   Útest_LUsolve_noncommutative|   s    D2ÿÿrQ   c                  C   s  t g d¢g d¢g d¢gƒ} t ddg d¢ƒ}| | }|  |¡}||ksHJ ‚t ddgddgd	d
ggƒ}| | }|  |¡}||ks€J ‚t g d¢g d¢g d¢gƒ} t ddg d¢ƒ}| | }|  |¡}||ksÈJ ‚t ddgddgddggƒ}| | }|  |¡}||ksJ ‚d S )Nr.   r1   r3   r/   r   r5   r%   r   r0   r2   r7   r9   r;   r<   r6   r4   é	   r:   é   é   )r   ZQRsolve)r@   r   r+   rH   r    r    r!   Útest_QRsolveŠ   s0    þ

þ

rU   c                   C   s   t tdd„ ƒ d S )Nc                   S   s    t dgƒ t ddgddggƒ¡S )Nr   r%   r/   r   )r   r*   r    r    r    r!   r(   ¤   r)   ztest_errors.<locals>.<lambda>)r   r
   r    r    r    r!   Útest_errors£   s    rV   c            	      C   s°  t g d¢g d¢g d¢gƒ} t ddg d¢ƒ}| | }|  |¡}||ksHJ ‚t g d¢g d¢g d	¢gƒ} t ddg d
¢ƒ}| | }|  |¡}||ksJ ‚t dƒ} t dƒ}| | }|  |¡}||ks¾J ‚t ddt fdt dffƒ} t dƒ}| | }|  |¡}t|ƒ|ksJ ‚t dt dfdt dffƒ} t ddt  dfƒ}| | }|  |¡}t|ƒ|ksZJ ‚tdƒ\}}}}}t ||f||ffƒ} t ||fƒ}|  |¡}t| | ƒ|ks¬J ‚d S )Nr.   r1   r3   r/   r   r5   r7   r9   r;   r<   ))r   r0   )r0   r   )r   éýÿÿÿrR   rW   r0   ©éþÿÿÿr   r%   r8   za00, a01, a11, b0, b1)r   r#   r   r   r   r	   )	r@   r   r+   rH   Za00Za01Za11rN   rO   r    r    r!   Útest_cholesky_solve¦   sH    þ
þ




rZ   c                     s¦  t g d¢g d¢g d¢gƒ‰ t ddg d¢ƒ} ˆ |  ‰ˆ  ˆ¡}|| ksHJ ‚t g d¢g d¢g d	¢gƒ‰ t ddg d
¢ƒ} ˆ |  ‰ˆ  ˆ¡}|| ksJ ‚t ddt fdt dffƒ‰ t dƒ} ˆ |  ‰ˆ  ˆ¡}t|ƒ| ksÖJ ‚t dt dfdt dffƒ‰ t ddt  dfƒ} ˆ |  ‰ˆ  ˆ¡}t|ƒ| ks*J ‚t dƒ‰ t dƒ} ˆ |  ‰ˆ  ˆ¡}t|ƒ| ks^J ‚t g d¢g d¢gƒ‰ t dgdgdggƒ} ˆ |  ‰tt‡ ‡fdd„ƒ d S )Nr.   r1   r3   r/   r   r5   r7   r9   r;   r<   rR   rW   r0   rX   r%   r8   ))rR   r/   )r/   rR   )r   r   )éûÿÿÿrW   rA   )rW   iùÿÿÿr6   r4   r6   rY   c                      s
   ˆ   ˆ¡S r=   )ÚLDLsolver    r?   r    r!   r(   ñ   r)   ztest_LDLsolve.<locals>.<lambda>)r   r\   r   r   r   rE   rG   r    r?   r!   Útest_LDLsolveË   sF    þ
þ



r]   c                  C   sŽ   t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ tddgddggƒ} tttgttggƒ}tddgd	d
ggƒ}|  |¡|ksxJ ‚|  |¡|ksŠJ ‚d S )Nc                   S   s   t ddgƒ t ddgƒ¡S ©Nr   r   ©r   Úlower_triangular_solver    r    r    r!   r(   ÷   r)   z-test_lower_triangular_solve.<locals>.<lambda>c                   S   s    t ddgddggƒ t dgƒ¡S r^   r_   r    r    r    r!   r(   ù   r)   c                   S   s*   t ddgddggƒ t ddgddggƒ¡S ©Nr%   r   r   r_   r    r    r    r!   r(   û   s   ÿr   r   r   r4   r%   rR   )r   r   r
   rD   r   r   r   r`   ©r@   ÚBÚCr    r    r!   Útest_lower_triangular_solveô   s    ÿÿÿre   c                  C   sŽ   t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ tddgddggƒ} tttgttggƒ}tddgd	d
ggƒ}|  |¡|ksxJ ‚|  |¡|ksŠJ ‚d S )Nc                   S   s   t ddgƒ t ddgƒ¡S r^   ©r   Úupper_triangular_solver    r    r    r!   r(   	  r)   z-test_upper_triangular_solve.<locals>.<lambda>c                   S   s    t ddgddggƒ t dgƒ¡S r^   rf   r    r    r    r!   r(     r)   c                   S   s*   t ddgddggƒ t ddgddggƒ¡S ra   rf   r    r    r    r!   r(     s   ÿr   r   r%   r   r/   r4   )r   r   r
   Ú	TypeErrorr   r   r   rg   rb   r    r    r!   Útest_upper_triangular_solve  s    ÿÿÿri   c                      s|   t tdd„ ƒ tddgddggƒd ‰ tttgttggƒ‰ˆ  ˆ¡ˆd ksPJ ‚tddgddggƒ‰ t t‡ ‡fdd„ƒ d S )Nc                   S   s   t ddgƒ t dgƒ¡S )Nr   )r   Údiagonal_solver    r    r    r!   r(     r)   z%test_diagonal_solve.<locals>.<lambda>r   r   r%   c                      s
   ˆ   ˆ¡S r=   )rj   r    ©r@   rc   r    r!   r(     r)   )r   rh   r   r   r   rj   r    r    rk   r!   Útest_diagonal_solve  s    rl   c                  C   s^  t ddgddggƒ} t ddgƒ}|  |¡|  |¡ks8J ‚|  |¡|  |¡ksPJ ‚|  |¡t tdƒtdƒgƒksrJ ‚| |  ¡  | |ksŠJ ‚t g d	¢g d
¢gƒ}|  |¡|  |¡ks¶J ‚|  |¡|  |¡ksÎJ ‚|  |¡t g d¢g d¢gƒd ksôJ ‚| |  ¡  | |ksJ ‚t g d¢g d¢gƒ} t ddgƒ}|  |¡}i }| t¡D ]}|||j< qF|t |d d |d d  |d d  d g|d d |d d  |d d  d g|d  d |d d  |d d  d ggƒksäJ ‚| |  ¡  | |ksþJ ‚t ddgddgddggƒ} t g d¢ƒ}|  |¡t ddgƒks@J ‚| |  ¡  | |ksZJ ‚d S )Nr   r0   r6   rR   rT   é   z-43/26z71/26)rT   rm   é   )é   é   é   )ißÿÿÿiÛÿÿÿi×ÿÿÿ)éE   éK   éQ   é   )r   r   r   )r   r   r   Zw0_0r/   Úw1_0Zw2_0r   r   )r/   r%   r   )	r   Ú
pinv_solver#   r\   r   ÚpinvÚatomsr   Úname)r@   rc   ÚsolutionÚwÚsr    r    r!   Útest_pinv_solve!  s4    "&
,(*þr~   c                  C   sö  t g d¢g d¢gƒt ddgddggƒt ddgddgddggƒg} | D ]d}|jd	d
}|| }|| }t|| ƒ|ksxJ ‚t|| ƒ|ksŒJ ‚|j|ksšJ ‚|j|ksDJ ‚qD| D ]f}|jdd
}|| }|| }t|| ƒ|ksâJ ‚t|| ƒ|ksöJ ‚|j|ksJ ‚|j|ks®J ‚q®t ddgddggƒ}t ddgƒ}| |¡}| t¡ ¡ }|jdks^J ‚|t d|gƒkstJ ‚|| ¡  | |ksŽJ ‚t ddgƒ}| |¡}| t¡ ¡ }|jdksÂJ ‚|t d|gƒksØJ ‚|| ¡  | |ksòJ ‚d S )N©r   r   r   )r%   r%   r%   r   r   r%   r   r/   r2   ZRD)ÚmethodZEDrv   )	r   rx   r	   ÚHrw   ry   r   Úpoprz   )ZAsr@   ZA_pinvZAApZApArc   r{   Zw1r    r    r!   Útest_pinv_rank_deficientB  sB    þ

rƒ   c            
   	      sJ
  t g d¢g d¢g d¢gƒ‰ t g d¢ƒ‰ˆ  ˆ¡\} }| t dgdgdggƒksPJ ‚|t ddg ƒksdJ ‚td	ƒ‰ t g d
¢g d¢g d¢gƒ‰ˆ  ˆ¡\} }| ˆks J ‚|t ddg ƒks´J ‚t g d¢g d¢g d¢gƒ‰ t g d¢ƒ‰ˆ jˆdd\} }}i }|  t¡D ]}|||j< qü| t |d d gd|d  d g|d ggƒksBJ ‚|t |d ggƒks\J ‚|dgkslJ ‚t g d¢g d¢g d¢gƒ‰ t d	dgddgddggƒ‰ˆ jˆdd\} }}i }|  t¡D ]}|||j< qÂ| t |d d |d tdd	ƒ gd|d  d d|d  tdd	ƒ g|d |d ggƒks4J ‚|t |d |d ggƒksTJ ‚|dgksdJ ‚t g d¢g d¢g d¢gƒ‰ t g d¢ƒ‰ˆ  ˆ¡\} }i }|  t¡D ]}|||j< q¦| t d|d  d	|d   g|d g|d ggƒksòJ ‚|t |d g|d ggƒksJ ‚t g d¢g d¢g d¢gƒ‰ t g d¢ƒ‰ˆ  ˆ¡\} }i }|  t¡D ]}|||j< qV| t |d g|d g|d ggƒks’J ‚|t |d g|d g|d ggƒks¼J ‚t g d¢g d¢g d¢gƒ‰ t g d¢ƒ‰tt‡ ‡fdd„ƒ t g d¢g d¢g d ¢g d!¢gƒ‰ t g d"¢ƒ‰ˆ  ˆ¡\} }| t tddƒgdgtddƒggƒksZJ ‚|t ddg ƒkspJ ‚t g d¢g d¢g d ¢g d!¢gƒ‰ t ddgddgddgddggƒ‰ˆ  ˆ¡\} }| t tddƒtddƒgddgtddƒtddƒggƒksúJ ‚|t ddg ƒksJ ‚t g d¢g d¢g d ¢g d!¢gƒ‰ t g d#¢ƒ‰tt‡ ‡fd$d„ƒ t g d¢g d¢g d ¢g d!¢gƒ‰ t ddgddgddgddggƒ‰tt‡ ‡fd%d„ƒ t g d¢g d¢g d ¢g d!¢gƒ‰ t ddgddgddgddggƒ‰tt‡ ‡fd&d„ƒ t g d¢g d'¢g d(¢g d!¢gƒ‰ t g d#¢ƒ‰ˆ  ˆ¡\} }i }|  t¡D ]}|||j< q@| t d)|d  d* gdg|d ggƒks€J ‚|t |d ggƒksšJ ‚t g d¢g d'¢g d(¢g d!¢gƒ‰ t g d+¢ƒ‰tt‡ ‡fd,d„ƒ t g d
¢g d¢g d-¢gƒ‰ t g d.¢ƒ‰ˆ  ˆ¡\} }i }|  t¡D ]}|||j< q| t d|d  d gd)|d  d gdg|d ggƒkslJ ‚|t |d ggƒks†J ‚t g d
¢g d¢g d/¢gƒ‰ t g d0¢ƒ‰ˆ  ˆ¡\} }i }|  t¡D ]}|||j< qÈ| t |d d|d   t	j
 gd|d  d	|d   tddƒ g|d g|d ggƒks8J ‚|t |d g|d ggƒksZJ ‚td1ƒ\}}}}t g d2¢ddddd|ggƒ}	|	d d …d d…f ‰ |	d d …dd …f ‰ˆ  ˆ¡\} }|t d	d|||gƒksØJ ‚| t d*d|d|||gƒksøJ ‚t g d
¢g d¢g d/¢gƒ‰ t g d.¢ƒ‰tt‡ ‡fd3d„ƒ tddgddggƒ‰ tddgƒ‰ˆ  ˆ¡\} }| tddgƒk	svJ ‚|tddg ƒk	sŒJ ‚| jtk	sœJ ‚|jtk	s¬J ‚t g d4¢g d#¢gƒ‰ t ddgƒ‰ˆ  ˆ¡\} }i }|  t¡D ]}|||j< 	qè| t dg|d g|d gdggƒk
s$J ‚|t |d g|d ggƒk
sFJ ‚d S )5N)r   r%   r/   )r   r0   r2   )r6   r4   r:   )r/   r2   rR   r8   r%   r   r   r/   )r   r%   r/   r   )r0   r2   r6   r4   )rR   r:   rS   rT   r   )r6   r4   rR   T)ÚfreevarÚtau0rY   r2   r4   rR   rT   Útau1)r%   r   r2   )r   r   r   Útau2)r   r   r   c                      s
   ˆ   ˆ¡S r=   ©r   r    r?   r    r!   r(   ­  r)   z)test_gauss_jordan_solve.<locals>.<lambda>)r   r0   r/   )r%   r   r2   )r   r6   rR   )r   r   r/   )r   r   r   r   )r   r   r   r   c                      s
   ˆ   ˆ¡S r=   rˆ   r    r?   r    r!   r(   À  r)   c                      s
   ˆ   ˆ¡S r=   rˆ   r    rk   r    r!   r(   Å  r)   c                      s
   ˆ   ˆ¡S r=   rˆ   r    rk   r    r!   r(   Ê  r)   )r%   r:   r2   )r/   ro   rR   rW   r0   )r   r   r   r   c                      s
   ˆ   ˆ¡S r=   rˆ   r    r?   r    r!   r(   Ù  r)   )rR   r:   r   rT   r   )r%   r   r2   r4   )r   r   r   z_tau0 _tau1 _tau2 tau1)r   r   r   r   r   r   c                      s
   ˆ   ˆ¡S r=   rˆ   r    r?   r    r!   r(   ý  r)   )r   r   r   r   )r   r   r   ry   r   rz   r   r   rD   r   ZHalfr   r   Ú	__class__r   )
ÚsolÚparamsr„   r|   r}   Zx0Úx1Zx2Z_x0r   r    )r@   rc   r+   r!   Útest_gauss_jordan_solvek  s    6 $þ ÿ"** *  <      . (ÿ"þ" *r   c                  C   s’  t g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢gƒ} t g d	¢ƒ}|  |¡\}}i }| t¡D ]}|||j< q`|t |d
 g|d g|d g|d g|d g|d ggƒks°J ‚|t dd|d   g|d gdd|d
   |d  g|d
 g|d |d  gd|d  d|d   d|d   gdd|d   g|d g|d g|d g|d gdd|d   g|d gdggƒkszJ ‚ddlm}m} t g d¢dddddddd| g	dddddddd|g	gƒ} t tt	| ƒƒd ƒ}t
dƒ\}	}
}}}|t | | |	 | | d g||
 | | g|	g|
g|| | | g|g|g|ggƒksHJ ‚| d d …d d…f | | d d …df  }|t dgdgdggƒksŽJ ‚d S )N)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   )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   )r   r%   r   r   r   r   r   r%   r…   r†   r‡   Útau3Útau4Ztau5r   r8   r   )rC   Úf)	r   r   r   r   r   r   r   r   r   ztau:5)r   r   ry   r   rz   Ú	sympy.abcrC   r   Úlistr   r   )r@   rc   rŠ   r‹   r|   r}   rC   r   Zsol_1r…   r†   r‡   rŽ   r   Zsol_2r    r    r!   Ú4test_linsolve_underdetermined_AND_gauss_jordan_solve  sf    ùÿ$óýù
(r“   Ú
det_methodZbirdZlaplacezM, rhsr.   r1   r3   r/   r   r5   r%   r   r0   r2   rJ   rK   c                 C   s4   t |j|| d| |¡ ƒt |j|j¡ks0J ‚d S ©N)r”   )r	   Úcramer_solver*   r   rF   ÚrowsÚcols)r”   r   Úrhsr    r    r!   Útest_cramer_solveM  s    ÿrš   zdet_method, errorc                    s:   t g d¢g d¢gƒ‰ t ddgƒ‰t|‡ ‡‡fdd„ƒ d S )Nr7   r9   rY   ro   c                      s   ˆ j ˆˆdS r•   )r–   r    ©r@   r+   r”   r    r!   r(   _  r)   z*test_cramer_solve_errors.<locals>.<lambda>)r   r   )r”   Úerrorr    r›   r!   Útest_cramer_solve_errorsY  s    r   c                      s`   t ddgddggƒ‰ t dgdggƒ‰tt‡ ‡fdd„ƒ t dgdggƒ‰tt‡ ‡fdd„ƒ d S )	Nr   r%   r   r/   c                      s
   ˆ   ˆ¡S r=   ©Zsolver    r?   r    r!   r(   e  r)   ztest_solve.<locals>.<lambda>r4   c                      s
   ˆ   ˆ¡S r=   rž   r    r?   r    r!   r(   g  r)   )r   r   rD   r    r    r?   r!   Ú
test_solveb  s
    rŸ   );ZpytestZsympy.core.functionr   Zsympy.core.numbersr   r   Zsympy.core.singletonr   Zsympy.core.symbolr   r   Zsympy.core.sympifyr   Zsympy.simplify.simplifyr	   Zsympy.matrices.exceptionsr
   r   Zsympy.matricesr   r   r   r   r   r   Zsympy.matrices.determinantr   Zsympy.testing.pytestr   r   Zsympy.polys.matrices.exceptionsr   Zsympy.solvers.solvesetr   r‘   r   r   r"   r$   r,   r-   rI   rQ   rU   rV   rZ   r]   re   ri   rl   r~   rƒ   r   r“   ÚmarkZparametrizerš   r   rŸ   r    r    r    r!   Ú<module>   s\    (%)	!) ):(ÿüÿ
