
    \h                     B   S r SSKJr  SSKJrJrJrJrJr  SSK	J
r
Jr  SSKJr  SSKJr  \" SSS5      r\" S	SS
5      r\" / SQ/ SQ/ SQ/5      r\" / SQ/ SQ/ SQ/5      r\" S5      r\" \" S5      5      r\" S5      r\" S5      u  rrrS rS rS rS rS rS rS r g)z
We have a few different kind of Matrices
Matrix, ImmutableMatrix, MatrixExpr

Here we test the extent to which they cooperate
    )symbols)MatrixMatrixSymboleyeIdentityImmutableMatrix)
MatrixExprMatAddclassof)raisesX   v   )r      r   )         )      	   za,b,cc                     [        [        [        -   [        5      (       d   e[        [        [        -   [        5      (       d   e[        S[        -  [        -   [        5      (       d   e[        R	                  [        5      (       d   eg )Nr   )
isinstanceMMIMr   equals     ^/var/www/auris/envauris/lib/python3.13/site-packages/sympy/matrices/tests/test_interactions.py
test_IM_MMr!      s]    b2g////b2g////adRi111199R===r   c                     [        [        S5      [        -   [        5      (       d   e[        [        [        -   [
        5      (       d   e[        [        [        -   [
        5      (       d   e[        S5      [        -   S   S:X  d   eg )Nr   r   r   r   )r   r   r   r	   SMr
   r   r   r    
test_ME_MMr%       sh    hqkB&
3333b2gv&&&&b2gv&&&&QK"d#q(((r   c                      [        S5      [        S5      [        [        S5      5      p!n XU4 H&  nXU4 H  nUR                  U5      (       a  M   e   M(     g )Nr   )r   r   r   r   )abcxys        r    test_equalityr,   '   sL    qk3q6?3q6#:!AAYA88A;;;  r   c                  \    [        SSS5      n [        S5      U -   nUS   SU S   -   :X  d   eg )Nr   r   r#   r   )r   r   )r   Ys     r    test_matrix_symbol_MMr/   .   s7    S!QAA
AT7a!D'k!!!r   c                     [         [        -  n [        [        -  nX:X  d   e[        R                  [         R                  -  R                  nX:X  d   e[        R                  [        R                  -  R                  nX#:X  d   eg N)r   SVr   T)ABCDs       r    /test_matrix_symbol_vector_matrix_multiplicationr8   4   sY    
RA
RA6M6	A6M6	A6M6r   c                  *   [         [        -  S   S[         -  :X  d   e[        [        -   S   [        S   [        S   -   :X  d   e[        [        -  S   [        S   [        S   -  [        S   [        S   -  -   [        S   [        S   -  -   :X  d   eg )Nr#   r   )r   r   )r   r   )r   r   )r   r   )r'   r   r$   r   r   r    test_indexing_interactionsr:   >   s    FD>QqS   GT?bhD1111GT?bhr$x/"T(2d82CC
4D   r   c                  R  ^^ [        SS[        S5      5      m[        SS[        S5      5      n [        SSS5      m[	        TT5      [         :X  d   e[	        X 5      [        :X  d   e[	        TU 5      [        :X  d   e[	        U T5      [        :X  d   e[        [        UU4S j5        g )Nr   r   r6   c                     > [        T T5      $ r1   r   )r4   r6   s   r    <lambda>test_classof.<locals>.<lambda>M   s    gamr   )r   ranger   r   r   r   	TypeError)r5   r4   r6   s    @@r    test_classofrA   E   s    q!U1XA1eAh'AS!QA1a=F"""1=O+++1a=O+++1a=O+++
9+,r   N)!__doc__sympy.core.symbolr   sympy.matricesr   r   r   r   r   sympy.matrices.expressionsr	   r
   sympy.matrices.matrixbaser   sympy.testing.pytestr   r$   r2   r   r   meyeimeyeideyer'   r(   r)   r!   r%   r,   r/   r8   r:   rA   r   r   r    <module>rK      s    &  9 - '#q!#q!Y	9-.iI67
1vA
'
1a)"-r   