
    \h                         S SK Jr  S SKJr  S SKJrJrJr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Jr  \" S\\5      r\" S\\	5      rS	 rS
 rS rS rS rS r\S 5       rS rS rg)    )MatrixSliceMatrixSymbol)abcdklmn)raisesXFAIL)floor)assumingQXYc                      [        [        [        [        4[        [
        45      n U R                  [        [        -
  [
        [        -
  4:X  d   eg N)r   r   r   r   r   r	   shapeBs    c/var/www/auris/envauris/lib/python3.13/site-packages/sympy/matrices/expressions/tests/test_slice.py
test_shaper      s6    A1v1v&A77q1ua!en$$$    c                     [        [        [        [        4[        [
        45      n U S   [        [        [        4   :X  d   eU [        [        4   [        [        [        -   [        [        -   4   :X  d   e[        [        S 5        [        SS S2S S 24   S   [        S   :X  d   e[        S S 2SS S24   S   [        S   :X  d   eg )Nr   r   c                  *    [        [        SS5      S   $ )N         )r    r   )r   r    r   r   <lambda>test_entry.<locals>.<lambda>   s    Aq& 9$ ?r   r    r"   r       )r(   r(   )r(   r    )
r   r   r   r   r   r	   r
   r   r   
IndexErrorr   s    r   
test_entryr*      s    A1v1v&AS6Qq!tWQqS6QqsAaCx[   
:?@QTT1W:dqy(((Q1W:dqy(((r   c                      [        [        [        [        4[        [
        45      R                  (       a   e[        [        [        [        4[        [        45      R                  (       d   eg r   )r   r   r   r   r   r	   on_diagr$   r   r   test_on_diagr-      sB    1q!fq!f-5555q1a&1a&)1111r   c                      [        [        SS5      [        [        SS5      :X  d   e[        [        SS5      R                  S:X  d   eg )Nr    r!   )r    r"   r'   )r   r   r   r$   r   r   test_inputsr/      s?    q!V$Avv(FFFFq!V$**f444r   c                     [         SS2SS24   [        [         SS5      :X  d   e[         SSS24   [        [         SS5      :X  d   e[         SS2S S 24   R                  S[         R                  S   4:X  d   e[         S S 2SS24   R                  [         R                  S   S4:X  d   e[         S S S2S S S24   R                  [        [        S-  5      [        [
        S-  5      4:X  d   e[         SS S 24   [        [         SS[
        45      :X  d   e[         [        S S 24   [        [         [        S[
        45      :X  d   eg )Nr    r#   r"      )r    r#   )r"   r1   r   )r   r   r   r   r   r   r
   r$   r   r   test_slicingr2   !   s   QqS!A#X;+a8888Q!V9Aq&1111QqS!V9??q!''!*o---Q!V9??qwwqz1o---SqS#A#X;qsU1Q3Z 8888QT7k!QA////QT7k!QA////r   c                     ^  [        SSS5      m [        [        U 4S j5        [        [        U 4S j5        [        [        U 4S j5        g )Nx
      c                     > T SS2S4   $ )Nr      r"   r$   r   s   r   r%   !test_exceptions.<locals>.<lambda>-   s    q2qzr   c                     > T SS2S4   $ )Nr   	      r$   r9   s   r   r%   r:   .   s    q1bzr   c                     > T SS2S4   $ )Nr#   r"   r$   r9   s   r   r%   r:   /   s    qAqzr   )r   r   r)   r9   s   @r   test_exceptionsr@   +   s2    S"b!A
:)*
:)*
:)*r   c                      [        SSS5      n U S S2SS 24   n[        [        R                  " U 5      5         UR                  U SS 2S S24   :X  d   e S S S 5        g ! , (       d  f       g = f)Nr4   r5   r#   )r   r   r   	symmetricT)r   r   s     r   test_symmetryrD   1   s_    S"b!A	"1"ab&	A	!++a.	!ssaBQBi 
"	!	!s   A
A,c                     [        SSS5      n U SS S 24   S S 2S4   S   U S   :X  d   eU S S2S S24   S S2S S24   U S S2S S24   :X  d   eU S	S2SS
24   S	S2S4   U SS2S4   :X  d   eU S	SS2SS
24   S	S2S4   U SSS2S4   :X  d   eg )Nr4   r5   r"   r(   r   )r"   r(   r#   r1   r       r<      r   r9   s    r   test_slice_of_slicerH   8   s    S"b!AQT71a4=!D')))RaR!V9RaR!V"1"bqb&	)))QqS!A#X;qsAv!AaCF)+++QqUAaCZ=1a Aa!eQhK///r   c                  J    [        SSS5      n U SS S 24   U SS S 24   :X  d   eg )Nr4   r5   r?   r<   r   r9   s    r   test_negative_indexrJ   ?   s.    S"b!ARU8qAwr   N)  sympy.matrices.expressions.slicer   sympy.matrices.expressionsr   	sympy.abcr   r   r   r	   r
   r   r   r   sympy.testing.pytestr   r   #sympy.functions.elementary.integersr   sympy.assumptionsr   r   r   r   r   r*   r-   r/   r2   r@   rD   rH   rJ   r$   r   r   <module>rQ      sw    8 3 , , , . 5 ) aa%)250+    0r   