ó
¡¼™\c           @   s/  d  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 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) m* Z* m+ Z+ m, Z, m- Z- m. Z. m/ Z/ m0 Z0 m1 Z1 m2 Z2 m3 Z3 m4 Z4 m5 Z5 m6 Z6 m7 Z7 m8 Z8 m9 Z9 m: Z: m; Z; m< Z< m= Z= m> Z> m? Z? d d l@ mA ZA d d lB mC ZC mD ZD d d lE mF ZF d d lG mH ZH d d lI mJ ZJ d d lK mL ZL g  eA ƒ  D] ZM eM jN ƒ  ^ qô\ ZO ZP ZQ ZR ZS ZT ZU d	 „  ZV d
 „  ZW d „  ZX d „  ZY d „  ZZ d „  Z[ d „  Z\ d „  Z] d „  Z^ d „  Z_ d „  Z` d „  Za d „  Zb d „  Zc d „  Zd d „  Ze d „  Zf d „  Zg d „  Zh d „  Zi d „  Zj d „  Zk d „  Zl d  „  Zm d! „  Zn d" „  Zo d# „  Zp d$ „  Zq d% „  Zr d& „  Zs d' „  Zt d( „  Zu d) „  Zv d* „  Zw d+ „  Zx d, „  Zy d- „  Zz d. „  Z{ d/ „  Z| d0 „  Z} d1 „  Z~ d2 „  Z d3 „  Z€ d4 „  Z d5 „  Z‚ d6 „  Zƒ d7 „  Z„ d8 „  Z… d9 „  Z† d: „  Z‡ d; „  Zˆ d< „  Z‰ d= „  ZŠ d> „  Z‹ d? „  ZŒ d@ „  Z dA „  ZŽ dB „  Z dC S(D   s4   Tests for dense recursive polynomials' basic tools. iÿÿÿÿ(>   t   dup_LCt   dmp_LCt   dup_TCt   dmp_TCt   dmp_ground_LCt   dmp_ground_TCt   dmp_true_LTt
   dup_degreet
   dmp_degreet   dmp_degree_int   dmp_degree_listt	   dup_stript	   dmp_stript   dmp_validatet   dup_reverset   dup_copyt   dmp_copyt
   dup_normalt
   dmp_normalt   dup_convertt   dmp_convertt   dup_from_sympyt   dmp_from_sympyt   dup_ntht   dmp_ntht   dmp_ground_ntht
   dmp_zero_pt   dmp_zerot	   dmp_one_pt   dmp_onet   dmp_ground_pt
   dmp_groundt   dmp_negative_pt   dmp_positive_pt	   dmp_zerost   dmp_groundst   dup_from_dictt   dup_from_raw_dictt   dup_to_dictt   dup_to_raw_dictt   dmp_from_dictt   dmp_to_dictt   dmp_swapt   dmp_permutet   dmp_nestt	   dmp_raiset   dup_deflatet   dmp_deflatet   dup_multi_deflatet   dmp_multi_deflatet   dup_inflatet   dmp_inflatet   dmp_excludet   dmp_includet
   dmp_injectt	   dmp_ejectt   dup_terms_gcdt   dmp_terms_gcdt   dmp_list_termst   dmp_apply_pairst	   dup_slicet
   dup_random(   t   f_polys(   t   ZZt   QQ(   t   ring(   t   S(   t   raises(   t   ooc           C   sF   t  g  t ƒ d k s t ‚ t  d d d d g t ƒ d k sB t ‚ d  S(   Ni    i   i   i   i   (   R    R?   t   AssertionError(    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_LC2   s    c           C   sF   t  g  t ƒ d k s t ‚ t  d d d d g t ƒ d k sB t ‚ d  S(   Ni    i   i   i   i   (   R   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_TC7   s    c           C   sÁ   t  g  g t ƒ g  k s t ‚ t  d d d g d g g t ƒ d d d g k sT t ‚ t  g  g g t ƒ g  g k sx t ‚ t  d g d d g g d g g g t ƒ d g d d g g k s½ t ‚ d  S(   Ni   i   i   i   (   R   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_LC<   s    6$c           C   s²   t  g  g t ƒ g  k s t ‚ t  d d d g d g g t ƒ d g k sN t ‚ t  g  g g t ƒ g  g k sr t ‚ t  d g d d g g d g g g t ƒ d g g k s® t ‚ d  S(   Ni   i   i   i   (   R   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_TCC   s    0$c           C   s²   t  g  g d t ƒ d k s! t ‚ t  d d d g d g g d t ƒ d k sQ t ‚ t  g  g g d t ƒ d k su t ‚ t  d g d d g g d g g g d t ƒ d k s® t ‚ d  S(   Ni   i    i   i   i   i   (   R   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_ground_LCJ   s    !0$c           C   s²   t  g  g d t ƒ d k s! t ‚ t  d d d g d g g d t ƒ d k sQ t ‚ t  g  g g d t ƒ d k su t ‚ t  d g d d g g d g g g d t ƒ d k s® t ‚ d  S(   Ni   i    i   i   i   i   (   R   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_ground_TCQ   s    !0$c           C   sÁ   t  g  g d t ƒ d k s! t ‚ t  d g g d t ƒ d k sE t ‚ t  d d g g d t ƒ d	 k sl t ‚ t  d g g  g d t ƒ d k s“ t ‚ t  d d g g  g d t ƒ d k s½ t ‚ d  S(   Ni   i    i   (   i    i    (   (   i    i    i    (   i    i    (   (   i    i    i   (   i    i   (   (   i    i   i   (   i   i    (   (   i   i    i   (   i   i   (   (   i   i   i   (   R   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_true_LTX   s
    !$''c           C   s}   t  g  ƒ t k s t ‚ t  d g ƒ d k s4 t ‚ t  d d g ƒ d k sR t ‚ t  d d d d d g ƒ d k sy t ‚ d  S(   Ni   i    i   (   R   RD   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_degreea   s    c           C   s   t  g  g d ƒ t k s t ‚ t  g  g g d ƒ t k sA t ‚ t  d g g d ƒ d k sb t ‚ t  d g d g g d ƒ d k s‰ t ‚ d  S(   Ni   i   i    (   R   RD   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_degreeh   s    "!c           C   sÊ  t  g  g g d d ƒ t k s% t ‚ t  g  g g d d ƒ t k sJ t ‚ t  g  g g d d ƒ t k so t ‚ t  d g g g d d ƒ d k s– t ‚ t  d g g g d d ƒ d k s½ t ‚ t  d g g g d d ƒ d k sä t ‚ t  t d d ƒ d k st ‚ t  t d d ƒ d k s t ‚ t  t d d ƒ d k s>t ‚ t  t d d ƒ d k s\t ‚ t  t d d ƒ d k szt ‚ t  t d d ƒ d k s˜t ‚ t  t d	 d	 ƒ d	 k s¶t ‚ t t d
 „  ƒ d  S(   Ni    i   i   i	   i   i   i   i   i   c           S   s   t  d g g d d ƒ S(   Ni   iûÿÿÿ(   R	   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   <lambda>‚   t    (   R	   RD   RE   t   f_4t   f_6RC   t
   IndexError(    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_degree_inp   s    %%%'''c           C   s  t  g  g g g d ƒ t t t t f k s4 t ‚ t  d g g g g d ƒ d k s[ t ‚ t  t d ƒ d k sv t ‚ t  t d ƒ d k s‘ t ‚ t  t d ƒ d k s¬ t ‚ t  t d ƒ d k sÇ t ‚ t  t d ƒ d k sâ t ‚ t  t d ƒ d k sý t ‚ t  t	 d ƒ d k st ‚ d  S(   Ni   i   i    i   i   i   i   i	   i   i   i   (   i    i    i    i    (   i   i   i   (   i   i   i   (   i   i   i   (   i   i   i   (   i	   i   i   (   i   i   i   (   i   i   i   i   (
   R
   RD   RE   t   f_0t   f_1t   f_2t   f_3RQ   t   f_5RR   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_degree_list…   s    4'c           C   sH  t  g  ƒ g  k s t ‚ t  d g ƒ g  k s3 t ‚ t  d d d g ƒ g  k sT t ‚ t  d g ƒ d g k sr t ‚ t  d d g ƒ d g k s“ t ‚ t  d d d d g ƒ d g k sº t ‚ t  d d d g ƒ d d d g k sä t ‚ t  d d d d g ƒ d d d g k st ‚ t  d d d d d d g ƒ d d d g k sDt ‚ d  S(   Ni    i   i   (   R   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_strip’   s    !!'*-c           C   sÀ  t  d d d g d ƒ d d g k s* t ‚ t  g  g d ƒ g  g k sK t ‚ t  g  g  g d ƒ g  g k so t ‚ t  g  g  g  g d ƒ g  g k s– t ‚ t  g  g g d ƒ g  g g k s½ t ‚ t  g  g g  g g d ƒ g  g g k sê t ‚ t  g  g g  g g  g g d ƒ g  g g k st ‚ t  d g g g d ƒ d g g g k sJt ‚ t  g  g d g g g d ƒ d g g g k s}t ‚ t  g  g d g g g  g g d ƒ d g g g  g g k s¼t ‚ d  S(   Ni    i   i   (   R   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_strip    s    *!$''-3-3c           C   sÑ   t  g  ƒ g  d f k s t ‚ t  d d d d d g ƒ d d g d f k sQ t ‚ t  g  g g ƒ g  g g d f k s{ t ‚ t  d g g  d g d g d g g ƒ d g g  g d f k s½ t ‚ t t d „  ƒ d  S(   Ni    i   i   c           S   s%   t  d g d d g d g d g g ƒ S(   Ni    i   (   R   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyRO   ·   RP   (   R   RE   RC   t
   ValueError(    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_validate°   s
    3*Bc           C   sa   t  d d d d g ƒ d d d d g k s0 t ‚ t  d d d d g ƒ d d d g k s] t ‚ d  S(   Ni   i   i    i   (   R   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_reverseº   s    0c          C   sd   t  d ƒ t  d ƒ t  d ƒ g }  t |  ƒ } t  d ƒ t  d ƒ | d <| d <|  | k s` t ‚ d  S(   Ni   i    i   i   (   R?   R   RE   (   t   ft   g(    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_copy¿   s    !!c          C   su   t  d ƒ g t  d ƒ t  d ƒ g g }  t |  d ƒ } t  d ƒ t  d ƒ | d d <| d d <|  | k sq t ‚ d  S(   Ni   i   i    i   (   R?   R   RE   (   R`   Ra   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_copyÈ   s    ')c           C   sa   t  d d d d d d d g t ƒ t d ƒ t d ƒ t d ƒ t d ƒ t d ƒ g k s] t ‚ d  S(   Ni    i   i   i   (   R   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_normalÑ   s    !c           C   sm   t  d g g  d d d g d g d g g  g d t ƒ t d ƒ t d ƒ g g  t d ƒ g g  g k si t ‚ d  S(   Ni    i   i   i   (   R   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_normalÖ   s    3c          C   s   t  d t  }  } |  d ƒ |  d ƒ |  d ƒ |  d ƒ g } t | |  | ƒ t  d ƒ t  d ƒ t  d ƒ t  d ƒ g k s} t ‚ d  S(   Nt   xi   i   i    i   (   R?   R   RE   (   t   K0t   K1R`   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_convertÛ   s    *c          C   sŠ   t  d t  }  } |  d ƒ g |  d ƒ g g  |  d ƒ g g } t | d |  | ƒ t  d ƒ g t  d ƒ g g  t  d ƒ g g k s† t ‚ d  S(   NRf   i   i   i   (   R?   R   RE   (   Rg   Rh   R`   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_convertä   s    -c           C   sŒ   t  t d ƒ t d ƒ g t ƒ t d ƒ t d ƒ g k s? t ‚ t  t d ƒ d t d ƒ g t ƒ t d d ƒ t d d ƒ g k sˆ t ‚ d  S(   Ni   i   i   (   R   RB   R?   RE   R@   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_from_sympyí   s    !"c           C   s­   t  t d ƒ t d ƒ g t d ƒ g g d t ƒ t d ƒ t d ƒ g g  g k sW t ‚ t  t d ƒ d t d ƒ g g d t ƒ t d d ƒ t d d ƒ g g k s© t ‚ d  S(   Ni   i   i    (   R   RB   R?   RE   R@   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_from_sympyô   s    0'(c           C   s°   t  d d d g d t ƒ d k s' t ‚ t  d d d g d t ƒ d k sN t ‚ t  d d d g d t ƒ d k su t ‚ t  d d d g d t ƒ d k sœ t ‚ t t d „  ƒ d  S(   Ni   i   i   i    i	   c           S   s   t  d d d g d t ƒ S(   Ni   i   i   iÿÿÿÿ(   R   R?   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyRO     RP   (   R   R?   RE   RC   RS   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_nthû   s
    ''''c           C   sé   t  d g d g d g g d d t ƒ d g k s6 t ‚ t  d g d g d g g d d t ƒ d g k sl t ‚ t  d g d g d g g d d t ƒ d g k s¢ t ‚ t  d g d g d g g d d t ƒ g  k sÕ t ‚ t t d „  ƒ d  S(   Ni   i   i   i    i	   c           S   s%   t  d g d g d g g d d t ƒ S(   Ni   i   i   iÿÿÿÿi   (   R   R?   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyRO     RP   (   R   R?   RE   RC   RS   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_nth  s
    6663c           C   s7  t  g  g d d t ƒ d k s$ t ‚ t  d g d g d g g d d t ƒ d k sW t ‚ t  d g d g d g g d d t ƒ d k sŠ t ‚ t  d g d g d g g d	 d t ƒ d k s½ t ‚ t  d g d g d g g d
 d t ƒ d k sð t ‚ t  d g d g d g g d d t ƒ d k s#t ‚ t t d „  ƒ d  S(   Ni    i   i   i   c           S   s%   t  d g d g d g g d d t ƒ S(   Ni   i   i   i   iÿÿÿÿi   (   i   iÿÿÿÿ(   R   R?   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyRO     RP   (   i    i    (   i    i    (   i   i    (   i   i    (   i   i   (   i   i    (   R   R?   RE   RC   RS   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_ground_nth  s    $33333c           C   s‚   t  g  d ƒ t k s t ‚ t  g  g d ƒ t k s9 t ‚ t  g  g g d ƒ t k sZ t ‚ t  d g g g d ƒ t k s~ t ‚ d  S(   Ni    i   i   (   R   t   TrueRE   t   False(    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_zero_p  s    !c           C   s:   t  d ƒ g  k s t ‚ t  d ƒ g  g g k s6 t ‚ d  S(   Ni    i   (   R   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_zero#  s    c           C   s—   t  d g d t ƒ t k s! t ‚ t  d g g d t ƒ t k sE t ‚ t  d g g g d t ƒ t k sl t ‚ t  d g g g d t ƒ t k s“ t ‚ d  S(   Ni   i    i   i   (   R   R?   Rp   RE   Rq   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_one_p(  s    !$'c           C   sR   t  d t ƒ t d ƒ g k s$ t ‚ t  d t ƒ t d ƒ g g g k sN t ‚ d  S(   Ni    i   i   (   R   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_one/  s    $c           C   sÛ  t  g  d d ƒ t k s t ‚ t  g  g d d ƒ t k s? t ‚ t  g  g d d ƒ t k s` t ‚ t  t d ƒ g g d d ƒ t k sŠ t ‚ t  t d ƒ g g g d d ƒ t k s· t ‚ t  t d ƒ g g g d d ƒ t k sä t ‚ t  t d ƒ g g  g g d d ƒ t k st ‚ t  g  d  d ƒ t k s2t ‚ t  g  g d  d ƒ t k sSt ‚ t  t d ƒ g d  d ƒ t k szt ‚ t  t d ƒ g g g d  d ƒ t k s§t ‚ t  t d ƒ g g  g g d  d ƒ t k s×t ‚ d  S(   Ni    i   i   i   (   R   Rp   RE   Rq   R?   t   None(    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_ground_p4  s    !!*--0!'-c           C   s¬   t  t d ƒ d ƒ g  g g k s' t ‚ t  t d ƒ d ƒ t d ƒ k sN t ‚ t  t d ƒ d ƒ t d ƒ g k sx t ‚ t  t d ƒ d ƒ t d ƒ g g g k s¨ t ‚ d  S(   Ni    i   i   iÿÿÿÿ(   R   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_groundH  s    ''*c           C   s  t  d d t ƒ g  g  g  g  g k s* t ‚ t  d d t ƒ g  k sH t ‚ t  d d t ƒ g  g g g k so t ‚ t  d d t ƒ g  g g g  g g g k sŸ t ‚ t  d d t ƒ g  g g g  g g g  g g g k sØ t ‚ t  d d t ƒ d d d g k sÿ t ‚ d  S(   Ni   i    i   i   i   iÿÿÿÿ(   R"   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_zerosP  s    *'09c           C   s	  t  t d ƒ d d ƒ g  k s$ t ‚ t  t d ƒ d d ƒ d g g g g k sT t ‚ t  t d ƒ d d ƒ d g g g d g g g g k s t ‚ t  t d ƒ d d ƒ d g g g d g g g d g g g g k sØ t ‚ t  t d ƒ d d ƒ d d d g k st ‚ d  S(   Ni   i    i   i   i   iÿÿÿÿ(   R#   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_grounds[  s
    $0<Hc           C   s‚   t  g  g g d t ƒ t k s$ t ‚ t  d g d g g g d t ƒ t k sQ t ‚ t  d g d g g g d t ƒ t k s~ t ‚ d  S(   Ni   i   iÿÿÿÿ(   R    R?   Rq   RE   Rp   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_negative_pe  s    $-c           C   s‚   t  g  g g d t ƒ t k s$ t ‚ t  d g d g g g d t ƒ t k sQ t ‚ t  d g d g g g d t ƒ t k s~ t ‚ d  S(   Ni   i   iÿÿÿÿ(   R!   R?   Rq   RE   Rp   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_positive_pk  s    $-c       	   C   s£  t  i  t ƒ g  k s t ‚ t i  t ƒ g  k s6 t ‚ t g  ƒ i  k sN t ‚ t g  ƒ i  k sf t ‚ t g  t d t ƒi t d ƒ d 6k s” t ‚ t g  t d t ƒi t d ƒ d 6k sÂ t ‚ d d d d d d d d d g	 }  i d d 6d d 6d d 6} i d d	 6d d
 6d d 6} t  | t ƒ |  k s4t ‚ t | t ƒ |  k sOt ‚ t |  ƒ | k sgt ‚ t |  ƒ | k st ‚ t d t ƒ \ } } } | j ƒ  } | d ƒ | d ƒ | d ƒ | d ƒ | d ƒ | d ƒ g }  i | d ƒ d 6| d ƒ d 6| d ƒ d 6} i | d ƒ d 6| d ƒ d 6| d ƒ d 6} t  | | ƒ |  k sTt ‚ t | | ƒ |  k sot ‚ t |  ƒ | k s‡t ‚ t |  ƒ | k sŸt ‚ d  S(   Nt   zeroi    i   i   i   i   s   x,y(   i    (   i   (   i   (   i    (   i   (   i   (   i    (	   R%   R?   RE   R$   R'   R&   Rp   RA   t	   to_domain(   R`   Ra   t   ht   RRf   t   yt   K(    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_from_to_dictq  s,    ..!<--c       	   C   s&  t  i  d t ƒ g  g k s! t ‚ t g  g d ƒ i  k s? t ‚ t g  d t d t ƒi t d ƒ d 6k sp t ‚ t g  g d t d t ƒi t d ƒ d	 6k s¤ t ‚ d g g  g  d g g  g  g  g  d g g	 }  i d d
 6d d 6d d 6} t  | d t ƒ |  k st ‚ t |  d ƒ | k s"t ‚ d  S(   Ni   i    R}   i   i   i   i   (   i    (   i    i    (   i   i    (   i   i    (   i    i    (   R(   R?   RE   R)   Rp   (   R`   Ra   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_from_to_dict“  s    !14*c             sï   t  d d d g g  d d g g  d g g d t ƒ ‰  t  d d d d d g d d d g d g g d t ƒ }  t ˆ  d d d t ƒ ˆ  k s t ‚ t ˆ  d d d t ƒ |  k s± t ‚ t |  d d d t ƒ ˆ  k sÕ t ‚ t t ‡  f d †  ƒ d  S(   Ni   i    c              s   t  ˆ  d d d t ƒ S(   Niÿÿÿÿiùÿÿÿi   (   R*   R?   (    (   R`   (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyRO   ª  RP   (   R   R?   R*   RE   RC   RS   (   Ra   (    (   R`   s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_swap¡  s    36$$$c          C   s	  t  d d d g g  d d g g  d g g d t ƒ }  t  d d d d d g d d d g d g g d t ƒ } t |  d d g d t ƒ |  k s t ‚ t | d d g d t ƒ | k s· t ‚ t |  d d g d t ƒ | k sÞ t ‚ t | d d g d t ƒ |  k st ‚ d  S(   Ni   i    (   R   R?   R+   RE   (   R`   Ra   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_permute­  s    36'''c           C   s¸   t  t d ƒ d t ƒ d g g g k s- t ‚ t  d g g d t ƒ d g g k sW t ‚ t  d g g d t ƒ d g g g k s„ t ‚ t  d g g d t ƒ d g g g g k s´ t ‚ d  S(   Ni   i   i    (   R,   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_nest¸  s    -*-c           C   sÍ   t  g  d d t ƒ g  g g k s' t ‚ t  d g g d d t ƒ d g g k sT t ‚ t  d d d g g  d d g g d d t ƒ d g g d g g d g g g g  g g d g g d g g g g k sÉ t ‚ d  S(   Ni   i    i   i   (   R-   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_raiseÀ  s    '-*c        
   C   sÌ  t  g  t ƒ d g  f k s! t ‚ t  d g t ƒ d d g f k sH t ‚ t  d d d g t ƒ d d d d g f k s{ t ‚ t  d d d d d g t ƒ d d d d g f k s´ t ‚ t  t i d d 6d d 6t ƒ t ƒ d d d d d d d d d g f k st ‚ t  t i d d 6d d 6t ƒ t ƒ d d d g f k sBt ‚ t  t i d d 6d d 6t ƒ t ƒ d d d d d d d d d g f k s’t ‚ t  t i d d 6d d 6t ƒ t ƒ d d d d d d d d d g f k sât ‚ t  t i d d 6d d 6t ƒ t ƒ d d d d g f k s#t ‚ t  t i d d 6t ƒ t ƒ d d d g f k sZt ‚ t  t i d d 6t ƒ t ƒ d d d g f k s‘t ‚ t  t i d d 6t ƒ t ƒ d d d g f k sÈt ‚ d  S(   Ni   i   i   i    i   i   i   (   R.   R?   RE   R%   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_deflateÈ  s(    !'39#-##-#-#c          C   sÄ   t  g  g d t ƒ d g  g f k s* t ‚ t  d g g d t ƒ d d g g f k sZ t ‚ d d d g g  d d g g  d g g }  t  |  d t ƒ d d d d g d d g d g g f k sÀ t ‚ d  S(   Ni   i   i    (   i   i   (   i   i   (   i   i   (   R/   R?   RE   (   R`   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_deflateâ  s    *0'c           C   s‡  t  d g f t ƒ d d g f f k s- t ‚ t  g  g  f t ƒ d g  g  f f k sZ t ‚ t  d d d g f t ƒ d d d d g f f k s“ t ‚ t  d d d d d g f t ƒ d d d d g f f k sÒ t ‚ t  d d d d d g d d d g f t ƒ d d d d g d d g f f k s&t ‚ t  d d d d d g d d d g f t ƒ d d d d d d g d d d g f f k sƒt ‚ d  S(   Ni   i   i   i    (   R0   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_multi_deflateë  s    --9?***c          C   sˆ  t  g  g f d t ƒ d g  g f f k s0 t ‚ t  g  g g  g f d t ƒ d g  g g  g f f k sl t ‚ t  d g g g  g f d t ƒ d d g g g  g f f k s® t ‚ t  d g g d g g f d t ƒ d d g g d g g f f k sö t ‚ t  d g g d d g g f d t ƒ d	 d g g d d g g f f k sDt ‚ t  d d g g d d g g f d t ƒ d
 d d g g d d g g f f k s˜t ‚ t  d g g d d d g g f d t ƒ d d g g d d g g f f k sét ‚ t  d d d g g d d d g g f d t ƒ d d d g g d d g g f f k sCt ‚ t  d d d g d d d d d g f d t ƒ d d d g d d d g f f k sšt ‚ d d d g g  d d g g  d g g }  d d d d g g  d g g } t  |  f d t ƒ d d d d g d d g d g g f f k s$t ‚ t  |  | f d t ƒ d d d d g d d g d g g d d d d g d g g f f k s„t ‚ d  S(   Ni   i   i    i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   (   i   i   (   i   i   (   R1   R?   RE   (   R`   Ra   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_multi_deflateø  s2    !$!'$*'-NW-*'3!c        
   C   s  t  g  d t ƒ g  k s t ‚ t  d d d g d t ƒ d d d g k sN t ‚ t  d d d g d t ƒ d d d d d g k s„ t ‚ t  d d d g d t ƒ d d d d d d d g k sÀ t ‚ t  d d d g d t ƒ d d d d d d d d d g	 k st ‚ t t d „  ƒ d  S(   Ni   i   i   i   i    i   c           S   s   t  d d d g d t ƒ S(   Ni   i   i   i    (   R2   R?   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyRO   #  RP   (   R2   R?   RE   RC   RS   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_inflate  s    06<Bc           C   sŽ  t  d g d d t ƒ d g k s' t ‚ t  g  g d d t ƒ g  g k sN t ‚ t  d g g d	 d t ƒ d g g k s{ t ‚ t  d d g g d
 d t ƒ d d g g k s® t ‚ t  d d g g d d t ƒ d d d g g k sä t ‚ t  d d g g d d t ƒ d d d d g g k st ‚ t  d d d g d g d d g g d d t ƒ d d d g g  d g g  d d g g k szt ‚ t t d „  ƒ d  S(   Ni   i   i    i   i   c           S   s   t  g  g d d t ƒ S(   Niýÿÿÿi   i   (   iýÿÿÿi   (   R3   R?   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyRO   3  RP   (   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   R3   R?   RE   RC   RS   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_inflate&  s    ''-369-0c           C   s  t  g  g g d t ƒ g  g  g g d f k s3 t ‚ t  d g g g d t ƒ g  d g g g d f k sl t ‚ t  d d d g d t ƒ g  d d d g d f k s¥ t ‚ t  d g d d g g d t ƒ g  d g d d g g d f k sê t ‚ t  d d d g g d t ƒ d g d d d g d f k s)t ‚ t  d g d g d g g d t ƒ d g d d d g d f k snt ‚ t  d d d g g g d t ƒ d d g d d d g d f k s³t ‚ t  d g g d g g d g g g d t ƒ d d g d d d g d f k st ‚ d  S(   Ni   i   i   i   i    (   R4   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_exclude6  s    399E?EEc           C   s9  t  d d d g g  d t ƒ d d d g k s3 t ‚ t  d d d g d g d t ƒ d d d g g k sl t ‚ t  d d d g d g d t ƒ d g d g d g g k s« t ‚ t  d d d g d d g d t ƒ d d d g g g k sê t ‚ t  d d d g d d g d t ƒ d g g d g g d g g g k s5t ‚ d  S(   Ni   i   i   i    (   R5   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_includeD  s
    39??c          C   s  t  d t ƒ \ }  } } |  j ƒ  } t g  d | ƒ g  g g d f k sN t ‚ t g  g d | ƒ g  g g g d f k s~ t ‚ t |  d ƒ g d | ƒ d g g g d f k s´ t ‚ t |  d ƒ g g d | ƒ d g g g g d f k sð t ‚ t |  d ƒ d | d | d g d | ƒ d g g d g d d g g g d f k sKt ‚ d | d d | | d | d d | |  d ƒ | | d d	 g } d g d d g d d d g g d g g  g g  g d d d g d	 g g g } t | d | ƒ | d f k st ‚ d  S(
   Ns   x,yi    i   i   i   i   i   i   i   (   RA   R?   R~   R6   RE   (   R€   Rf   R   R‚   R`   Ra   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_injectN  s    *06<[HKc          C   sâ  t  d t ƒ \ }  } } |  j ƒ  } t g  g g d | ƒ g  k sH t ‚ t g  g g g d | ƒ g  g k sr t ‚ t d g g g d | ƒ |  d ƒ g k s¢ t ‚ t d g g g g d | ƒ |  d ƒ g g k sØ t ‚ t d g g d g d d g g g d | ƒ |  d ƒ d | d | d g k s-t ‚ d | d d | | d | d d | |  d ƒ | | d d	 g } d g d d g d d d g g d g g  g g  g d d d g d	 g g g } t | d | ƒ | k sÞt ‚ d  S(
   Ns   x,yi   i   i   i   i   i   i    i   (   RA   R?   R~   R7   RE   (   R€   Rf   R   R‚   R`   Ra   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_eject`  s    $*06UHKc           C   sŽ   t  g  t ƒ d g  f k s! t ‚ t  d d d g t ƒ d d d d g f k sT t ‚ t  d d d d g t ƒ d d d d g f k sŠ t ‚ d  S(   Ni    i   (   R8   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_terms_gcdr  s    !3c           C   sB  t  g  g d t ƒ d g  g f k s* t ‚ t  d d d d g d t ƒ d d d d g f k sc t ‚ t  d g g  d g g  g d t ƒ d d g g  d g g f k s¨ t ‚ t  d d g g  d g g d t ƒ d d d g g  d g g f k sð t ‚ t  d d g d d d g g  g  g d t ƒ d d g d d g g f k s>t ‚ d  S(	   Ni   i    i   (   i    i    (   i   (   i   i    (   i    i    (   i   i   (   R9   R?   RE   (    (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_terms_gcdx  s    *9EEc          C   sÒ  t  g  g g d t ƒ d g k s' t ‚ t  d g g g d t ƒ d g k sQ t ‚ t  d d d d d g d t ƒ d d d d d g k s t ‚ t  d g d d g d d d g g d t ƒ d d d d d! g k sÕ t ‚ d d d d g d d d g g  g }  t  |  d t d d ƒd# d% g k s#t ‚ t  |  d t d d	 ƒd' d) g k sMt ‚ d d d d g d d d d d d g g  g }  t  |  d t d d ƒd+ d- g k s¤t ‚ t  |  d t d d	 ƒd/ d1 g k sÎt ‚ d  S(2   Ni   i    i   i   i   i   t   ordert   lext   grlex(   i    i    i    (   (   i    i    i    i    (   i    i    i    (   (   i    i    i    i   (   i   (   (   i   i   (   i   (   (   i   i   (   i   (   (   i   i   (   i   (   (   i   i   (   i    (   (   i    i   (   i   i    (   (   i   i    i   (   i   i   (   (   i   i   i   (   i   i    (   (   i   i    i   (   i    i   (   (   i    i   i   (   i    i   (   (   i    i   i   (   i   i   (   (   i   i   i   (   i   i   (   (   i   i   i   (   i   i   (   (   i   i   i   (   i   i   (   (   i   i   i   (   i   i   (   (   i   i   i   (   i   i   (   (   i   i   i   (   i   i   (   (   i   i   i   (   i   i   (   (   i   i   i   (   R:   R?   RE   (   R`   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_list_terms„  s    '**$*'-*c          C   s½  d „  }  t  d d d g d d d g |  g  d t ƒ d d	 d
 g k sK t ‚ t  d d g d d d g |  g  d t ƒ d	 d
 g k s‡ t ‚ t  d d d g d d g |  g  d t ƒ d	 d
 g k sÃ t ‚ t  d d g d g g d d g d g g |  g  d t ƒ d d	 g d
 g g k st ‚ t  d d g d g g d g d d g g |  g  d t ƒ d g d
 g g k sht ‚ t  d g d d g g d d g d g g |  g  d t ƒ d g d
 g g k s¹t ‚ d  S(   Nc         S   s   |  | S(   N(    (   t   at   b(    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyRO   œ  RP   i   i   i   i   i   i   i    i
   i   i   (   R;   R?   RE   (   R   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dmp_apply_pairs›  s    	B<<QNc          C   s  d d d d g }  t  |  d d t ƒ g  k s3 t ‚ t  |  d d t ƒ d g k sW t ‚ t  |  d d t ƒ d d g k s~ t ‚ t  |  d d t ƒ d d d g k s¨ t ‚ t  |  d d t ƒ d d d d g k sÕ t ‚ t  |  d d t ƒ |  k sö t ‚ t  |  d d t ƒ |  k st ‚ t  |  d d t ƒ g  k s8t ‚ t  |  d d t ƒ g  k sYt ‚ t  |  d d t ƒ d d g k s€t ‚ t  |  d d t ƒ d d d g k sªt ‚ t  |  d d t ƒ d d d d g k s×t ‚ t  d d g d d t ƒ d d g k st ‚ d  S(   Ni   i   i   i   i    i	   (   R<   R?   RE   (   R`   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_slice¬  s    !$'*-!!!!'*-c          C   s(  t  d d d t ƒ }  t |  ƒ d k s- t ‚ t d „  |  Dƒ ƒ sI t ‚ t  d d d t ƒ }  t |  ƒ d k sv t ‚ t d „  |  Dƒ ƒ s’ t ‚ t  d	 d
 d t ƒ }  t |  ƒ d	 k s¿ t ‚ t d „  |  Dƒ ƒ sÛ t ‚ t  d d d t ƒ }  t |  ƒ d k st ‚ t d „  |  Dƒ ƒ s$t ‚ d  S(   Ni    iöÿÿÿi
   c         s   s+   |  ]! } d  | k o  d k n Vq d S(   iöÿÿÿi
   N(    (   t   .0t   c(    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pys	   <genexpr>Å  s    i   iìÿÿÿi   c         s   s+   |  ]! } d  | k o  d k n Vq d S(   iìÿÿÿi   N(    (   R   Rž   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pys	   <genexpr>Ê  s    i   iâÿÿÿi   c         s   s+   |  ]! } d  | k o  d k n Vq d S(   iâÿÿÿi   N(    (   R   Rž   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pys	   <genexpr>Ï  s    i   iØÿÿÿi(   c         s   s+   |  ]! } d  | k o  d k n Vq d S(   iØÿÿÿi(   N(    (   R   Rž   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pys	   <genexpr>Ô  s    (   R=   R?   R   RE   t   all(   R`   (    (    s@   lib/python2.7/site-packages/sympy/polys/tests/test_densebasic.pyt   test_dup_randomÁ  s    N(   t   __doc__t   sympy.polys.densebasicR    R   R   R   R   R   R   R   R   R	   R
   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R    R!   R"   R#   R$   R%   R&   R'   R(   R)   R*   R+   R,   R-   R.   R/   R0   R1   R2   R3   R4   R5   R6   R7   R8   R9   R:   R;   R<   R=   t   sympy.polys.specialpolysR>   t   sympy.polys.domainsR?   R@   t   sympy.polys.ringsRA   t   sympy.core.singletonRB   t   sympy.utilities.pytestRC   t   sympyRD   R`   t   to_denseRU   RV   RW   RX   RQ   RY   RR   RF   RG   RH   RI   RJ   RK   RL   RM   RN   RT   RZ   R[   R\   R^   R_   Rb   Rc   Rd   Re   Ri   Rj   Rk   Rl   Rm   Rn   Ro   Rr   Rs   Rt   Ru   Rw   Rx   Ry   Rz   R{   R|   Rƒ   R„   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/polys/tests/test_densebasic.pyt   <module>   s†   ÿ $7															
														
	
									
			"										#				
							