
    Rie                        d dl mZmZ d dlmZmZmZmZ d dlm	Z	m
Z
mZmZmZmZmZmZmZ d dlmZ d dlmZ d dlmZ d dlmZ  edd	
          Z edee          Z edee          Z eddd          Zd Zd Zd Z d Z!d Z"dS )    )Ssymbols)eyeonesMatrix
ShapeError)	Identity
MatrixExprMatrixSymbolDeterminantdetper
ZeroMatrix	Transpose	Permanent)	OneMatrix)raises)Q)refinenT)integerABC      c                     t          t          t                    t                    sJ t          t          t                    t                    rJ t	          t
          d            t          t          d                    dk    sJ t          t          ddg d                    dk    sJ t          t          t                    z  } t	          t          d            t          t                    j
        t          u sJ d S )Nc                  *    t          t                    S N)r   r        Qlib/python3.11/site-packages/sympy/matrices/expressions/tests/test_determinant.py<lambda>ztest_det.<locals>.<lambda>   s    {1~~ r!   r      	r$   r      r   r$   r   r&      r&      c                  4    t          t          j                  S r   )r   r   Oner    r!   r"   r#   ztest_det.<locals>.<lambda>   s    k!%00 r!   )
isinstancer   r   r
   r   r   r   r   r   	TypeErrorarg_s    r"   test_detr0      s    k!nnk22222+a..*55555
:--...s1vv;;!va7778899R????	CFF
A
900111q>>""""""r!   c                  P   t          t          t                              dk    sJ t          t          t          t                              dk    sJ t          t	          t          t                              t          t	          t          t                              k    sJ t          t	          dd                    dk    sJ t          t	          dd                    dk    sJ t          t          t                              t          t                    k    sJ d S )Nr$   r   r&   )r   r	   r   r   r   r   r   r   r    r!   r"   test_eval_determinantr2      s    x{{q    z!Q  A%%%%yA;yA#?#?????yA1$$$$yA1$$$$y||A&&&&&&r!   c                  "   t          t          t                    t          j        t                              dk    sJ t          t          t                    t          j        t                              dk    sJ t          t          t                    t          j        t                              dk    sJ t          t          t                    t          j        t                              t          t                    k    sJ d S )Nr$   r   )r   r   r   r   
orthogonalsingularunit_triangularnormalr    r!   r"   test_refiner8   (   s    #a&&!,q//**a////#a&&!*Q--((A----#a&&!+A..//14444#a&&!(1++&&#a&&000000r!   c                      t          t                    } t          t                    }| j        sJ |j        sJ | |z  || z  k    sJ d S r   )r   r   r   is_commutative)det_adet_bs     r"   test_commutativer=   /   sU    NNENNE5=EEM))))))r!   c                  Z   t          t          t                    t                    sJ t          t          t                    t                    rJ t          t          t                    t                    sJ t          t          dd                                                    dk    sJ t          t          t                    z  } t          t          ddg d                    dk    sJ t          t          d            t          t                    j        t          u sJ d S )Nr      r%   g   c                  4    t          t          j                  S r   )r   r   r*   r    r!   r"   r#   z test_permanent.<locals>.<lambda>=   s    i.. r!   )r+   r   r   r
   r   r   doitr   r   r   r,   r-   r.   s    r"   test_permanentrC   6   s    illI.....)A,,
33333illI.....T!QZZ  %%''1,,,,	CFF
Ava7778899S@@@@
9..///Q<<q      r!   N)#
sympy.corer   r   sympy.matricesr   r   r   r   sympy.matrices.expressionsr	   r
   r   r   r   r   r   r   r   "sympy.matrices.expressions.specialr   sympy.testing.pytestr   sympy.assumptions.askr   sympy.assumptions.refiner   r   r   r   r   r0   r2   r8   r=   rC   r    r!   r"   <module>rK      s   ! ! ! ! ! ! ! ! 8 8 8 8 8 8 8 8 8 8 8 8                     
 9 8 8 8 8 8 ' ' ' ' ' ' # # # # # # + + + + + +GCLaLaLa
# 
# 
#' ' '1 1 1* * *! ! ! ! !r!   