a
    kh                     @   sL   d dl mZ d dlmZ d dlmZ d dlmZmZm	Z	 dd Z
dd Zd	S )
    )Permutation)symbols)Matrix)PermutationMatrixBlockDiagMatrixBlockMatrixc                  C   s  t d\} }}}}}}}}}	}
}}t| ddd|ddddd|ddgd|ddd|ddddd|dgdd|ddd|ddddd|gg 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dgdd|ddddddddddg|	ddd|
ddddd|ddgd|	ddd|
ddddd|dgdd|	ddd|
ddddd|gdddd|ddddddddgddddd|dddddddgdddddd|ddddddgg}| }|g dg dg ddggksJ | \}}tg d	}|t|ksJ t| |d|g|dddg|	|
d|gd|ddgg}t||d|g|dddg|	|
d|gd|ddgg}t||d|g|dddg|	|
d|gd|ddgg}tdgg}|t||||ksJ d S )
Nza:mr   )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   Zconnected_componentsZ"connected_components_decompositionr   r   r   )abcdefghijklmMccPBpB0ZB1ZB2ZB3 r'   M/var/www/auris/lib/python3.9/site-packages/sympy/matrices/tests/test_graph.pytest_connected_components   sR    "$











r)   c               
   C   s   t g dg dg dg dg dg dg} |  }|ddgd	d
gddggksRJ |  \}}tg d}|t|kszJ |tt ddgddggt d
d
t d
d
gt ddgddggt ddgdd	ggt d
d
gt d
d
t d
d
t ddgddggggksJ | }| }|j| | | ks4J | jdd\}}tg d}|t|ksbJ |tt ddgddggt d
d
t d
d
gt d
d
t ddgdd	ggt ddgddgggt d
d
t d
d
t ddgddggggksJ | }| }|j| | | ksJ d S )N)r      r   r      r   )r   ,   r   r   -   r   )r   r	   r   r   r   r   )r   r   r      r      )r   6   r   r   7   r   )r   r   r       r   !   r   r	   r   r   r   r   )r   r	   r   r   r   r   r,   r-   r0   r1   r*   r+   r   r   r.   r/   r2   r3   F)lower)r   r   r   r   r   r	   )	r   Zstrongly_connected_componentsZ+strongly_connected_components_decompositionr   r   r   zerosZas_explicitT)r!   Zsccr#   r$   r%   r'   r'   r(   "test_strongly_connected_components3   sd    









r7   N)Zsympy.combinatoricsr   Zsympy.core.symbolr   Zsympy.matricesr   Zsympy.matrices.expressionsr   r   r   r)   r7   r'   r'   r'   r(   <module>   s
   +