ó
Ąź\c           @   sŔ   d  Z  d d l m Z d d l m Z m Z d d l m Z d d l m	 Z	 d d l
 m Z m Z d   Z d   Z d	   Z d
   Z d   Z d   Z d   Z d   Z d   Z d   Z d S(   s+   Tests for low-level linear systems solver. i˙˙˙˙(   t   Matrix(   t   ZZt   QQ(   t   field(   t   ring(   t   solve_lin_syst   eqs_to_matrixc             s   t  d t  \   }  } |  | d d |  | g } i t d d  |  6t d d  | 6} t |    } | | k r t   f d   | D  s t  d  S(   Ns   x1,x2i   i   i   i
   c         3   s!   |  ] } t  |   j  Vq d  S(   N(   t
   isinstancet   dtype(   t   .0t   s(   t   domain(    s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pys	   <genexpr>   s    (   R   R   R   t   allt   AssertionError(   t   x1t   x2t   eqst   solt   _sol(    (   R   s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pyt   test_solve_lin_sys_2x2_one
   s    &c          C   s]   t  d t  \ }  } } | d | | | d | | d g } t | |   d  k sY t  d  S(   Ns   x1,x2i   i   (   R   R   R   t   NoneR   (   R   R   R   R   (    (    s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pyt   test_solve_lin_sys_2x4_none   s    c          C   s   t  d t  \ }  } } } | d | d | d | | | d | | | d | d | g } i d | 6d | 6d | 6} t | |   | k s t  d  S(   Ns   x1,x2,x3i   i   i   i    (   R   R   R   R   (   R   R   R   t   x3R   R   (    (    s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pyt   test_solve_lin_sys_3x4_one   s    c          C   s   t  d t  \ }  } } } | | d | d d | | | d | | d g } i | d | 6| d | 6} t | |   | k s t  d  S(   Ns   x1,x2,x3i   i   i   i   i   (   R   R   R   R   (   R   R   R   R   R   R   (    (    s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pyt   test_solve_lin_sys_3x3_inf$   s    c          C   s    t  d t  \ }  } } } } d | | d | d | d d | d | d | d | d | | d | d | d g } t | |   d  k s t  d  S(	   Ns   x1,x2,x3,x4i   i   iý˙˙˙i   i   i   i   (   R   R   R   R   R   (   R   R   R   R   t   x4R   (    (    s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pyt   test_solve_lin_sys_3x4_none,   s
    #!c    
      C   sl  t  d t  \ }  } } } } } } } | d | | d | d | d d | d | | d | d | d | d | d d | d | d | d	 | d | d
 | d | d | d | d | d | d | d g } i d d | d | | d | | 6d | d | d | | 6d
 d | d | d | | 6}	 t | |   |	 k sht  d  S(   Ns   x1,x2,x3,x4,x5,x6,x7i   i   i	   i   i   i   i   i   i   i   i%   i   i   (   R   R   R   R   (
   R   R   R   R   R   t   x5t   x6t   x7R   R   (    (    s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pyt   test_solve_lin_sys_4x7_inf4   s    '#7+>&"c          C   s   t  d t  \ }  } } } } } | | d | | d | d | | | | d | d d | d | | d | d d | d | | d	 | d
 | d d | d | | | d | d g } i d | d	 | | 6d d | | 6d d | | 6} t | |   | k st  d  S(   Ns   x1,x2,x3,x4,x5i   i   i   i   i   i
   i   i   i   i&   i   i   i   i   i	   i   (   R   R   R   R   (   R   R   R   R   R   R   R   R   (    (    s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pyt   test_solve_lin_sys_5x5_inf?   s    !')c          C   s1  t  d t  \ }  } } } } } } } } }	 }
 } t d |   \ } } } } } } } | | | | | | d | d | d | | | | | | d | d | d | | | | | | d | d | d |	 | | | |	 | d |	 d | d |
 | |	 | |
 | |
 | |
 g } i | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | 6| | | | | | | | |	 | | | | | | | | | | | | | | |	 | | | | | | | | | |	 | | | | | | | | | | | | | | |	 | | | | | | | | | |	 | | | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | 6| | | | | | | | |	 | | | | | | | | | |	 | | | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | 6| | | |	 | | | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | 6| | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | 6| | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | | | | | | | |	 | | | | | | | |	 | | | | | 6} t | |  | k s-t  d  S(   Ns   d,r,e,g,i,j,l,o,m,p,qs   c,f,h,k,n,bi   (   R   R   R   R   R   (   t   groundt   dt   rt   et   gt   it   jt   lt   ot   mt   pt   qR   t   ct   ft   ht   kt   nt   bR   R   (    (    s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pyt   test_solve_lin_sys_6x6_1K   s2    3$Ô˙ ˙ ˙ w˙ ˙ ˙ ,˙ ˙ ˙ ˙ O˙ ˙ 9˙ ˙ <c          C   s×1  t  d t  \ }  } } } } } } } } }	 }
 } t d |   \ } } } } } } } | | | | | | d | d | d | | | | | | d | d | d | | | | | | d | d | d |	 | | | |	 | d |	 d | d |
 | |	 | |
 | d |
 d | | |
 g } i | | | | | | | | | |	 | | | | | | | | |
 | | | | | | | | | | | | | | | | | | | | | | | | |
 | | |	 |
 | | |	 | | | | |
 | | |	 |
 | | |	 | | | | | | | | |
 | | |	 | | | |	 |
 | | |	 | | | |	 | | | |	 |
 | | |	 | | | |	 |
 | | |	 | | | | | | | | | | | |	 | | | | |
 | | | | | | | |
 | | |	 | | | |	 |
 | | | |
 | | | |
 | | | | | | | |
 | | | | | | |	 | | | | | | | | |
 | | | | | | | |
 | | |	 |
 | | |	 | | | |	 | | | | |
 | | |	 | | | |	 |
 | | | | | | | |
 | | | | | |	 | | | |	 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 |
 | | | | |
 | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 | | | | |	 | | | | | | | | | | |
 | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | | |
 | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | |
 | | | |	 | | | | | | |
 | | | |	 | | | | | |
 | | | | |
 | | | |	 | | | | | | | | | | |
 | | |	 |
 | | | |	 | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | |	 | | | | |	 | | | | |	 | | | | 6| | | | | | | | | | | | | | | | | | | | |	 | | | |	 |
 | | |	 | | | |	 |
 | | |	 | | | | | | | | | | | |	 | | | | |
 | | | |
 | | |	 | | | |	 |
 | | | |
 | | | |
 | | | | | | |	 | | | | | | | | |
 | | | | | | | |
 | | |	 |
 | | |	 | | | |	 | | | | |
 | | |	 | | | |	 |
 | | | | | | | |
 | | | | | |	 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 |
 | | | | |
 | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 | | | | |	 | | | | | | | | | | |
 | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | | |
 | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | |
 | | | |	 | | | | | | |
 | | | |	 | | | | | |
 | | | | |
 | | | |	 | | | | | | | | | | |
 | | |	 |
 | | | |	 | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | |	 | | | | |	 | | | | |	 | | | | 6| | | | | | | | |
 | |	 | | |	 |
 | |	 | | | | | | |
 | |	 | | |	 |
 | |	 | | | | | | |
 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 |
 | | | | |
 | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 | | | | |	 | | | | | | | | | | |
 | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | | |
 | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | |
 | | | |	 | | | | | | |
 | | | |	 | | | | | |
 | | | | |
 | | | |	 | | | | | | | | | | |
 | | |	 |
 | | | |	 | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | |	 | | | | |	 | | | | |	 | | | | 6| | | | | | | |
 |	 | |	 |
 |	 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 |
 | | | | |
 | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 | | | | |	 | | | | | | | | | | |
 | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | | |
 | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | |
 | | | |	 | | | | | | |
 | | | |	 | | | | | |
 | | | | |
 | | | |	 | | | | | | | | | | |
 | | |	 |
 | | | |	 | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | |	 | | | | |	 | | | | |	 | | | | 6| | | | | | |
 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 |
 | | | | |
 | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 | | | | |	 | | | | | | | | | | |
 | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | | |
 | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | |
 | | | |	 | | | | | | |
 | | | |	 | | | | | |
 | | | | |
 | | | |	 | | | | | | | | | | |
 | | |	 |
 | | | |	 | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | |	 | | | | |	 | | | | |	 | | | | 6| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 |
 | | | | |
 | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | |	 | | | | |	 | | | | | | | | | | |
 | | | | |
 | | | | | | | | | |
 | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | |
 | | | |	 | | | | | |
 | | | |	 |
 | | | |	 | | | | |	 |
 | | | | |
 | | | | | | | | |
 | | | |	 | | | | | | |
 | | | |	 | | | | | |
 | | | | |
 | | | |	 | | | | | | | | | | |
 | | |	 |
 | | | |	 | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | | | | |
 | | | | | | | | | | | | | |	 | | | | |	 |
 | | | |	 | | | | | | | |	 | | | | |	 | | | | |	 | | | | 6} t | |  | k sÓ1t  d  S(   Ns   d,r,e,g,i,j,l,o,m,p,qs   c,f,h,k,n,bi   (   R   R   R   R   R   (   R    R!   R"   R#   R$   R%   R&   R'   R(   R)   R*   R+   R   R,   R-   R.   R/   R0   R1   R   R   (    (    s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pyt   test_solve_lin_sys_6x6_2[   st    3$ŕ˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ v˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ (˙ ˙ ˙ ˙ ˙ ˙ ˙ Ś˙ ˙ ˙ ˙ ˙ ˙ ˙ 6˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ ˙ c          C   st   t  d t  \ }  } } | | d d | | g } t d d d g d d d g g  j t | |    sp t  d  S(   Ns   x1,x2i   i   i   i˙˙˙˙i    (   R   R   R    t   __eq__R   R   (   R   R   R   R   (    (    s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pyt   test_eqs_to_matrixk   s    N(   t   __doc__t   sympy.matricesR    t   sympy.polys.domainsR   R   t   sympy.polys.fieldsR   t   sympy.polys.ringsR   t   sympy.polys.solversR   R   R   R   R   R   R   R   R   R2   R3   R5   (    (    (    s=   lib/python2.7/site-packages/sympy/polys/tests/test_solvers.pyt   <module>   s   											