ó
¡¼™\c           @   s!  d  d l  m Z m Z m Z 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 d  d l m Z e d ƒ Z e d ƒ Z e d ƒ Z e d ƒ Z e d ƒ Z e d	 ƒ Z d
 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z  d „  Z! d „  Z" d S(   iÿÿÿÿ(   t   ConditionSett   Intersectiont	   FiniteSett   EmptySett   Union(   t   Symbolt   Eqt   St   Abst   sint   pit   Intervalt   Andt   Modt   oot   Function(   t   raisest   wt   xt   yt   zt   lambdat   fc          C   sä  t  t t t t ƒ d ƒ t d d t t t ƒ ƒ }  t |  k sF t ‚ t d |  k s\ t ‚ d t |  k sr t ‚ d t  t t d d k t	 j
 ƒ k s t ‚ d t  t t d d k t	 j
 ƒ k sÈ t ‚ d t  t t d k t d d ƒ ƒ k sõ t ‚ t t d „  ƒ t t  t t d k  t t h ƒ j t ƒ s5t ‚ t t d	 „  ƒ t t d
 „  ƒ t	 j } t  } | t t d k  | t t d k  | ƒ ƒ | t t d k  t d k  @| ƒ k s¶t ‚ | t t d k  | t t d k  | ƒ ƒ | t t d k  t d k  @| ƒ k st ‚ | t t d k  | t t d k  | ƒ ƒ | t t d k  t d k  @| ƒ k sZt ‚ | t t d k  | t t t k  | ƒ ƒ | t t d k  t t k  @| ƒ k s¬t ‚ | t t d k  | t t t k  | ƒ ƒ | t t d k  t t k  @| ƒ k sþt ‚ | t t d k  | t t t k  | ƒ ƒ } | | | j t t k  t d k  @| ƒ k sYt ‚ | j t t t f k swt ‚ | t t d k  | t t t k  t t ƒ ƒ ƒ } | | t t t d k  t t k  ƒ t t ƒ ƒ k sàt ‚ d  S(   Ni    i   i   i   i   i   i   c           S   s%   d t  t t d k t d d ƒ ƒ k S(   Ni   i   i   i   (   R    R   R   R   (    (    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyt   <lambda>!   t    c           S   s   t  t t d t t h ƒ S(   Ni   (   R    R   R   (    (    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyR   $   R   c           S   s   t  t t d ƒ S(   Ni   (   R    R   (    (    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyR   %   R   (   R    R   R   R	   R   R
   t   Falset   Truet   AssertionErrorR   t   RealsR   R   t	   TypeErrort
   isinstancet   base_setR   t   Integerst   Lt   symR   (   t   sin_sols_principalt   It   Ct   c(    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyt   test_CondSet   s:    ++-0	'+'+'+'+'+*10c          C   sŠ   t  t t d d k t d d t t ƒ ƒ }  t d d t t ƒ } t  t t d d k t d d t t ƒ ƒ } t |  | ƒ | k s† t ‚ d  S(   Ni   i   i   i    i   (   R    R   R   R   R   R   (   t   input_conditionsett   other_domaint   output_conditionset(    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyt   test_CondSet_intersect:   s    ++c           C   sj   t  t t t t ƒ t j ƒ t j k s- t ‚ t  t t t t t ƒ ƒ d ƒ t j ƒ t j k sf t ‚ d  S(   Niÿÿÿÿ(	   R    R   R   R   t   NaturalsR   R   R	   R   (    (    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyt   test_issue_9849A   s    -c       	   C   s“  t  t t t d k  t d k ƒ t d d d ƒ ƒ t d ƒ k sE t ‚ t  t t d k  t d d d ƒ ƒ t ƒ  k sx t ‚ t  t t t d k  ƒ t ƒ  ƒ t ƒ  k s¨ t ‚ t d ƒ }  t  t t t d k ƒ t d d d |  ƒ ƒ t t d ƒ t  t t t d k ƒ t |  ƒ ƒ ƒ k st ‚ t  t t t	 t d ƒ d ƒ t d d d |  ƒ ƒ t t d d ƒ t  t t t	 t d ƒ d ƒ t |  ƒ ƒ ƒ k st ‚ d  S(	   Ni   iýÿÿÿi    i   R   iÿÿÿÿi   i   (
   R    R   R   R   R   R   R   R   R   R   (   R   (    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyt$   test_simplified_FiniteSet_in_CondSetF   s    E30*<0c           C   s¦   t  t t t d ƒ t t ƒ ƒ j t t h k s6 t ‚ t  t t t d ƒ t t ƒ ƒ j t h k si t ‚ t  t t t d ƒ t t t ƒ ƒ j t t h k s¢ t ‚ d  S(   Ni    (   R    R   R   R   R   R   t   free_symbolsR   (    (    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyt   test_free_symbolsQ   s    !!$c             sf  t  t t ƒ ‰ t t t d k  ˆ ƒ }  |  j t d ƒ |  k sE t ‚ |  j t t ƒ t t t d k  ˆ ƒ k su t ‚ t t t d k  ˆ ƒ } | j t t ƒ } | j t t ƒ } | t t t d k  t t h ƒ k sÛ t ‚ | t t t d k  t t h ƒ k st ‚ |  j t t ƒ t t t d k  ˆ ƒ k s5t ‚ t t t t k  ˆ ƒ j t t ƒ t t t t k  ˆ j t t ƒ ƒ k sƒt ‚ t d d t	 ƒ‰  t ˆ  d ˆ  k  t
 j ƒ t
 j k s¿t ‚ t d d t	 ƒ‰ t ˆ  ˆ  t k  t
 j ƒ j ˆ  t ƒ t t t t k  t
 j ƒ k st ‚ t d d	 t ƒ‰ t t ‡ ‡ f d
 †  ƒ t t ‡  ‡ f d †  ƒ t t d „  ƒ t t ‡ f d †  ƒ t ˆ  ˆ  t k  t d t ƒ ƒ j t ˆ ƒ t d t ƒ k sÅt ‚ t ˆ  ˆ  t k  t t d ƒ ƒ j t ˆ ƒ t
 j k st ‚ t t t ƒ t t ƒ d k  t t h ƒ j t t ƒ t ƒ t t t d k  t t h ƒ k sbt ‚ d  S(   Ni   i   t   nt   negativei    t   pt   positivet   nct   commutativec              s%   t  t t ˆ k  t j ƒ j t ˆ  ƒ S(   N(   R    R   R   R    t   subs(    (   R5   R3   (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyR   u   s   c              s%   t  t t ˆ k  t j ƒ j t ˆ  ƒ S(   N(   R    R   R   R    R7   (    (   R1   R3   (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyR   w   s   c           S   s   t  t d t d k  t j ƒ S(   Ni   (   R    R   R   R    (    (    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyR   y   s   c              s   t  t d t d k  ˆ  ƒ S(   Ni   (   R    R   (    (   t   s(    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyR   {   s   (   R   R   R   R    R   R7   R   R   R   R   R   R    R   R   R   t
   ValueErrorR   R   R   (   R&   t   origt   baset	   and_dummy(    (   R1   R5   R3   R8   sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyt   test_subs_CondSetZ   s8    0**06*-?:*c          C   sK   t  t t f t d t t h t j ƒ }  |  j t t ƒ |  k sG t ‚ d  S(   Ni   (   R    R   R   R   R   R7   R   R   (   R&   (    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyt   test_subs_CondSet_tebr…   s    )c             s—  t  ‰  t j }  ˆ  t t d k  |  ƒ ‰ ˆ j ˆ  t t d k  |  ƒ ƒ sN t ‚ ˆ j d ƒ t k si t ‚ ˆ j ˆ  t t d k  t j ƒ ƒ t k s™ t ‚ t	 t
 ‡  ‡ f d †  ƒ t  t t f t d t t h t j ƒ } t  t t f t d t t h t j ƒ } t  t t f t d t t h t j ƒ } | j | ƒ sBt ‚ | j | ƒ t k s]t ‚ ˆ j | ƒ t k sxt ‚ | j ˆ ƒ t k s“t ‚ d  S(   Ni   c              s%   ˆ j  ˆ  t t d k  t j ƒ t ƒ S(   Ni   (   t   dummy_eqR   R   R   R   (    (   R%   R&   (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyR   ’   R   (   R    R   R    R   R?   R   R   R   R   R   R9   t	   Complexes(   R$   t   c1t   c2t   c3(    (   R%   R&   sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyt   test_dummy_eq‹   s    	'0)))c           C   s=  d t  t t d k t d d ƒ ƒ k s- t ‚ d t  t t d k t d d ƒ ƒ k t k s` t ‚ t t d „  ƒ t  t t d k t d d ƒ ƒ j d ƒ t d k k s¬ t ‚ t  t t d k t d d ƒ ƒ j d ƒ t	 j
 k så t ‚ t  t t d k t d d ƒ ƒ j t ƒ t t d k t d k t d k ƒ k s9t ‚ d  S(   Ni   i   i   i   i   c           S   s%   d t  t t d k t d d ƒ ƒ k S(   Ni   i   i   i   (   R    R   R   R   (    (    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyR   ¤   R   (   R    R   R   R   R   R   R   R   t   containsR   t   falseR   R   (    (    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyt   test_containsž   s    -3
!!!N(#   t
   sympy.setsR    R   R   R   R   t   sympyR   R   R   R   R	   R
   R   R   R   R   R   t   sympy.utilities.pytestR   R   R   R   R   R!   R   R'   R+   R-   R.   R0   R=   R>   RD   RG   (    (    (    sA   lib/python2.7/site-packages/sympy/sets/tests/test_conditionset.pyt   <module>   s"   (L	*						+		