ó
¡¼™\c           @   sö   d  d l  m Z m Z m Z d  d l 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 m Z e d d e ƒ\ Z Z Z Z Z e d e e ƒ Z e d	 e e ƒ Z e d
 e e ƒ Z d „  Z d „  Z d „  Z d S(   iÿÿÿÿ(   t   adjointt	   conjugatet	   transpose(   t   MatrixSymbolt   Adjointt   tracet	   Transpose(   t   eyet   Matrix(   t   symbolst   S(   t   refinet   Qs	   n m l k pt   integert   At   Bt   Cc          C   sC  t  d t t ƒ }  t t ƒ t t ƒ k s0 t ‚ t t ƒ j t t f k sQ t ‚ t t t ƒ j t	 t f k sv t ‚ t t t ƒ ƒ t k s” t ‚ t
 t t t ƒ ƒ t ƒ sµ t ‚ t t t ƒ ƒ t t t ƒ ƒ k sß t ‚ t t t ƒ ƒ t t ƒ k st ‚ t t d ƒ ƒ j ƒ  t d ƒ k s-t ‚ t t d ƒ ƒ j ƒ  t d ƒ k sWt ‚ t t d d g d d g g ƒ ƒ j ƒ  t d d g d d g g ƒ k s¥t ‚ t t |  ƒ ƒ t |  ƒ k sÉt ‚ t t |  ƒ ƒ t |  ƒ k sít ‚ t |  ƒ d |  d	 k st ‚ t t t ƒ j ƒ  t t ƒ t t ƒ k s?t ‚ d  S(
   Nt   Sqi   i   i   i   i   i    (   i    i   (   i   i    (   R   t   nR   R   R   t   AssertionErrort   shapet   mR   t   lt
   isinstanceR    R   R   R   t   doitR
   R   R   (   R   (    (    sN   lib/python2.7/site-packages/sympy/matrices/expressions/tests/test_transpose.pyt   test_transpose   s    !%!*$**N$$ c           C   s+   t  t j t j t ƒ ƒ t k s' t ‚ d  S(   N(   R   R   t   TR   t	   symmetricR   (    (    (    sN   lib/python2.7/site-packages/sympy/matrices/expressions/tests/test_transpose.pyt   test_refine'   s    c          C   sO   t  d d d ƒ }  |  t |  j ƒ k s- t ‚ |  t |  j j ƒ k sK t ‚ d  S(   NR   i   (   R   R   R   R   (   R   (    (    sN   lib/python2.7/site-packages/sympy/matrices/expressions/tests/test_transpose.pyt   test_transpose1x1+   s    N(   t   sympy.functionsR    R   R   t   sympy.matrices.expressionsR   R   R   R   t   sympy.matricesR   R   t   sympyR	   R
   R   R   t   TrueR   R   R   t   kt   pR   R   R   R   R   R   (    (    (    sN   lib/python2.7/site-packages/sympy/matrices/expressions/tests/test_transpose.pyt   <module>   s   "!		