a
    kh
                     @   sx   d Z ddlmZmZmZmZ ddlmZ ddlm	Z	m
Z
mZ dd Zdd Zd	Zi Zerdeee Zd
d Zdd ZdS )z*Test groups defined by the galois module.     )S4TransitiveSubgroupsS5TransitiveSubgroupsS6TransitiveSubgroupsfind_transitive_subgroups_of_S6)is_isomorphic)SymmetricGroupAlternatingGroupCyclicGroupc                  C   sX   t j } td}| |s J | jdks.J |  s:J |  dksJJ | jrTJ d S )N   )	r   Vget_perm_groupr   is_subgroupdegreeis_transitiveorderZ	is_cyclic)GA4 r   S/var/www/auris/lib/python3.9/site-packages/sympy/combinatorics/tests/test_galois.pytest_four_group   s    
r   c                  C   sd   t j } td}td}| |s(J | |r6J | jdksDJ |  sPJ |  dks`J d S )N      )	r   ZM20r   r   r   r   r   r   r   )r   ZS5ZA5r   r   r   test_M20   s    
r   Fc                 C   s    |   g}tr|t|   |S )N)r   INCLUDE_SEARCH_REPSappendS6_randomized)nameversr   r   r   get_versions_of_S6_subgroup+   s    
r   c                  C   s  t } td}| jddtddf| jddtddf| jddddf| jddddf| jddddf| j	dddtd	f| j
ddtd	df| jddddf| jdd
ddf| jdd
ddf| jddddf| jddddf| jddddf| jddddf| jddddf| jddddffD ]\}}}}}t|D ]v}| s(J |jdks8J |||u sLJ | |ks^J |rtt||stJ |rt||rJ qq dS )zQ
    Test enough characteristics to distinguish all 16 transitive subgroups.
       FN      T      r
   $   0   <   H   x   ih  i  )r   r   ZC6r	   ZS3r   ZD6r   ZG18ZA4xC2ZS4mZS4pZG36mZG36pZS4xC2ZPSL2F5ZG72ZPGL2F5A6ZS6r   r   r   r   r   r   )tsr)   r   Zaltr   Zis_isomZnot_isomr   r   r   r   test_S6_transitive_subgroups2   s8    r+   N)__doc__Zsympy.combinatorics.galoisr   r   r   r   Z!sympy.combinatorics.homomorphismsr   Z sympy.combinatorics.named_groupsr   r   r	   r   r   r   r   listr   r+   r   r   r   r   <module>   s   
