ó
¡¼™\c           @   sÚ  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
 d  d l 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 m Z m Z m Z m Z m Z m Z m Z m Z m  Z  m! Z! m" Z" d „  Z# d „  Z$ d „  Z% d	 „  Z& d
 „  Z' e d „  ƒ Z( d „  Z) d „  Z* d „  Z+ d „  Z, d „  Z- d „  Z. d „  Z/ d „  Z0 d „  Z1 d „  Z2 d „  Z3 d „  Z4 d „  Z5 d „  Z6 d „  Z7 d „  Z8 d „  Z9 d „  Z: d „  Z; d „  Z< d  S(!   iÿÿÿÿ(   t   symbolst   Symbolt   Tuplet   oot   Dummy(   t   iterablet   range(   t   IndexException(   t   raisest   XFAIL(   t   IndexedBaset   Idxt   Indexedt   St   sint   cost   Sumt	   Piecewiset   Andt   Ordert   LessThant   StrictGreaterThant   GreaterThant   StrictLessThant   Ranget   Arrayt   Subst   Functiont   KroneckerDeltat
   Derivativec             sG  t  d d t ƒ\ ‰  }  } t ˆ  ƒ t ˆ  d ƒ k s< t ‚ t ˆ  |  ƒ t ˆ  d |  d f ƒ k sj t ‚ t ˆ  t ƒ t ˆ  d t f ƒ k s” t ‚ t  d d t ƒ‰ t t ‡ f d †  ƒ t t d „  ƒ t t ‡  ‡ f d †  ƒ t t ‡  f d	 †  ƒ t t ‡  ‡ f d
 †  ƒ t t ‡  ‡ f d †  ƒ t t ‡  f d †  ƒ d  S(   Ns   i a bt   integeri   i    t   xc              s
   t  ˆ  ƒ S(   N(   R   (    (   R   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   <lambda>   t    c           S   s
   t  d ƒ S(   Ng      à?(   R   (    (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR       R!   c              s   t  ˆ  ˆ ƒ S(   N(   R   (    (   t   iR   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR       R!   c              s   t  ˆ  d ƒ S(   Ng      à?(   R   (    (   R"   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR       R!   c              s   t  ˆ  ˆ d f ƒ S(   Ni   (   R   (    (   R"   R   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR       R!   c              s   t  ˆ  d ˆ f ƒ S(   Ni   (   R   (    (   R"   R   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR       R!   c              s   t  ˆ  d ƒ S(   Ni   g      @(   i   g      @(   R   (    (   R"   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR       R!   (   R    t   TrueR   t   AssertionErrorR   t   FalseR   t	   TypeError(   t   at   b(    (   R"   R   s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Idx_construction   s    !.*c          C   s‰   t  d d t ƒ\ }  } } t |  ƒ j s0 t ‚ t |  ƒ j d k sK t ‚ t |  d ƒ j d k sj t ‚ t d ƒ j d k s… t ‚ d  S(   Ns   i a bR   R"   i   s   i + 2t   foo(   R    R#   R   t
   is_integerR$   t   name(   R"   R'   R(   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Idx_properties   s
    c          C   sÜ  t  d d t ƒ\ }  } } t |  ƒ j d  k s6 t ‚ t |  ƒ j d  k sQ t ‚ t |  | ƒ j d k so t ‚ t |  | ƒ j | d k s‘ t ‚ t |  d ƒ j d k s¯ t ‚ t |  d ƒ j d k sÍ t ‚ t |  t ƒ j d k së t ‚ t |  t ƒ j t k s	t ‚ t |  | | f ƒ j | k s-t ‚ t |  | | f ƒ j | k sQt ‚ t |  d ƒ j d k sot ‚ t |  d ƒ j d k st ‚ t |  t t f ƒ j t k s³t ‚ t |  t t f ƒ j t k sØt ‚ d  S(	   Ns   i a bR   i    i   i   i   (   i   i   (   i   i   (   R    R#   R   t   lowert   NoneR$   t   upperR   (   R"   R'   R(   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Idx_bounds#   s    "$$&c          C   sß  t  d d t ƒ\ }  } } } t | ƒ j d  k s9 t ‚ t | ƒ j d  k sT t ‚ t | | ƒ j d k sr t ‚ t | | ƒ j | d k s” t ‚ t | d ƒ j d k s² t ‚ t | d ƒ j d k sÐ t ‚ t | t ƒ j d k sî t ‚ t | t ƒ j t k st ‚ t | | | f ƒ j | k s0t ‚ t | | | f ƒ j | k sTt ‚ t | d ƒ j d k srt ‚ t | d ƒ j d k st ‚ t | t t f ƒ j t k s¶t ‚ t | t t f ƒ j t k sÛt ‚ d  S(	   Ns   i a b xR   i    i   i   i   (   i   i   (   i   i   (   R    R#   R   R.   R/   R$   R0   R   (   R"   R'   R(   R   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Idx_fixed_bounds5   s    "$$&c          C   s;  t  d d ƒ }  t  d d ƒ } t  d d ƒ } t  d	 d ƒ } |  d k sN t ‚ |  d k  s` t ‚ |  d k ss t ‚ |  d k s† t ‚ d |  k s˜ t ‚ d |  k sª t ‚ d |  k s½ t ‚ d |  k  sÐ t ‚ t |  d ƒ så t ‚ t |  d ƒ sú t ‚ t |  d ƒ st ‚ t |  d ƒ s&t ‚ |  d k s8t ‚ t |  d k  t ƒ sSt ‚ t |  d k t ƒ snt ‚ |  d k st ‚ t |  d k t ƒ sœt ‚ |  d k  s¯t ‚ |  d k sÁt ‚ t |  d k t ƒ sÜt ‚ |  d k sït ‚ |  d k  st ‚ |  d k st ‚ |  d k s&t ‚ d d l m } t |  | k  t ƒ sQt ‚ t |  | k t ƒ slt ‚ t |  | k t ƒ s‡t ‚ t |  | k t ƒ s¢t ‚ |  | k  s´t ‚ |  | k sÆt ‚ |  | k sÙt ‚ |  | k sìt ‚ |  | k sþt ‚ t |  | k  t ƒ st ‚ t |  | k t ƒ s4t ‚ |  | k sGt ‚ t |  | k  t ƒ sbt ‚ t |  | k t ƒ s}t ‚ t |  | k t ƒ s˜t ‚ t |  | k t ƒ s³t ‚ t  d ƒ } t  d ƒ } t | | k  t ƒ sæt ‚ t | | k t ƒ st ‚ t | | k t ƒ st ‚ t | | k t ƒ s7t ‚ d  S(   Nt   i14i   i   t   i79i   i	   t   i46i   t   i35i   i   i    iÿÿÿÿ(   R   t   iNone1t   iNone2(   i   i   (   i   i	   (   i   i   (   i   i   (	   R   R$   R   R   R   R   t
   isinstancet	   sympy.abcR   (   R3   R4   R5   R6   R   R7   R8   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Idx_inequalitiesG   sf    c          C   su   t  d d ƒ }  t d ƒ |  k s' t ‚ t d ƒ |  k s? t ‚ t d ƒ |  k sX t ‚ t d ƒ |  k  sq t ‚ d  S(   NR3   i   i   i   (   i   i   (   R   R   R$   (   R3   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt#   test_Idx_inequalities_current_failsŠ   s
    c          C   s©   t  d d t ƒ\ }  } } t |  ƒ } | j | j Œ  | k sE t ‚ t |  | ƒ } | j | j Œ  | k sr t ‚ t |  | | f ƒ } | j | j Œ  | k s¥ t ‚ d  S(   Ns   i a bR   (   R    R#   R   t   funct   argsR$   (   R"   R'   R(   t   ii(    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Idx_func_args”   s    c          C   s  t  d d t ƒ\ }  } } t |  | ƒ j | | ƒ t |  | ƒ k sK t ‚ t |  | ƒ j |  | ƒ t | | ƒ k s{ t ‚ t |  ƒ j |  d ƒ t d ƒ k s¥ t ‚ t |  | ƒ j | d ƒ t |  d ƒ k sÕ t ‚ t |  | | f ƒ j |  d ƒ t d | | f ƒ k st ‚ d  S(   Ns   i a bR   i   (   R    R#   R   t   subsR$   (   R"   R'   R(   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Idx_subsž   s    00*0c          C   sà   t  d d t ƒ\ }  } t  d ƒ } t | |  | ƒ } t | ƒ } | | |  | f k s^ t ‚ | | |  | f k sz t ‚ | | |  | g k s– t ‚ | | t |  | ƒ k sµ t ‚ t d „  | d j d Dƒ ƒ sÜ t ‚ d  S(   Ns   i jR   R'   c         s   s   |  ] } | j  Vq d  S(   N(   t
   is_Integer(   t   .0R'   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pys	   <genexpr>±   s    i   i    (   i   i    (   R    R#   R   R
   R$   R   t   allR>   (   R"   t   jR'   t   A1t   A2(    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_IndexedBase_sugar¨   s    c    	      C   s´   t  d d t ƒ\ }  } } t  d ƒ \ } } } t | ƒ } t | ƒ } t | ƒ } | |  | |  j | | ƒ k sz t ‚ t | d j | i d d 6ƒ t | d ƒ ƒ s° t ‚ d  S(   Ns   i j kR   s   a b ci   i   (   R    R#   R
   RA   R$   R9   t   type(	   R"   RF   t   kR'   R(   t   ct   At   Bt   C(    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_IndexedBase_subs³   s    &c             sÆ  t  d d t ƒ\ ‰ ‰ }  } t d d |  |  f ƒ} t d d |  | f ƒ‰ ˆ j t |  | ƒ k sl t ‚ | ˆ ˆ f ˆ ˆ ˆ f k s’ t ‚ | ˆ ˆ f ˆ ˆ ˆ f j | |  ƒ k sÄ t ‚ ˆ j ˆ j Œ  ˆ k sâ t ‚ ˆ ˆ ˆ f j ˆ ˆ ˆ f j Œ  ˆ ˆ ˆ f k st ‚ t	 t
 ‡ ‡ f d †  ƒ t	 t
 ‡ ‡ ‡ f d †  ƒ t d d |  ƒ‰  ˆ  j t |  ƒ k s€t ‚ ˆ  ˆ j ˆ ˆ ƒ ˆ  ˆ k s¦t ‚ t	 t
 ‡  ‡ ‡ f d †  ƒ d  S(	   Ns   i j m nR   R'   t   shapec              s   ˆ  ˆ S(   N(    (    (   R(   R"   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR    Æ   R!   c              s   ˆ  ˆ ˆ ˆ f S(   N(    (    (   R(   R"   RF   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR    Ç   R!   t   Fc              s   ˆ  ˆ ˆ f S(   N(    (    (   RR   R"   RF   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR    Ë   R!   (   R    R#   R
   RQ   R   R$   RA   R=   R>   R   R   (   t   mt   nR'   (    (   RR   R(   R"   RF   s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_IndexedBase_shape½   s    &2<&c              sÉ   t  d d t ƒ\ ‰ ‰ t d ˆ ˆ ƒ ‰  ˆ  t t d ƒ ˆ ˆ ƒ k sN t ‚ ˆ  t t d ƒ ˆ ˆ ƒ k sr t ‚ t t ‡  ‡ ‡ f d †  ƒ t t d „  ƒ ˆ  j	 ˆ  ˆ  j
 j ˆ ˆ h k sÅ t ‚ d  S(   Ns   i jR   RM   c              s   t  ˆ  ˆ ˆ ƒ S(   N(   R   (    (   RM   R"   RF   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR    Ó   R!   c           S   s
   t  d ƒ S(   NRM   (   R   (    (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR    Ô   R!   (   R    R#   R   R   R$   R
   R   R&   R   t   free_symbolst   baset   label(    (    (   RM   R"   RF   s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Indexed_constructorÎ   s    $$c          C   sX   t  d d t ƒ\ }  } t  d ƒ } t | |  | ƒ } | | j | j Œ  k sT t ‚ d  S(   Ns   i jR   R'   (   R    R#   R   R=   R>   R$   (   R"   RF   R'   RM   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Indexed_func_argsØ   s    c          C   s­   t  d d t ƒ\ }  } } t  d ƒ \ } } t | ƒ } t | ƒ } | |  | f | |  | f j | | ƒ k sw t ‚ | |  | f | |  | f j | | ƒ k s© t ‚ d  S(   Ns   i j kR   s   a b(   R    R#   R
   RA   R$   (   R"   RF   RK   R'   R(   RM   RN   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Indexed_subsß   s    2c             s‚  t  d d t ƒ\ ‰ ‰ t d ˆ ˆ ƒ ‰  ˆ  j d k s? t ‚ ˆ  j d k sT t ‚ ˆ  j ˆ ˆ f k so t ‚ ˆ  j t d ƒ k sŠ t ‚ ˆ  j	 d  d  g k s¥ t ‚ t t ‡  f d †  ƒ t  d d t ƒ\ }  ‰ t d t ˆ ˆ ƒ t ˆ |  ƒ ƒ j	 t d ˆ d	 ƒ t d |  d	 ƒ g k s&t ‚ t d t ˆ ˆ ƒ t ˆ |  ƒ ƒ j t ˆ |  ƒ k sbt ‚ t t ‡ ‡ ‡ f d
 †  ƒ d  S(   Ns   i jR   RM   s   A[i, j]i   c              s   ˆ  j  S(   N(   RQ   (    (   RM   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR    ð   R!   s   n mi    i   c              s"   t  d t ˆ  ˆ ƒ t ˆ ƒ ƒ j S(   NRM   (   R   R   RQ   (    (   R"   RF   RS   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR    ö   R!   (   R    R#   R   R,   R$   t   rankt   indicesRW   R
   t   rangesR/   R   R   R   R   RQ   (   RT   (    (   RM   R"   RF   RS   s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Indexed_propertiesè   s    	J<c          C   s–  t  d d t ƒ\ }  } t  d d t ƒ\ } } t  d d t ƒ\ } } t d d | | f ƒ} | j t | | ƒ k s~ t ‚ t | t |  | ƒ t | | ƒ ƒ j t d | d ƒ t d | d ƒ g k sÑ t ‚ t | t |  | ƒ t | | ƒ ƒ j t | | ƒ k st ‚ t | t |  | ƒ t | ƒ ƒ j t d | d ƒ t d  d  ƒ g k sYt ‚ t | t |  | ƒ t | ƒ ƒ j t | | ƒ k s’t ‚ d  S(	   Ns   i jR   s   o ps   n mR'   RQ   i    i   (
   R    R#   R
   RQ   R   R$   R   R   R^   R/   (   R"   RF   t   ot   pRT   RS   R'   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Indexed_shape_precedenceù   s    P<Ic          C   sf   t  d d t ƒ\ }  } t d |  |  | ƒ } | j d k sC t ‚ | j |  |  | f k sb t ‚ d  S(   Ns   i jR   RM   i   (   R    R#   R   R\   R$   R]   (   R"   RF   RM   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_complex_indices  s    c          C   sE   t  d d t ƒ\ }  } t d |  |  | ƒ } t | ƒ sA t ‚ d  S(   Ns   i jR   RM   (   R    R#   R   R   R$   (   R"   RF   RM   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_not_interable  s    c          C   s    t  d d t ƒ}  |  } t d | d ƒ } t d d | f ƒ} d | | d | | j | | ƒ } | | | | d j | | ƒ } | | k sœ t ‚ d  S(   Nt   NR   R"   i   t   yRQ   (   R   R#   R   R
   t   coeffR$   (   Re   t   len_yR"   Rf   R'   R(   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Indexed_coeff  s    '#c          C   s	  d d l  m }  t d d t ƒ\ } } } } t d ƒ } t d d t d t ƒ\ } } | j sg t ‚ t d	 d t ƒ\ } }	 | | | | }
 } |
 } | j | ƒ |  | | ƒ k s¾ t ‚ | j |
 ƒ |  | | ƒ k sâ t ‚ t	 d
 ƒ |
 } | j | ƒ t	 d
 ƒ |  | | ƒ k s t ‚ | j |
 ƒ t	 d
 ƒ |  | | ƒ k sNt ‚ | j | ƒ t	 j
 k slt ‚ t | | t t f ƒ j | ƒ t d
 |  | | ƒ | t t f ƒ k sºt ‚ t | j | ƒ | t t f ƒ t d
 |  | | ƒ | t t f ƒ k st ‚ t | | t t f ƒ j | ƒ j ƒ  d
 k s<t ‚ t | j |
 ƒ | t t f ƒ j ƒ  t d
 | t t f ƒ j ƒ  k s‰t ‚ t | | t t f ƒ j |
 ƒ j ƒ  t k s½t ‚ | | | t	 d
 ƒ } | j |
 ƒ | | | |  | | ƒ k st ‚ | j | ƒ | | t	 d
 ƒ k s.t ‚ | j | d
 ƒ t	 j
 k sOt ‚ t | | t t f ƒ j |
 ƒ t | |  | | ƒ | | | t t f ƒ k s¥t ‚ t | j |
 ƒ | t t f ƒ t | |  | | ƒ | | | t t f ƒ k sût ‚ t | | t t f ƒ j |
 ƒ j ƒ  | | | k s7t ‚ t | | t t f ƒ j |
 ƒ t | |  | | ƒ | | | t t f ƒ k st ‚ t | j |
 ƒ | t t f ƒ t | |  | | ƒ | | | t t f ƒ k sãt ‚ t | | t t f ƒ j |
 ƒ j ƒ  | | | k st ‚ | t | | ƒ } | j |
 ƒ d
 | t | | ƒ | |  | | ƒ k sqt ‚ | j | ƒ d
 | t | | ƒ | k s¢t ‚ | |	 | | f | | } | j |
 ƒ | |	 | | f |  | | ƒ k sôt ‚ | j | ƒ | |	 | | f k st ‚ | j |	 | | f ƒ | | | k sJt ‚ | j |	 | | f ƒ | |  | | ƒ |  | | ƒ | | k s‘t ‚ | j |	 | | f ƒ | |  | | ƒ | | k sËt ‚ t | | t t f ƒ j |	 | | f ƒ t | |  | | ƒ |  | | ƒ | | | t t f ƒ k s8t ‚ t | | t t f ƒ j |	 | | f ƒ j ƒ  | |  | | ƒ | | k s‹t ‚ | | j | | ƒ d k s®t ‚ | | j | | ƒ |  | | ƒ k sÚt ‚ t | | | | t t f ƒ j | | ƒ t | |  | | ƒ | t t f ƒ k s4t ‚ t | | | | t t f ƒ j | | ƒ j ƒ  | k stt ‚ t | | | | t t f ƒ j | | ƒ t | |  | | ƒ | t t f ƒ k sÎt ‚ t | | | | t t f ƒ j | | ƒ j ƒ  t | k s	t ‚ d  S(   Niÿÿÿÿ(   R   s   i j k lt   clsR'   s   m, nR   t   finites   h Li   i   (   t(   sympy.functions.special.tensor_functionsR   R    R   R#   t   is_realR$   R
   t   diffR   t   ZeroR   R   t   doitR   R   (   R   R"   RF   RK   t   lR'   RS   RT   t   ht   Lt   hit   hjt   expr(    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_differentiation  s\    $$..NN4M40)!VV<VV<>16)-G:mS#,Z@Zc          C   sˆ   t  d ƒ }  t d d t ƒ} t |  | ƒ j |  | ƒ |  | |  | d d |  | d d t |  | d |  | ƒ k s„ t ‚ d  S(   NRM   R"   R   i   i   i   ix   (   R
   R    R#   R   t   seriesR   R$   (   RM   R"   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_indexed_seriesZ  s    c          C   sñ   t  d ƒ }  t d ƒ \ } } } |  | j ƒ  s8 t ‚ |  | j | ƒ sQ t ‚ |  d d | | f j ƒ  sv t ‚ |  d d | | f j | ƒ sž t ‚ |  d d | | f j | ƒ sÅ t ‚ |  d d | | f j | ƒ sí t ‚ d  S(   NRM   s   i,j,ki   i   (   R
   R    t   is_constantR$   (   RM   R"   RF   RK   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_indexed_is_constant`  s    %('c          C   sÙ   t  d ƒ }  t  t d ƒ ƒ t d d d ƒ k s6 t ‚ |  d j t d ƒ t d ƒ ƒ d k sd t ‚ |  d j |  t d ƒ ƒ d k sŒ t ‚ |  d j |  t d ƒ ƒ d k s´ t ‚ t t d ƒ d ƒ d k sÕ t ‚ d  S(   Nt   di   i    i   i   (   R
   R   R   R$   RA   R   R   (   R|   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_issue_12533k  s    *.((c              s>   t  d ƒ ‰ t d d ˆ f ƒ ‰  t t ‡  ‡ f d †  ƒ d  S(   NRT   R"   i    c              s   ˆ  j  ˆ d ƒ S(   Ng      ø?(   RA   (    (   R"   RT   (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyR    w  R!   (   R    R   R   R&   (    (    (   R"   RT   s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_issue_12780t  s    c          C   s#  t  d ƒ }  t d ƒ \ } } } t d ƒ \ } } } t d ƒ } t |  | |  | |  | ƒ j |  | ƒ d k sy t ‚ t |  | |  | | ƒ j |  | ƒ d k s¬ t ‚ t |  | |  | | ƒ j |  | ƒ d k sß t ‚ t |  | |  | | ƒ j | ƒ d k st ‚ t |  | |  | | ƒ j | ƒ d k s=t ‚ t |  | |  | |  | ƒ j |  | ƒ t | | ƒ k s}t ‚ t | | |  | ƒ j |  | ƒ t | | ƒ k sµt ‚ t | |  | ƒ |  | | ƒ j |  | ƒ d k sît ‚ t | |  | ƒ |  | |  | ƒ j |  | ƒ t | |  | ƒ |  | ƒ t | | ƒ k sOt ‚ t | | |  | d ƒ j |  | ƒ d t | | ƒ |  | k s—t ‚ t |  | |  | |  | d ƒ j |  | ƒ d t | | ƒ |  | k sçt ‚ t |  | | | |  | ƒ j |  | ƒ d |  | k s&t ‚ t |  | | | |  | ƒ j |  | ƒ d |  | t | | ƒ k srt ‚ t |  | | | |  | ƒ j |  | ƒ |  | |  | t | | ƒ k sÂt ‚ t |  | | | |  | ƒ j |  | ƒ |  | |  | t | | ƒ k st ‚ t |  | | | |  | ƒ j |  | ƒ d |  | t | | ƒ k s^t ‚ t |  | | | |  | ƒ j |  | ƒ t | | ƒ |  | t | | ƒ |  | k s»t ‚ t |  | | |  | | ƒ j |  | ƒ d k sòt ‚ t |  | | |  | | ƒ j |  | ƒ d k s)t ‚ t |  | | |  | | ƒ j |  | ƒ | k s`t ‚ t |  | | |  | | ƒ j |  | ƒ | t | | ƒ k s¤t ‚ t |  | | |  | | ƒ j |  | ƒ d k sÛt ‚ t |  | | |  | | ƒ j |  | ƒ | t | | ƒ k st ‚ d  S(   NRM   s   i,j,ks   x,y,zt   fi   i    i   (   R
   R    R   R   Rn   R$   R   R   (   RM   R"   RF   RK   R   Rf   t   zR   (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   test_Subs_with_Indexedz  s6    733//@89aHP?LPPL]777D7c       	   C   s  t  d d t ƒ\ }  } t  d ƒ } t  d ƒ \ } } } t  d ƒ \ } } } }	 }
 } t d ƒ } | |  | | | d | ƒ } t  d d t ƒ} | j |  | ƒ j |  | | | t | | ƒ d t t | | ƒ | ƒ | f |  | | | d | f ƒ | ƒ st	 ‚ | j |  | ƒ j |  | ƒ j d t | | ƒ t | | ƒ t t | | ƒ | ƒ | f |  | | | d | f ƒ | d	 |  | | | d t | | ƒ t | | ƒ t t | | ƒ | | ƒ | f |  | | | d | f ƒ | d ƒ st	 ‚ d  S(
   Ns   x,yRj   t   sigmas   i,j,ks   m0:6R   i   t   xi_1i   (
   R    R
   R   R   Rn   t   dummy_eqR   R   R   R$   (   R   Rf   R‚   R"   RF   RK   t   m0t   m1t   m2t   m3t   m4t   m5R   Rv   t   _xi_1(    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt(   test_complicated_derivative_with_Indexed›  s     i ZN(=   t
   sympy.coreR    R   R   R   R   t   sympy.core.compatibilityR   R   t   sympy.tensor.indexedR   t   sympy.utilities.pytestR   R	   t   sympyR
   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R)   R-   R1   R2   R;   R<   R@   RB   RI   RP   RU   RY   RZ   R[   R_   Rb   Rc   Rd   Ri   Rw   Ry   R{   R}   R~   R   RŒ   (    (    (    s>   lib/python2.7/site-packages/sympy/tensor/tests/test_indexed.pyt   <module>   s<   (‚					C
	
	
		
		
								
	<						!