+
    ‹°³jå  ã                   óH   € ^ RI Ht ^ RIHt ^ RIHt ]P                  tR tR# )é    )ÚPermutationGroup)ÚPermutation)Úuniqc                 ó6  € . p. p^ p^ pV  FV  pVP                   p\        VP                  4      pVP                  V4       W6,          pVP                  V4       WG,          pKX  	  . p\	        V4       F&  p	VP                  \        \	        V4      4      4       K(  	  ^ p
^ p\	        \        V4      4       F–  p	\	        WªW),          ,           4       FY  pW	,          P                  Wº,
          ,          P                  pV Uu. uF  qÝV,           NK  	  upW‹,          WfW,          ,           % K[  	  W¢V	,          ,          p
WaV	,          ,          pK˜  	  \        \        V Uu. uF  p\        \        V4      4      NK  	  up4      4      p\        VRR7      # u upi u upi )aè  
Returns the direct product of several groups as a permutation group.

Explanation
===========

This is implemented much like the __mul__ procedure for taking the direct
product of two permutation groups, but the idea of shifting the
generators is realized in the case of an arbitrary number of groups.
A call to DirectProduct(G1, G2, ..., Gn) is generally expected to be faster
than a call to G1*G2*...*Gn (and thus the need for this algorithm).

Examples
========

>>> from sympy.combinatorics.group_constructs import DirectProduct
>>> from sympy.combinatorics.named_groups import CyclicGroup
>>> C = CyclicGroup(4)
>>> G = DirectProduct(C, C, C)
>>> G.order()
64

See Also
========

sympy.combinatorics.perm_groups.PermutationGroup.__mul__

F)Údups)
ÚdegreeÚlenÚ
generatorsÚappendÚrangeÚlistÚ
array_formr   Ú_af_newr   )ÚgroupsÚdegreesÚ
gens_countÚtotal_degreeÚ
total_gensÚgroupÚcurrent_degÚcurrent_num_gensÚ
array_gensÚiÚcurrent_genÚjÚgenÚxÚaÚ	perm_genss   *               Úe/home/luca/screen-checking/.venv/lib/python3.14/site-packages/sympy/combinatorics/group_constructs.pyÚDirectProductr!      sg  € ð: €GØ€JØ€LØ€JÛˆØ—l‘lˆÜ˜u×/Ñ/Ó0ÐØ�‰�{Ô#ØÕ#ˆØ×ÑÐ*Ô+ØÕ&Š
ñ ð €JÜ�:ÖˆØ×Ñœ$œu \Ó2Ó3Ö4ñ à€KØ€KÜ”3�z“?Ö#ˆÜ�{°*µ-Õ$?Ö@ˆAØ•I×(Ñ(¨!­/Õ:×FÑFˆCá*-Ó.©# Q�[—�©#Ñ.ð �M˜+°GµJÕ&>Ò?ñ Að 	 !•}Õ$ˆØ˜q•zÕ!Šñ $ô ”T±ZÓ@±Z°œ7¤4¨£7Ö+±ZÑ@ÓAÓB€IÜ˜I¨EÔ2Ð2ùò	 /ùò As   Ã?FÅFN)Úsympy.combinatorics.perm_groupsr   Ú sympy.combinatorics.permutationsr   Úsympy.utilities.iterablesr   r   r!   © ó    r    Ú<module>r'      s   ðÝ <Ý 8Ý *à
×
Ñ
€ô53r&   