o
    *ήc
                     @   sH   d dl mZ d dlmZmZmZ d dlmZ dd Zdd Z	dd	 Z
d
S )    )Permutation)SymmetricGroupAlternatingGroupDihedralGroup)Matrixc                  C   s  t dt dt ddt ddt ddtdg} t dd}| d }| | t d	d}| | t d
d}| d }| | | D ]v}| }|j}|j}|j}|j	}i }t
|j|D ]\}	}
|
||	< qi| D ]N\}}|j}|dkr|j}t }|D ]}|d }	|d }|||	 |  }q|dkr|jsJ qvt }|D ]}|d }	|d }|||	 |  }q||ksJ qvqOd S )N      	         
   }         y       r      )r   sylow_subgroupr   derived_seriesappendpolycyclic_group	collectorpc_presentationpcgs
free_groupzipsymbolsitems
array_formr   is_identity)GroupsSGPcGroupr   r   r   r   free_to_permsgkvk_arrayv_arraylhsgenerhsr   r   O/tmp/pip-target-vg8gfxp4/lib/python/sympy/combinatorics/tests/test_pc_groups.pytest_pc_presentation   sP   




r1   c            	      C   s   t dt dt ddt ddt ddg} | D ]9}| }|j}|j}|jD ])}||}t }tt	|D ]}|| rK||| ||   n|}q;||ksTJ q+qd S )Nr   r   r	   r
   r   )
r   r   r   r   r   
generatorsexponent_vectorr   rangelen)	r!   r#   r$   r   r   r-   expr'   ir   r   r0   test_exponent_vector7   s   

"r8   c               	   C   s   t ddt ddtdtdtdtdt dt dg} | D ],}| }|j}dd |jD }||}g }|D ]
}||	| q<t
|jsNJ q"d S )	Nr	   r      r
   r   r   c                 S   s   g | ]}|qS r   r   ).0r-   r   r   r0   
<listcomp>R   s    z%test_induced_pcgs.<locals>.<listcomp>)r   r   r   r   r   r   r2   induced_pcgsr   r3   r   is_upper)r#   r'   r$   r   gensipcgsmr7   r   r   r0   test_induced_pcgsK   s   
rA   N) sympy.combinatorics.permutationsr    sympy.combinatorics.named_groupsr   r   r   sympy.matricesr   r1   r8   rA   r   r   r   r0   <module>   s    2