Ë
    7^(h×  ã                   ó  — d Z ddlmZmZmZmZmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZ ddlmZmZmZ ddlmZ ddlmZmZmZ d„ Zd„ Zd„ Z d	„ Z!d
„ Z"d„ Z#d„ Z$d„ Z%d„ Z&d„ Z'd„ Z(d„ Z)d„ Z*d„ Z+d„ Z,d„ Z-d„ Z.d„ Z/d„ Z0d„ Z1y)z&Tests for sparse distributed modules. é    )Úsdm_monomial_mulÚsdm_monomial_degÚsdm_monomial_dividesÚsdm_addÚsdm_LMÚsdm_LTÚsdm_mul_termÚsdm_zeroÚsdm_degÚsdm_LCÚsdm_from_dictÚ	sdm_spolyÚ	sdm_ecartÚsdm_nf_moraÚsdm_groebnerÚsdm_from_vectorÚsdm_to_vectorÚsdm_monomial_lcm)ÚlexÚgrlexÚInverseOrder)ÚQQ©ÚxÚyÚzc                  ó&   — t        dd«      dk(  sJ ‚y )N©é   r   r   )r   é   ©r   é   r    )r   © ó    úg/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/polys/tests/test_distributedmodules.pyÚtest_sdm_monomial_mulr&      s   € Ü˜I vÓ.°)Ò;Ð;Ñ;r$   c                  ó$   — t        d«      dk(  sJ ‚y )N©é   r"   r   r    )r   r#   r$   r%   Útest_sdm_monomial_degr*      s   € Ü˜IÓ&¨!Ò+Ð+Ñ+r$   c                  ó&   — t        dd«      dk(  sJ ‚y )Nr!   )r   r)   r   )r   r)   r    )r   r#   r$   r%   Útest_sdm_monomial_lcmr,      s   € Ü˜I yÓ1°YÒ>Ð>Ñ>r$   c                  óÄ   — t        dd«      du sJ ‚t        dd«      du sJ ‚t        dd«      du sJ ‚t        dd«      du sJ ‚t        dd«      du sJ ‚t        d	d
«      du sJ ‚y )N©r   r   r   T©r   r"   r   )r)   r   r   r(   ©r"   r   r   Fr   )r)   r   r"   )r)   r   r   )r   r#   r$   r%   Útest_sdm_monomial_dividesr1      s€   € Ü 	¨9Ó5¸Ñ=Ð=Ð=Ü 	¨9Ó5¸Ñ=Ð=Ð=Ü 	¨9Ó5¸Ñ=Ð=Ð=ä 	¨9Ó5¸Ñ>Ð>Ð>Ü 	¨9Ó5¸Ñ>Ð>Ð>Ü 	¨9Ó5¸Ñ>Ð>Ñ>r$   c                  óX   — t        dt        d«      fgt        «      t        d«      k(  sJ ‚y )Nr!   r)   )r   r   r#   r$   r%   Útest_sdm_LCr3   '   s'   € Ü�Iœr !›uÐ%Ð&¬Ó+¬r°!«uÒ4Ð4Ñ4r$   c            	      ó  — t        d«      t        d«      t        d«      t        d«      t        d«      dœ} t        | t        «      dt        d«      fdt        d«      fdt        d«      fdt        d«      fdt        d«      fgk(  sJ ‚y )Nr   ©©r   r"   r   r   ©r   r   r"   r   ©r   r   r"   r   ©r   r   r   r    ©r   r   r   r   r6   r7   r8   r9   r:   )r   r   r   ©Údics    r%   Útest_sdm_from_dictr=   +   s„   € Ü˜A›¬b°«eÄ2ÀaÃ5Ü˜A›¬b°«eñ5€Cä˜œeÓ$Ø
œ˜1›Ð	 ¬r°!«uÐ 5Ø
œ˜1›Ð	 ¬r°!«uÐ 5¸ÄbÈÃeÐ7Lð	NòNð Nñ Nr$   c                  ó  — t        dt        d«      fgdt        d«      fgt        t        «      dt        d«      fdt        d«      fgk(  sJ ‚t        dt        d«      fgdt        d«      fgt        t        «      g k(  sJ ‚t        dt        d«      fgdt        d«      fgt        t        «      dt        d«      fgk(  sJ ‚t        dt        d«      fgd	t        d«      fgt        t        «      d	t        d«      fdt        d«      fgk(  sJ ‚y )
N)r   r   r   r   r0   éÿÿÿÿr.   r"   r    ©r   r   r   r   )r   r   r   r#   r$   r%   Útest_sdm_addrA   5   s  € Ü�Y¤ 1£Ð&Ð'¨9´b¸³eÐ*<Ð)=¼sÄBÓGØ
”R˜“UÐ	˜i¬¨A«Ð/Ð0ò1ð 1ð 1ä�Y¤ 1£Ð&Ð'¨9´b¸³fÐ*=Ð)>ÄÄRÓHÈBÒNÐNÐNÜ�Y¤ 1£Ð&Ð'¨9´b¸³eÐ*<Ð)=¼sÄBÓGØ
”R˜“UÐ	Ðòð ð ä�Y¤ 1£Ð&Ð'¨9´b¸³eÐ*<Ð)=¼sÄBÓGØ
”R˜“UÐ	˜i¬¨A«Ð/Ð0ò1ð 1ñ 1r$   c                  ó‚   — t        d«      t        d«      t        d«      dœ} t        t        | t        «      «      dk(  sJ ‚y )Nr   ©r!   )é   r   r   ©rD   r   r   rE   )r   r   r   r   r;   s    r%   Útest_sdm_LMrF   ?   s4   € Ü˜“e¬¨1«¼"¸Q»%Ñ
@€CÜ”- ¤SÓ)Ó*¨iÒ7Ð7Ñ7r$   c                  ó˜   — t        d«      t        d«      t        d«      dœ} t        t        | t        «      «      dt        d«      fk(  sJ ‚y )Nr   r"   r    rC   rE   )r   r   r   r   r;   s    r%   Útest_sdm_LTrH   D   s=   € Ü˜“e¬¨1«¼"¸Q»%Ñ
@€CÜ”- ¤SÓ)Ó*¨y¼"¸Q»%Ð.@Ò@Ð@Ñ@r$   c                  óà  — t        dt        d«      fgdt        d«      ft        t        «      g k(  sJ ‚t        g dt        d«      ft        t        «      g k(  sJ ‚t        dt        d«      fgdt        d«      ft        t        «      dt        d«      fgk(  sJ ‚dt        d«      fdt        d	«      fg} t        | d
t        d«      ft        t        «      dt        d«      fdt        d«      fgk(  sJ ‚y )Nr.   r   )r   r   r   ©r   r   r   )r"   r   r   rD   r    )r   r   r"   )r"   r   r"   é   r/   é   )r	   r   r   )Úfs    r%   Útest_sdm_mul_termrN   I   së   € Ü˜)¤R¨£UÐ+Ð,¨v´r¸!³u¨o¼sÄBÓGÈ2ÒMÐMÐMÜ˜˜V¤R¨£U˜O¬S´"Ó5¸Ò;Ð;Ð;Ü˜)¤R¨£UÐ+Ð,¨v´r¸!³u¨o¼sÄBÓGØ
”R˜“UÐ	Ðòð ð à
”R˜“UÐ	˜i¬¨A«Ð/Ð0€AÜ˜˜F¤B q£E˜?¬C´Ó4Ø
”R˜“UÐ	˜i¬¨A«Ð/Ð0ò1ð 1ñ 1r$   c                  ó"   — t        «       g k(  sJ ‚y )N)r
   r#   r$   r%   Útest_sdm_zerorP   S   s   € Ü‹:˜ÒÐÑr$   c                  ó(   — t        g d¢«      dk(  sJ ‚y )N)©r!   r   ))é
   r   r   r   ))r"   r    rD   rD   é   )r   r#   r$   r%   Útest_sdm_degrU   W   s   € ÜÒDÓEÈÒJÐJÑJr$   c                  óô   — dt        d«      fdt        d«      fg} dt        d«      fg}dt        d«      fg}t        | |t        t         «      g k(  sJ ‚t        | |t        t         «      dt        d«      fgk(  sJ ‚y )N)r"   r   r   r   r@   )r"   r    r   r!   r/   )r   r   r   )rM   ÚgÚhs      r%   Útest_sdm_spolyrY   [   s~   € Ø
”R˜“UÐ	˜i¬¨A«Ð/Ð0€AØ
”R˜“UÐ	Ð€AØ
”R˜“UÐ	Ð€AÜ�Q˜œ3¤Ó# rÒ)Ð)Ð)Ü�Q˜œ3¤Ó#¨´B°q³EÐ(:Ð';Ò;Ð;Ñ;r$   c                  óL   — t        ddg«      dk(  sJ ‚t        ddg«      dk(  sJ ‚y )NrR   )r@   r   r   ))r"   r"   r   r   ))r   r)   r   r   r    )r   r#   r$   r%   Útest_sdm_ecartr[   c   s2   € Ü�n nÐ5Ó6¸!Ò;Ð;Ð;Ü�n nÐ5Ó6¸!Ò;Ð;Ñ;r$   c            	      ó°  — t        t        d«      t        d«      t        d«      t        d«      t        d«      dœt        «      } t        t        d«      t        d«      t        d«      dœt        «      }t        dt        d«      it        «      }t        d«      D �cg c]!  }t        |dddft        d«      it        «      ‘Œ# c}\  }}}t	        | ||gt        t        |||gf¬«      d	t        d«      fd
t        d«      fdt        d«      fdt        d«      fgdt        d«      fdt        d«      fgfk(  sJ ‚t	        | ||gt        t        |||gf¬«      d	t        d«      fd
t        d«      fdt        d«      fgdt        d«      fdt        d«      fdt        d«      fgfk(  sJ ‚t        t        t        z  t        dz  t        t        z  z   t        z
  t        gt        t        t        t        t        g¬«      } t        t        t        dgt        t        t        t        t        g¬«      }t        t        t        z  t        t        dz  gt        t        t        t        t        g¬«      }t	        | ||gt        t        «      t	        | ||gt        t        «      cxk(  r6dt        d«      fdt        d«      fdt        d«      fdt        d«      fgk(  sJ ‚ J ‚y c c}w )Nr   r5   r?   )r:   )r   r   r"   r   )r   r   r   r   r:   r    r   )Úphantomr8   r9   )r   r   r   r   )r   r   r   r   )r"   r   r   r   )r"   r   r   r   r"   ©Úgens)r   r   r   r   ©r   r   r   r   )r   r   r   r   )r   r   r   r   )
r   r   r   Úranger   r   r   r   r   r   )rM   Úf1Úf2ÚiÚid0Úid1Úid2s          r%   Útest_sdm_nf_morarh   h   s˜  € Ü¤R¨£U¼"¸Q»%Ü  ›e´2°a³5ÌÈ1ËñOäó	€Aô 
¤b¨£e¼2¸a»5Ü&(¨£fñ.Ü/4ó
6€Bä	˜¤b¨£eÐ,¬eÓ	4€Bä % a£ö*Øô % q¨!¨Q° l´B°q³EÐ%:¼EÕBò *�O€Sˆ#ˆsô �q˜2˜r˜(¤E¬2¸¸cÀ3¸ZÐ7HÔIØœ˜A›Ð
 ,´°1³Ð!6¸ÄrÈ!ÃuÐ8MØœ˜A›Ð
ð
!àœ˜B›Ð
  <´°A³Ð"7Ð	8ð	:ò:ð :ð :ô �q˜2˜r˜(¤E¬2¸¸cÀ3¸ZÐ7HÔIØœ˜A›Ð
 ,´°1³Ð!6¸ÄrÈ!ÃuÐ8MÐ	NØœ˜B›Ð
  <´°B³Ð"8¸<ÌÈAËÐ:OÐ	Pð	RòRð Rð Rô 	œœ1™œa ™d¤Q¤q¡S™j¬1™n¬aÐ0´#´rÄÄAÄqÀ	ÔJ€AÜ	œ!œQ ˜¤C¬´1´a¼°)Ô	<€BÜ	œ!œA™#œq¤! Q¡$˜¬¬b¼¼1¼a°yÔ	A€BÜ�q˜2˜r˜(¤C¬Ó,Ü�A˜˜B�x¤¤bÓ)ô à
œ˜1›Ð	 ¬r°"«vÐ 6¸ÄrÈ"ÃvÐ8NØ
œ˜1›Ð	ð	 ò ð  ñ  ð  ñ  ùò*s   Â&Kc                  ó4  — t         dz  t        dz  z   dt        z  g} dt        d«      fdt        d«      fdt        d«      fg}t	        |t         t        t        gt        «      | k(  sJ ‚t        | t        t        «      |k(  sJ ‚t        t         dgt        t        «      dt        d«      fdt        d«      fgk(  sJ ‚t	        dgt         t        t        gt        d	¬
«      dt         dgk(  sJ ‚t        ddgt        t        t         t        g¬«      t        «       k(  sJ ‚y )Nr"   r`   )r   r"   r   r   r   )r   r   r"   r   rJ   )r   r   ))r   r   r   r   r   r    )Únr   r^   )r   r   r   r   r   r   r   r
   )rM   rW   s     r%   Útest_conversionrk   ƒ   sý   € Ü	
ˆA‰”�1‘‰�aœ‘cÐ€AØ
œ˜1›Ð	 ¬r°!«uÐ 5¸ÄbÈÃeÐ7LÐM€AÜ˜œQ¤¤1˜I¤rÓ*¨aÒ/Ð/Ð/Ü˜1œc¤2Ó&¨!Ò+Ð+Ð+ÜÜ	
ˆAˆ””RóØ$¤b¨£e˜_¨v´r¸!³u¨oÐ>ò?ð ?ð ?äÐ+Ð,¬q´!´Q¨i¼¸qÔAÀaÌÈAÀYÒNÐNÐNÜ˜A˜q˜6¤3¬´!´Q°Ô8¼H»JÒFÐFÑFr$   c                  óz	  ‡— t         t        t        gŠˆfd„}  | t         t        gt         «      sJ ‚ | t         t        gt         t        z   «      sJ ‚ | t         t        gd«      rJ ‚ | t         t        gt        «      rJ ‚ | t         dz  t        z   t         dz  t         z   gt         t        z
  «      sJ ‚ | t         t        z   t        z   t         t        z  t         t        z  z   t        t        z  z   t         t        z  t        z  gt         dz  «      rJ ‚ | t         t        z   t        z   t         t        z  t         t        z  z   t        t        z  z   t         t        z  t        z  gt         dz  «      sJ ‚ | t         t        z   t        z   t         t        z  t         t        z  z   t        t        z  z   t         t        z  t        z  gt         dz  «      sJ ‚ | t         t        z   t        z   t         t        z  t         t        z  z   t        t        z  z   t         t        z  t        z  gt         t        dz  z  «      rJ ‚ | t         t        z   t        z   t         t        z  t         t        z  z   t        t        z  z   t         t        z  t        z  gt         dz  t        dz  z   dt        z  t        z  t         z  z   «      sJ ‚ | t         t        z   t        z   t         t        z  t         t        z  z   t        t        z  z   t         t        z  t        z  gt         t        z  t        z  «      sJ ‚ | t         dt         z   t        z   ddt        z  z
  gd«      sJ ‚ | t         dz  t        dz  z   t        dz  t        dz  z   t        dz  t         dz  z   t         dz  t        z  t         dz  t        z  z   t        dz  t        z  z   gt         dz  «      sJ ‚ | t         dz  t        dz  z   t        dz  t        dz  z   t        dz  t         dz  z   t         dz  t        z  t         dz  t        z  z   t        dz  t        z  z   gt         dz  t        dz  z   «      rJ ‚ | t         dt         z   t        z   z  t        dt        z   z  gt         «      rJ ‚ | t         dt         z   t        z   z  t        dt        z   z  gt         t        z   «      rJ ‚y )Nc           	      óú   •— | D �cg c]  }t        |gt        t        ‰¬«      ‘Œ }}t        |t        t        t        «      }t	        t        |gt        t        ‰¬«      |t        t        «      t        «       k(  S c c}w ©Nr^   )r   r   r   r   r   r
   )ÚIrM   rW   ÚSÚGr_   s        €r%   Úcontainsz!test_nontrivial.<locals>.contains‘   sf   ø€ Ø?@ÖA¸!Œ_˜a˜S¤#¤r°Ö5ÐAˆÐAÜ˜œK¬¬bÓ1ˆÜœ?¨A¨3´´R¸dÔCØœc¤2ó'Ü*2«*ñ5ð 	5ùò Bs   †A8r   r"   r    rD   r)   rT   r   )rr   r_   s    @r%   Útest_nontrivialrs   Ž   s�  ø€ ÜŒq”!ˆ9€Dô5ñ ”Qœ�FœAÔÐÐÙ”Qœ�FœA¤™EÔ"Ð"Ð"ÙœœA˜ Ô"Ð"Ð"ÙœœA˜¤Ô"Ð"Ð"Ù”Q˜‘TœA‘Xœq !™t¤a™xÐ(¬!¬a©%Ô0Ð0Ð0ÙœœQ™¤™¤A¤a¡C¬!¬A©#¡I´´!±¡O´Q´q±S¼±UÐ;¼QÀ¹TÔBÐBÐBÙ”Qœ‘UœQ‘Y¤¤!¡¤a¬¡c¡	¬A¬a©C¡´´1±´Q±Ð7¼¸A¹Ô>Ð>Ð>Ù”Qœ‘UœQ‘Y¤¤!¡¤a¬¡c¡	¬A¬a©C¡´´1±´Q±Ð7¼¸A¹Ô>Ð>Ð>ÙœœQ™¤™¤A¤a¡C¬!¬A©#¡I´´!±¡O´Q´q±S¼±UÐ;¼Q¼qÀ!¹t¹VÔDÐDÐDÙ”Qœ‘UœQ‘Y¤¤!¡¤a¬¡c¡	¬A¬a©C¡´´1±´Q±Ð7¼¸A¹ÄÀ1Á¹ÀqÌÁsÌ1ÁuÌQÁwÑ9NÔOÐOÐOÙ”Qœ‘UœQ‘Y¤¤!¡¤a¬¡c¡	¬A¬a©C¡´´1±´Q±Ð7¼¼1¹¼Q¹Ô?Ð?Ð?Ù”Q˜œA™¤™	 1 q¬¡s¡7Ð+¨QÔ/Ð/Ð/ÙÜ	
ˆA‰”�1‘‰”a˜‘dœQ ™T‘k¤1 a¡4¬!¨Q©$¡;´°1±´Q±¼¸A¹¼a¹±Ä!ÀQÁ$ÄqÁ&Ñ0HÐIÜ	ˆ1‰ôð ð ñ Ü	
ˆA‰”�1‘‰”a˜‘dœQ ™T‘k¤1 a¡4¬!¨Q©$¡;´°1±´Q±¼¸A¹¼a¹±Ä!ÀQÁ$ÄqÁ&Ñ0HÐIÜ	ˆ1‰Œq�!‰t‰ôð ð ñ
 œ˜A¤™E¤A™I™¬¨1¬q©5©	Ð2´AÔ6Ð6Ð6Ùœ˜A¤™E¤A™I™¬¨1¬q©5©	Ð2´A¼±EÔ:Ð:Ð:Ð:r$   c                  ó(  ‡‡— t        t        «      Št        t        t        gŠˆˆfd„}  | t        t        gt        «      sJ ‚ | t        t        gt        t        z   «      sJ ‚ | t        t        gd«      rJ ‚ | t        t        gt        «      rJ ‚ | t        dz  t        z   t        dz  t        z   gt        t        z
  «      sJ ‚ | t        t        z   t        z   t        t        z  t        t        z  z   t        t        z  z   t        t        z  t        z  gt        dz  «      rJ ‚ | t        dt        z   t        z   z  t        dt        z   z  gt        «      sJ ‚ | t        dt        z   t        z   z  t        dt        z   z  gt        t        z   «      sJ ‚y )Nc           	      óê   •— | D �cg c]  }t        |g‰t        ‰¬«      ‘Œ }}t        |t        ‰t        «      }t        t        |gt        t        ‰¬«      |t        t        «      t        «       k(  S c c}w rn   )r   r   r   r   r   r
   )ro   rM   rW   rp   rq   r_   Úigrlexs        €€r%   rr   ztest_local.<locals>.contains³   sf   ø€ ØBCÖD¸QŒ_˜a˜S &¬"°4Ö8ÐDˆÐDÜ˜œK¨´Ó4ˆÜœ?¨A¨3´´R¸dÔCØœc¤2ó'Ü*2«*ñ5ð 	5ùò Es   †A0r   r"   )r   r   r   r   r   )rr   r_   rv   s    @@r%   Ú
test_localrw   ¯   s1  ù€ Üœ%Ó €FÜŒq”!ˆ9€Dõ5ñ
 ”Qœ�FœAÔÐÐÙ”Qœ�FœA¤™EÔ"Ð"Ð"ÙœœA˜ Ô"Ð"Ð"ÙœœA˜¤Ô"Ð"Ð"Ù”Q˜‘TœA‘Xœq !™t¤a™xÐ(¬!¬a©%Ô0Ð0Ð0ÙœœQ™¤™¤A¤a¡C¬!¬A©#¡I´´!±¡O´Q´q±S¼±UÐ;¼QÀ¹TÔBÐBÐBÙ”Q˜œA™¤™	‘]¤A q¬1¡u¡IÐ.´Ô2Ð2Ð2Ù”Q˜œA™¤™	‘]¤A q¬1¡u¡IÐ.´´A±Ô6Ð6Ñ6r$   c                  ó0  — t         t        g} t        «       }t        t         dgt        t
        | ¬«      }t        dt        gt        t
        | ¬«      }t        ||t        t
        «      t        «       k(  sJ ‚t        ||t        t
        «      t        «       k(  sJ ‚y )Nr   r^   )r   r   r
   r   r   r   r   )r_   rb   rc   Úf3s       r%   Útest_uncovered_linerz   Â   sp   € ÜŒqˆ6€DÜ	‹€BÜ	œ!˜Q˜¤¤b¨tÔ	4€BÜ	˜!œQ˜¤¤b¨tÔ	4€Bä�R˜œS¤"Ó%¬«Ò3Ð3Ð3Ü�R˜œS¤"Ó%¬«Ò3Ð3Ñ3r$   c                  óà   — t         g} t        dt         gt        t        | ¬«      }t        dt         dz
  gt        t        | ¬«      }t	        t        ||gt        t        t        «      «      dk(  sJ ‚y )Nr   r^   r   r"   )r   r   r   r   Úlenr   r   )r_   rb   rc   s      r%   Útest_chain_criterionr}   Ì   sW   € Üˆ3€DÜ	˜!œQ˜¤¬°Ô	6€BÜ	˜!œQ ™U˜¤U¬B°TÔ	:€BÜŒ|˜R ˜H¤k´5¼"Ó=Ó>À!ÒCÐCÑCr$   N)2Ú__doc__Úsympy.polys.distributedmodulesr   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   Úsympy.polys.orderingsr   r   r   Úsympy.polys.domainsr   Ú	sympy.abcr   r   r   r&   r*   r,   r1   r3   r=   rA   rF   rH   rN   rP   rU   rY   r[   rh   rk   rs   rw   rz   r}   r#   r$   r%   ú<module>rƒ      sœ   ðÙ ,÷÷ ÷ ÷ ÷ ÷ ;Ñ :Ý "ç Ñ ò<ò,ò?ò?ò5òNò1ò8ò
Aò
1òòKò<ò<ò
 ò6Gò;òB7ò&4óDr$   