U
    	-eW5                     @   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d Zd	d
 Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd ZdS )z+Tests for low-level linear systems solver.     )Matrix)ZZQQ)field)ring)solve_lin_syseqs_to_matrixc                     sp   t dt\ } }| | d d|  | g}| tdd|tddi}t| }||krht fdd|D sltd S )Nx1,x2         
   c                 3   s   | ]}t | jV  qd S )N)
isinstanceZdtype).0sdomain _/var/www/html/Darija-Ai-Train/env/lib/python3.8/site-packages/sympy/polys/tests/test_solvers.py	<genexpr>   s     z-test_solve_lin_sys_2x2_one.<locals>.<genexpr>)r   r   r   allAssertionError)x1x2eqssolZ_solr   r   r   test_solve_lin_sys_2x2_one
   s    


r   c                  C   sF   t dt\} }}|d || |d|  |d g}t|| d ksBtd S )Nr	      r   r   r   r   r   )r   r   r   r   r   r   r   test_solve_lin_sys_2x4_none   s    
r   c                  C   sx   t dt\} }}}|d|  d|  d| | | d| | | d| d|  g}|d|d|di}t|| |ksttd S )Nx1,x2,x3r   r   r
   r   r   r   r   r   x3r   r   r   r   r   test_solve_lin_sys_3x4_one   s    r#   c                  C   sp   t dt\} }}}|| d|  d d| | | d || d g}|| d ||d i}t|| |ksltd S )Nr    r   r      r
   r   r   r!   r   r   r   test_solve_lin_sys_3x3_inf$   s    
r%   c                  C   s   t dt\} }}}}d| | d|  d|  d d| d|  d|  d|  d || d|  d|  d g}t|| d kstd S )	Nzx1,x2,x3,x4r         r
      r   r   )r   r   r   r"   x4r   r   r   r   test_solve_lin_sys_3x4_none,   s    "r+   c            
      C   sH  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}|dd|  d|  | d|  |d| d|  d|  |d
d|  d|  d|  i}	t|| |	ksDtd S )Nzx1,x2,x3,x4,x5,x6,x7r(   r&   	   r   r   r$         r      %   r
   r)   r   )
r   r   r   r"   r*   x5Zx6Zx7r   r   r   r   r   test_solve_lin_sys_4x7_inf4   s    "6*8   r2   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}|d| d	|  |dd|  |dd|  i}t|| |kstd S )Nzx1,x2,x3,x4,x5r      r-   r
      r      r      &   r$      r)   r   r,   r(   r   )r   r   r   r"   r*   r1   r   r   r   r   r   test_solve_lin_sys_5x5_inf?   s    &" 
 
r9   c                  C   s  t dt\} }}}}}}}}}	}
}td| \}}}}}}}|||  ||  |d| d|  d|   ||  ||  |d| d|  d|   ||  ||  |d| d|  d|	   ||  ||	  |d|	 d|  d|
   ||	  ||
  ||
 ||
  g}||| | | || |	 |  || | |  || | |  || |	 |  || | |  || |	 |  || | |  || | |  || |	 |  || | |  || | |  || |	 |  || | |  || |	 |  || | |  || | |  || |	 |  || | |  || |	 |  || | |  | | | | || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |   || | | | | || | |	 |  || | | |  || | | |  || | |	 |  || | | |  || | |	 |  || | | |  || | | |  || | |	 |  || | | |  || | |	 |  || | | |  | | | | || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |   || | | | | || | |	 |  || | | |  || | |	 |  || | | |  | | | | || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |   || | | |	 | || | | |  | | | | || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |   ||| | | | || | | || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |   ||| | | | || | | || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |  || | |  || | |	  || | |  || | |	  || | |   i}t|||kstd S Nzd,r,e,g,i,j,l,o,m,p,qzc,f,h,k,n,br   r   r   r   r   r   Zgrounddregijlompqr   cfhknbr   r   r   r   r   test_solve_lin_sys_6x6_1K   s>    "    s    )      L   4   4	rN   c                  C   s1  t dt\} }}}}}}}}}	}
}td| \}}}}}}}|||  ||  |d| d|  d|   ||  ||  |d| d|  d|   ||  ||  |d| d|  d|	   ||  ||	  |d|	 d|  d|
   ||	  ||
  |d|
 d|   ||
  g}||| | | || | |  ||	 | |  || | |  || |
 |  || | |  || | |  || | |  || | |  || | |  || | |
  || |	 |
  || |	 |  || | |
  || |	 |
  || |	 |  || | |  || | |
  || |	 |  || |	 |
  || |	 |  || |	 |  || |	 |
  || |	 |  || |	 |
  || |	 |  || | |  || | |  || |	 |  || | |
  || | |  || | |
  || |	 |  || |	 |
  || | |
  || | |
  || | |  || | |
  || | |  || |	 |  || | |  || | |
  || | |  || | |
  || |	 |
  || |	 |  || |	 |  || | |
  || |	 |  || |	 |
  || | |  || | |
  || | |  ||	 | |  ||	 | |  |  || | | | || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |
  || | | |
  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |  || | |	 |  || | | |  || | | |
  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | | |
  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | |
 |  || |	 | |  || | | |
  || | |	 |  || | | |
  || | | |
  || | |	 |  || | | |  || | | |
  || |	 |
 |  || |	 | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  ||	 | | |  ||	 | | |  ||	 | | |   ||| || | | || | |  || | |  || | |  || |	 |  || |	 |
  || |	 |  || |	 |
  || |	 |  || | |  || | |  || |	 |  || | |
  || | |
  || |	 |  || |	 |
  || | |
  || | |
  || | |  || |	 |  || | |  || | |
  || | |  || | |
  || |	 |
  || |	 |  || |	 |  || | |
  || |	 |  || |	 |
  || | |  || | |
  || | |  ||	 | |   || | | | || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |
  || | | |
  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |  || | |	 |  || | | |  || | | |
  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | | |
  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | |
 |  || |	 | |  || | | |
  || | |	 |  || | | |
  || | | |
  || | |	 |  || | | |  || | | |
  || |	 |
 |  || |	 | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  ||	 | | |  ||	 | | |  ||	 | | |   ||| | || | || |
  ||	 |  ||	 |
  ||	 |  || |  || |
  ||	 |  ||	 |
  ||	 |  || |  || |
  || |   || | | | || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |
  || | | |
  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |  || | |	 |  || | | |  || | | |
  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | | |
  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | |
 |  || |	 | |  || | | |
  || | |	 |  || | | |
  || | | |
  || | |	 |  || | | |  || | | |
  || |	 |
 |  || |	 | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  ||	 | | |  ||	 | | |  ||	 | | |   ||| | | || ||
  |	|  |	|
  |	|   || | | | || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |
  || | | |
  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |  || | |	 |  || | | |  || | | |
  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | | |
  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | |
 |  || |	 | |  || | | |
  || | |	 |  || | | |
  || | | |
  || | |	 |  || | | |  || | | |
  || |	 |
 |  || |	 | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  ||	 | | |  ||	 | | |  ||	 | | |   ||| | | | ||
  || | | | || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |
  || | | |
  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |  || | |	 |  || | | |  || | | |
  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | | |
  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | |
 |  || |	 | |  || | | |
  || | |	 |  || | | |
  || | | |
  || | |	 |  || | | |  || | | |
  || |	 |
 |  || |	 | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  ||	 | | |  ||	 | | |  ||	 | | |   ||| | | | | || | | | || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |
  || | | |
  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | |	 |  || | |	 |  || | | |  || | | |
  || | | |
  || | | |  || | | |
  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |
  || | |	 |  || | | |
  || | |	 |
  || | |	 |  || | |	 |
  || | | |
  || | | |  || | |
 |  || |	 | |  || | | |
  || | |	 |  || | | |
  || | | |
  || | |	 |  || | | |  || | | |
  || |	 |
 |  || |	 | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  || | | |
  || | | |  || | | |  || | |	 |  || | |	 |
  || | |	 |  || | | |  ||	 | | |  ||	 | | |  ||	 | | |   i}t|||k1std S r:   r;   r<   r   r   r   test_solve_lin_sys_6x6_2[   s    "           r          #                1                	rO   c                  C   s   t dt\} }}|td|tdi|td|tdig}tdtdg}t||||gt}| tdddgdddggks~td S )Nr	   r   r   r   r
   )r   r   r   Z	to_Matrixr   r   )r   r   r   Z	eqs_coeffZeqs_rhsMr   r   r   test_eqs_to_matrixk   s
    (rS   N)__doc__Zsympy.matricesr   Zsympy.polys.domainsr   r   Zsympy.polys.fieldsr   Zsympy.polys.ringsr   Zsympy.polys.solversr   r   r   r   r#   r%   r+   r2   r9   rN   rO   rS   r   r   r   r   <module>   s   		