U
    9%e                     @   s   d dl mZmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ G dd deeeZd	d
 Zdd Zdd Zdd Zdd ZdS )    )_MinimalMatrix_CastableMatrix)MatrixSubspaces)Matrix)Rational)symbols)solvec                   @   s   e Zd ZdS )SubspaceOnlyMatrixN)__name__
__module____qualname__ r   r   b/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/sympy/matrices/tests/test_subspaces.pyr	      s   r	   c               	   C   s   t dddddgdddddgdd	d
ddgd
ddddgg} |  }|d tdddd
gks\t|d tddd	dgksxt|d tddddgkstt|d
ksttj| f|  |kstd S N      r               )r	   columnspacer   AssertionErrorlenZhstackmbasisr   r   r   test_columnspace_one   s    r"   c               	   C   s   t dddddgdddddgdd	d
ddgd
ddddgg} |  }|d tdddddggks`t|d tdddd
dggkst|d tdddddggkstt|d
kstd S r   )r	   Zrowspacer   r   r   r   r   r   r   test_rowspace   s       r#   c               	   C   s   t dddddgdddddgdd	d
ddgd
ddddgg} |  }|d tdddddgks^t|d tdddddgks|ttdd | |d  D sttdd | |d  D std S )Nr   r   r   r   r   r   r   r   r   r   r   r   r   c                 s   s   | ]}|j V  qd S Nis_zero.0er   r   r   	<genexpr>3   s     z%test_nullspace_one.<locals>.<genexpr>c                 s   s   | ]}|j V  qd S r$   r%   r'   r   r   r   r*   4   s     )r	   	nullspacer   r   allr   r   r   r   test_nullspace_one)   s    r-   c                  C   sV  t } tddddgddddgg}| \}}|tdd| d d | d	d gdd| d
d | dd ggksrttdddddgdddddgdddddgdddddgdddddgg}|| d  tdddgd ksttdddddddgdddddddgdddddddgdddddddgg}| \}}|tdddddddgdddddddgdddddd| dd gdddddddggkst| }|d tdddddddgkst|d tdddddddgkst|d tdddddddgkst|d tddddd| dd dgks*ttddgddgddgg}| sRtd S )Nr      r   r   r   r   r            ir   r   r   r   r   r   	   )r   r   Zrrefr   r+   )RMouttmpr!   r   r   r   test_nullspace_second6   sB    
 &$$$,r8   c            
   	   C   s.  t dddddgdddddgdd	d
ddgd
ddddgg} |  }|d t dddd
gks\t|d t ddd	dgksxt|d t ddddgksttd\}}}}}t |||||g}tt|D ]*}| | ||  }	tt|	|dkstq|  t|kstt|  t|   | j	ks*td S )Nr   r   r   r   r   r   r   r   r   r   r   r   r   z	a b c d e)
r   r   r   r   ranger   r   Zrankr+   cols)
r5   r!   abcdr)   Xieqr   r   r   test_columnspace_second]   s     rB   N)Zsympy.matrices.commonr   r   Zsympy.matrices.matricesr   Zsympy.matricesr   Zsympy.core.numbersr   Zsympy.core.symbolr   Zsympy.solversr   r	   r"   r#   r-   r8   rB   r   r   r   r   <module>   s   '