ó
9­\c           @   s>  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
 m Z m Z m Z d  d l m Z m Z m Z m Z d  d l m Z d „  Z d „  Z d „  Z d	 „  Z d
 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z  d „  Z! d „  Z" e d „  ƒ Z# d „  Z$ d „  Z% d „  Z& d S(   iÿÿÿÿ(   t   Addt   Basict   symbolst   Symbol(   t   Compoundt   Variable(   t   deconstructt	   constructt   unifyt   is_associativet   is_commutative(   t   xt   yt   zt   n(   t   XFAILc          C   s  t  d d d ƒ }  t t  d ƒ } t |  ƒ | k s9 t ‚ t d ƒ d k sQ t ‚ t t ƒ t k si t ‚ t t d t f ƒt t ƒ k s t ‚ t t d t d t ƒƒ t t d t f ƒ k sÆ t ‚ t t d t d t ƒd t f ƒt t d t t ƒ f ƒ k st ‚ d  S(   Ni   i   i   t	   variablest   evaluate(   i   i   i   (   R   R   R   t   AssertionErrorR   R   R    t   False(   t   exprt   expected(    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_deconstruct   s    '6!c          C   s=   t  t d ƒ }  t d d d ƒ } t |  ƒ | k s9 t ‚ d  S(   Ni   i   i   (   i   i   i   (   R   R   R   R   (   R   R   (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_construct   s    c          C   sm   t  d t  d ƒ d ƒ }  t t  d t t  d ƒ d f ƒ } t |  ƒ | k sQ t ‚ t | ƒ |  k si t ‚ d  S(   Ni   i   i   (   i   (   R   R   R   R   R   (   R   t   cmpd(    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_nested   s    !c          C   sÐ   t  d d d ƒ }  t t d ƒ \ } } } t  | | | ƒ } t t |  | i  | | | f ƒ ƒ i d | 6d | 6d | 6g k s„ t ‚ t t |  | d | | | f ƒƒ i d | 6d | 6d | 6g k sÌ t ‚ d  S(   Ni   i   i   t   abcR   (   R   t   mapR   t   listR   R   (   R   t   at   bt   ct   pattern(    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt
   test_unify   s    H!c           C   sM   t  t t d d ƒ t d t ƒ i  d t f ƒƒ i d t 6g k sI t ‚ d  S(   Ni   i   R   (   R   R   R   R   R   (    (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_unify_variables'   s    c          C   s©   t  d d ƒ }  t t d ƒ \ } } t  | | ƒ } t t |  | i  | | f ƒ ƒ i d | 6d | 6g k sq t ‚ t t |  | i d | 6| | f ƒ ƒ g  k s¥ t ‚ d  S(   Ni   i   t   abi   (   R   R   R   R   R   R   (   R   R   R   R    (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_s_input*   s
    >c            sJ   t  |  ƒ }  t  ˆ  ƒ ‰  t |  ƒ t ˆ  ƒ k oI t ‡  f d †  |  Dƒ ƒ S(   Nc         3   s   |  ] } | ˆ  k Vq d  S(   N(    (   t   .0R   (   R   (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pys	   <genexpr>4   s    (   t   tuplet   lent   all(   R   R   (    (   R   s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt
   iterdicteq1   s    c          C   s  t  d d d d t ƒ}  t t d ƒ \ } } } t  | | | d t ƒ} t t |  | i  | | | f ƒ ƒ } i d | 6d | 6d | 6i d | 6d | 6d | 6i d | 6d | 6d | 6i d | 6d | 6d | 6i d | 6d | 6d | 6i d | 6d | 6d | 6f } t | | ƒ st ‚ d  S(   Ni   i   i   R   R   (   R    R   R   R   R&   R   R)   R   (   R   R   R   R   R    t   resultR   (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_unify_commutative6   s    $c          C   s5  t  d d d d t ƒ}  t t d ƒ \ } } } t  | | d t ƒ} t t | ƒ ƒ s] t ‚ t t | ƒ ƒ su t ‚ t t	 |  | i  | | f ƒ ƒ } i d | 6t  d d d t ƒ| 6i d | 6t  d d d t ƒ| 6i d | 6t  d d d t ƒ| 6i d | 6t  d d d t ƒ| 6i d | 6t  d d d t ƒ| 6i d | 6t  d d d t ƒ| 6i t  d d d t ƒ| 6d | 6i t  d d d t ƒ| 6d | 6i t  d d d t ƒ| 6d | 6i t  d d d t ƒ| 6d | 6i t  d d d t ƒ| 6d | 6i t  d d d t ƒ| 6d | 6g } t
 | | ƒ s1t ‚ d  S(   Ni   i   i   R   R   (   R    R   R   R   R	   R   R   R
   R   R   R)   (   R   R   R   R   R    R*   R   (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_unify_iterE   s&    !           &c          C   sš   d d l  m }  m } |  t ƒ | t ƒ d } t t d ƒ \ } } |  | ƒ | | ƒ d } t t | | i  | | f ƒ ƒ i t | 6g k s– t ‚ d  S(   Niÿÿÿÿ(   t   sint   cosi   t   pq(	   t   sympyR-   R.   R   R   R   R   R   R   (   R-   R.   R   t   pt   qR    (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_hard_match\   s
    c       	   C   sÓ   d d l  m }  |  d t t ƒ } |  d d d ƒ } |  d d d ƒ } t t | | i  d t t d ƒ g ƒƒ i t d ƒ t d ƒ 6d t 6g k s™ t ‚ t t | | i  d t t d ƒ g ƒƒ g  k sÏ t ‚ d  S(	   Niÿÿÿÿ(   t   MatrixSymbolt   Xt   Yi   t   Zi   R   (   R0   R4   R   R   R   R   R   (   R4   R5   R6   R7   (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_matrixc   s    Sc          C   s5   t  t d }  t t |  ƒ ƒ } t | ƒ | j d  S(   Ni   (   R   R   R   R   t   strR
   (   R   t   rebuilt(    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_non_frankenAddsk   s    
c    	      C   sš   d d l  m }  t d ƒ \ } } } } } |  | | | ƒ } |  | | ƒ } | | f } i |  | | ƒ | 6| | 6t t | | d | ƒƒ k s– t ‚ d  S(   Niÿÿÿÿ(   t	   FiniteSets	   a,b,c,x,yR   (   R0   R<   R   R&   R   R   (	   R<   R   R   R   R   R   t   st   tR   (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_FiniteSet_commutivityt   s    c          C   sð   d d l  m }  t d ƒ \ } } } } } } |  t d | ƒ | t | | ƒ ƒ } |  | t | | ƒ ƒ } | | f }	 t i d | 6|  | t | | ƒ ƒ | 6i | | 6|  | t d | ƒ ƒ | 6g ƒ }
 t t | | d |	 ƒ|
 ƒ sì t ‚ d  S(   Niÿÿÿÿ(   R<   s   a,b,c,x,y,zi   R   (   R0   R<   R   R   R&   R)   R   R   (   R<   R   R   R   R   R   R   R   R    R   R   (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_FiniteSet_complex|   s    $&,c          C   s?   t  t f }  t t t t  d k t d k  @t d |  ƒƒ ƒ d  S(   Ni    i   R   (   R   R   R9   R   R   R   R    (   R   (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_and†   s    c          C   sm   d d l  m }  t t |  d d ƒ |  d d ƒ |  d d ƒ |  d d ƒ d	 |  d d ƒ f ƒƒ si t ‚ d  S(
   Niÿÿÿÿ(   t   Intervali    i   i
   i   i   i   R   (   R0   RB   R   R   R   (   RB   (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt
   test_Union‹   s    c           C   sY   t  t t t ƒ ƒ s t ‚ t  t t t ƒ ƒ s8 t ‚ t  t t t ƒ ƒ sU t ‚ d  S(   N(   R
   R   R   R   R   (    (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_is_commutative‘   s    c       	   C   sÓ   d d l  m }  m } m } m } d d l m } m } | d ƒ | d ƒ | d ƒ d | d ƒ | d ƒ } |  | | ƒ | | ƒ | | | ƒ | | ƒ } t t	 | | d |  | | | f ƒƒ sÏ t
 ‚ d  S(   Niÿÿÿÿ(   R   R   R   t   d(   R-   R.   i   i   i   R   (   t	   sympy.abcR   R   R   RE   R0   R-   R.   t   nextR   R   (   R   R   R   RE   R-   R.   t   eqt   pat(    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   test_commutative_in_commutative–   s
    "82N('   R0   R    R   R   R   t   sympy.unify.coreR   R   t   sympy.unify.usympyR   R   R   R	   R
   RF   R   R   R   R   t   sympy.utilities.pytestR   R   R   R   R!   R"   R$   R)   R+   R,   R3   R8   R;   R?   R@   RA   RC   RD   RJ   (    (    (    s;   lib/python2.7/site-packages/sympy/unify/tests/test_sympy.pyt   <module>   s,   "("															
		