
    sg	                        d dl mZmZ d dlmZmZmZmZ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  edd	
      \  ZZZ edee      Z edee      Z edee      Z edee      Z edee      Zd Zd Zd Zd Z d Z!d Z"y)    )symbolsS)MatrixSymbolInverseMatPow
ZeroMatrix	OneMatrix)NonInvertibleMatrixErrorNonSquareMatrixError)eyeIdentity)raises)Q)refinezn m lT)integerABCDEc                  2   t        t              j                  t        t        j                  fk(  sJ t        t              j
                  t        t        fk(  sJ t        t        t        z        j
                  t        t        fk(  sJ t        t        t        z        j
                  t        t        fk(  sJ t        t              j                         t        k(  sJ t        t        t                    j                         t        k(  sJ t        t        t        t                    t               sJ t        t        t        t        z        j                   t        t        t        z        k(  sJ t        j                         j                         t        k(  sJ t        j                         t        z  t        t        j                        k(  sJ t        t              j                         t        t              k(  sJ dt        t              z  j                         t        t              dz  k(  sJ t        t        z  j                         t        j                   t        j                   z  k(  sJ t        t        t        z  j                         t               sJ t        t        t        z        j                  d      t        t        t        z        k(  sJ t        t#        d            j                         t#        d      k(  sJ t        t#        d            j                  d      t#        d      k(  sJ t%        dd      j                   t        d      k(  sJ t        t%        t        t              j                   t               sJ y )N   F)
inv_expand)deep   )r   r   argsr   NegativeOneshapenr   r   minversedoit
isinstancer   rowsr   Ir   r	        `/var/www/html/venv/lib/python3.12/site-packages/sympy/matrices/expressions/tests/test_inverse.pytest_inverser)      so   1:??q!--00001:1v%%%1Q3<!Q'''1Q3<!Q'''1:1$$$71:##%***ggaj)7333GAaCL%%&'!A#,66699; A%%%99;q=HQVV,,,,A; HQK///hqkM""$A555 aC==?acc!##g%%%qsmmow///1Q3<.'!A#,>>>3q6?!SV+++3q6?U+s1v555Q?+++i1o''111r'   c                  H    t        t        d        t        t        d        y )Nc                  >    t        t        t              j                  S N)r   r   r%   r&   r'   r(   <lambda>z-test_inverse_non_invertible.<locals>.<lambda>0   s    Z1-=-?-? r'   c                  .    t        dd      j                  S )N   )r	   r%   r&   r'   r(   r-   z-test_inverse_non_invertible.<locals>.<lambda>1   s    Yq!_->-> r'   )r   r
   r&   r'   r(   test_inverse_non_invertibler0   /   s    
#%?@
#%>?r'   c                      t        t        j                  t        j                  t                    t        j
                  k(  sJ y r,   )r   r   r%   r   
orthogonalTr&   r'   r(   test_refiner4   3   s'    !##q||A'133...r'   c                      t        ddd      } t        t        | d            j                         t        t        |       d      j                         k(  sJ y )Nr   r   )r   r   r   r"   r   s    r(   $test_inverse_matpow_canonicalizationr7   7   sF    S!QA6!Q< %%'6'!*a+@+E+E+GGGGr'   c                  F     t        ddd       t        t         fd       y )Nr   r      c                      t               S r,   )r   r6   s   r(   r-   z&test_nonsquare_error.<locals>.<lambda>>   s     r'   )r   r   r   r6   s   @r(   test_nonsquare_errorr;   <   s    S!QA
!34r'   c                     t        dt        t              } | j                         j                         | j                         j                         k(  sJ | j	                         j                         | j                         j	                         k(  sJ | j                         j                         | j                         j                         k(  sJ y )Nr   )r   r   	transposer!   	conjugateadjointr6   s    r(    test_adjoint_trnaspose_conjugater@   A   s    S!QA;;=  "aiik&;&;&====;;=  "aiik&;&;&====99; AIIK$7$7$9999r'   N)#
sympy.corer   r   sympy.matrices.expressionsr   r   r   r   r	   sympy.matrices.exceptionsr
   r   sympy.matricesr   r   sympy.testing.pytestr   sympy.assumptions.askr   sympy.assumptions.refiner   r   r    lr   r   r   r   r   r)   r0   r4   r7   r;   r@   r&   r'   r(   <module>rI      s    ! [ [ T ( ' # +
'4
(1aaaaaa2<@/H
5
:r'   