o
    jgË
  ã                   @   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r2e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s%J ‚| jr*J ‚d S )Né   )	r   ÚVÚget_perm_groupr   Úis_subgroupÚdegreeÚis_transitiveÚorderÚ	is_cyclic)ÚGÚA4© r   ú]/var/www/html/zoom/venv/lib/python3.10/site-packages/sympy/combinatorics/tests/test_galois.pyÚtest_four_group   s   
r   c                  C   sd   t j ¡ } tdƒ}tdƒ}|  |¡sJ ‚|  |¡rJ ‚| jdks"J ‚|  ¡ s(J ‚|  ¡ dks0J ‚d S )Né   é   )	r   ÚM20r   r   r   r   r   r   r   )r   ÚS5Ú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 ]2}| ¡ s“J ‚|jdksšJ ‚| |¡|u s£J ‚| ¡ |ks«J ‚|r´t||ƒs´J ‚|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   ÚC6r	   ÚS3r   ÚD6r   ÚG18ÚA4xC2ÚS4mÚS4pÚG36mÚG36pÚS4xC2ÚPSL2F5ÚG72ÚPGL2F5ÚA6ÚS6r"   r   r   r   r   r   )Útsr:   r    Úaltr   Úis_isomÚnot_isomr   r   r   r   Útest_S6_transitive_subgroups2   s>   ð€øîr@   N)Ú__doc__Úsympy.combinatorics.galoisr   r   r   r   Ú!sympy.combinatorics.homomorphismsr   Ú sympy.combinatorics.named_groupsr   r   r	   r   r   r   r   Úlistr"   r@   r   r   r   r   Ú<module>   s    
