+
    i                        R t ^ RIHtHtHtHtHtHtHtH	t	H
t
HtHtHtHtHtHtHtHtHt ^ RIHtHtHt ^ RIHt ^ RIHtHtHt R tR tR t R t!R	 t"R
 t#R t$R t%R t&R t'R t(R t)R t*R t+R t,R t-R t.R t/R t0R t1R# )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                  ,    \        RR4      R8X  g   Q hR# )   Nr   r       )r      r      r    )r        g/var/www/html/photoedit/myenv/lib/python3.14/site-packages/sympy/polys/tests/test_distributedmodules.pytest_sdm_monomial_mulr&      s    Iv.);;;r$   c                  *    \        R4      ^8X  g   Q hR# )   Nr(   r"   r   )r   r#   r$   r%   test_sdm_monomial_degr*      s    I&!+++r$   c                  ,    \        RR4      R8X  g   Q hR# )r   Nr!   )r   r(   r   )r   r(   r    )r   r#   r$   r%   test_sdm_monomial_lcmr,      s    Iy1Y>>>r$   c                      \        RR4      RJ g   Q h\        RR4      RJ g   Q h\        RR4      RJ g   Q h\        RR4      RJ g   Q h\        R	R4      RJ g   Q h\        R
R4      RJ g   Q hR# )r   TFNr   r   r   r   r"   r   )r(   r   r   r)   r"   r   r   r   )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                  ^    \        R\        ^4      3.\        4      \        ^4      8X  g   Q hR# )r   Nr!   )r   r   r#   r$   r%   test_sdm_LCr3   '   s'    Ir!u%&+r!u444r$   c                     R\        ^4      R\        ^4      R\        ^4      R\        ^4      R\        ^4      /p \        V \        4      R\        ^4      3R\        ^4      3R\        ^4      3R\        ^4      3R\        ^4      3.8X  g   Q hR# )r   Nr   r"   r   r   r   r   r"   r   r   r   r"   r   r   r   r   r    r   r   r   r   )r   r   r   dics    r%   test_sdm_from_dictr<   +   s    Abe\2a5Abe5Ce$
1	r!u 5
1	r!u 5be7L	NN N Nr$   c                  &   \        R\        ^4      3.R\        ^4      3.\        \        4      R\        ^4      3R\        ^4      3.8X  g   Q h\        R\        ^4      3.R\        R4      3.\        \        4      . 8X  g   Q h\        R\        ^4      3.R\        ^4      3.\        \        4      R\        ^4      3.8X  g   Q h\        R\        ^4      3.R\        ^4      3.\        \        4      R\        ^4      3R\        ^4      3.8X  g   Q hR# )r   N)r   r   r   r0   r.   r   r   r   r   )r   r   r   r#   r$   r%   test_sdm_addr@   5   s   Y1&'9be*<)=sBG
RU	iA/01 1 1Y1&'9bf*=)>RHBNNNY1&'9be*<)=sBG
RU	  Y1&'9be*<)=sBG
RU	iA/01 1 1r$   c                      R\        ^4      R\        ^4      R\        ^4      /p \        \        V \        4      4      R8X  g   Q hR# r   Nr!   )   r   r   )rC   r   r   )r   r   r   r   r:   s    r%   test_sdm_LMrD   ?   s:    beY1y"Q%
@C-S)*i777r$   c                      R\        ^4      R\        ^4      R\        ^4      /p \        \        V \        4      4      R\        ^4      38X  g   Q hR# rB   )r   r   r   r   r:   s    r%   test_sdm_LTrF   D   sC    beY1y"Q%
@C-S)*y"Q%.@@@@r$   c                     \        R\        ^4      3.R\        ^ 4      3\        \        4      . 8X  g   Q h\        . R\        ^4      3\        \        4      . 8X  g   Q h\        R\        ^4      3.R\        ^4      3\        \        4      R\        ^4      3.8X  g   Q hR\        ^4      3R\        ^4      3.p \        V R\        ^4      3\        \        4      R\        ^4      3R	\        ^4      3.8X  g   Q hR# )
r   Nr.   )r   r   r   r   r   )r"   r   r   )r   r   )r"   r   r"   r/   )r   r   r   )fs    r%   test_sdm_mul_termrJ   I   s    )RU+,vr!uosBG2MMMVRUOS"5;;;)RU+,vr!uosBG
RU	  
RU	iA/0AFBqE?C4
RU	iA/01 1 1r$   c                  (    \        4       . 8X  g   Q hR # )N)r	   r#   r$   r%   test_sdm_zerorL   S   s    :r$   c                  .    \        . RO4      ^8X  g   Q hR# )r   N)r!   r   ))
   r   r   r   ))r"   r    rC   rC   )r
   r#   r$   r%   test_sdm_degrP   W   s    DEJJJr$   c                      R\        ^4      3R\        ^4      3.p R\        ^4      3.pR\        ^4      3.p\        W\        \         4      . 8X  g   Q h\        W\        \         4      R\        ^4      3.8X  g   Q hR# )r"   N)r"   r   r   r?   )r"   r    r   r!   r/   )r   r   r   )rI   ghs      r%   test_sdm_spolyrT   [   sz    
RU	iA/0A
RU	A
RU	AQ3#r)))Q3#BqE(:';;;;r$   c                  V    \        RR.4      ^ 8X  g   Q h\        RR.4      ^8X  g   Q hR# )r   NrN   )r?   r   ))r"   r"   r   r   ))r   r(   r   r   )r   r#   r$   r%   test_sdm_ecartrV   c   s2    nn56!;;;nn56!;;;r$   c                     \        R\        ^4      R\        ^4      R\        ^4      R\        ^4      R\        ^4      /\        4      p \        R\        ^4      R	\        ^4      R
\        R4      /\        4      p\        R\        ^4      /\        4      p\        ^4       Uu. uF"  p\        V^ ^ ^ 3\        ^4      /\        4      NK$  	  upw  rEp\	        WV.\        \        WEV.3R7      R\        ^4      3R\        ^4      3R\        ^4      3R\        ^4      3.R\        R4      3R\        ^4      3.38X  g   Q h\	        WV.\        \        WFV.3R7      R\        ^4      3R\        ^4      3R\        ^4      3.R\        R4      3R\        R4      3R\        ^4      3.38X  g   Q h\        \        \        ,          \        ^,          \        \        ,          ,           \        ,
          \        .\        \        \        \        \        .R7      p \        \        \        ^.\        \        \        \        \        .R7      p\        \        \        ,          \        \        ^,          .\        \        \        \        \        .R7      p\	        WV.\        \        4      \	        WV.\        \        4      u;8X  d9   R\        ^4      3R\        R4      3R\        R4      3R\        ^4      3.8X  g   Q h Q hR# u upi )r   )phantomgensNr5   r6   r7   r8   r9   )r   r   r"   r   )r   r   r   r   r>   )r   r   r   r   )r   r   r   r   )r"   r   r   r   )r"   r   r   r   )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   )rI   f1f2iid0id1id2s          r%   test_sdm_nf_morarc   h   s   |RUL"Q%be\2a5,1O	A 
be\2a5$bf./4
6B	be,e	4B %a* (1 %q!QlBqE%:EB (*OSs qr(E23Z7HIA
,1!6r!u8MA

!B
 <A"7	8	:: : : qr(E23Z7HIA
,1!6r!u8M	NB
 <B"8<A:O	P	RR R R 	1adQqSj1na0#rAq	JA	!QC1a)	<B	!A#q!Q$b1ay	ABqr(C,ABxb) 
1	r"v 6r"v8N
1		          *s   !(K9c                  j   \         ^,          \        ^,          ,           ^\        ,          .p R\        ^4      3R\        ^4      3R\        ^4      3.p\	        V\         \        \        .\        4      V 8X  g   Q h\        V \        \        4      V8X  g   Q h\        \         ^.\        \        4      R\        ^4      3R\        ^4      3.8X  g   Q h\	        R	.\         \        \        .\        ^R7      ^ \         ^ .8X  g   Q h\        ^ ^ .\        \        \         \        .R7      \        4       8X  g   Q hR# )
r"   )nrY   Nr[   )r   r"   r   r   )r   r   r"   r   rH   )r   r   ))r   r   r   r   r   )r   r   r   r   r   r   r   r	   )rI   rR   s     r%   test_conversionrf      s    	
A1acA
1	r!u 5be7LMAQ1Ir*a///1c2&!+++	
AR$be_vr!uo>? ? ?+,q!QiqAaAYNNNAq63!Q8HJFFFr$   c                  6  a \         \        \        .oV3R  lp V ! \         \        .\         4      '       g   Q hV ! \         \        .\         \        ,           4      '       g   Q hV ! \         \        .^4      '       d   Q hV ! \         \        .\        4      '       d   Q hV ! \         ^,          \        ,           \         ^,          \         ,           .\         \        ,
          4      '       g   Q hV ! \         \        ,           \        ,           \         \        ,          \         \        ,          ,           \        \        ,          ,           \         \        ,          \        ,          .\         ^,          4      '       d   Q hV ! \         \        ,           \        ,           \         \        ,          \         \        ,          ,           \        \        ,          ,           \         \        ,          \        ,          .\         ^,          4      '       g   Q hV ! \         \        ,           \        ,           \         \        ,          \         \        ,          ,           \        \        ,          ,           \         \        ,          \        ,          .\         ^,          4      '       g   Q hV ! \         \        ,           \        ,           \         \        ,          \         \        ,          ,           \        \        ,          ,           \         \        ,          \        ,          .\         \        ^,          ,          4      '       d   Q hV ! \         \        ,           \        ,           \         \        ,          \         \        ,          ,           \        \        ,          ,           \         \        ,          \        ,          .\         ^,          \        ^,          ,           ^\        ,          \        ,          \         ,          ,           4      '       g   Q hV ! \         \        ,           \        ,           \         \        ,          \         \        ,          ,           \        \        ,          ,           \         \        ,          \        ,          .\         \        ,          \        ,          4      '       g   Q hV ! \         ^\         ,           \        ,           ^^\        ,          ,
          .^4      '       g   Q hV ! \         ^,          \        ^,          ,           \        ^,          \        ^,          ,           \        ^,          \         ^,          ,           \         ^,          \        ,          \         ^,          \        ,          ,           \        ^,          \        ,          ,           .\         ^,          4      '       g   Q hV ! \         ^,          \        ^,          ,           \        ^,          \        ^,          ,           \        ^,          \         ^,          ,           \         ^,          \        ,          \         ^,          \        ,          ,           \        ^,          \        ,          ,           .\         ^,          \        ^,          ,           4      '       d   Q hV ! \         ^\         ,           \        ,           ,          \        ^\        ,           ,          .\         4      '       d   Q hV ! \         ^\         ,           \        ,           ,          \        ^\        ,           ,          .\         \        ,           4      '       d   Q hR# )c           
         < V  Uu. uF  p\        V.\        \        SR 7      NK  	  pp\        V\        \        \        4      p\	        \        V.\        \        SR 7      V\        \        4      \        4       8H  # u upi rY   )r   r   r   r   r   r	   )IrI   rR   SGrZ   s   &&   r%   contains!test_nontrivial.<locals>.contains   sg    ?@Aq!_aS#r5qAKb1?A3RdCc2'*2*5 	5 Bs   !A:Nr   )rm   rZ   s    @r%   test_nontrivialro      s   q!9D5 QFAQFAE""""A""""A""""QTAXq!tax(!a%0000QAaC!A#I!OQqSU;QTBBBBQUQY!ac	AaC1Q7A>>>>QUQY!ac	AaC1Q7A>>>>QAaC!A#I!OQqSU;Qq!tVDDDDQUQY!ac	AaC1Q7A1qs1uQw9NOOOOQUQY!ac	AaC1Q71Q????QA	1qs7+Q////	
A1adQTk1a4!Q$;1QAa!Q$q&0HI	1    	
A1adQTk1a4!Q$;1QAa!Q$q&0HI	1q!t   
 AEAI1q5	2A6666AEAI1q5	2AE:::::r$   c                  d  aa \        \        4      o\        \        \        .oVV3R  lp V ! \        \        .\        4      '       g   Q hV ! \        \        .\        \        ,           4      '       g   Q hV ! \        \        .^4      '       d   Q hV ! \        \        .\        4      '       d   Q hV ! \        ^,          \        ,           \        ^,          \        ,           .\        \        ,
          4      '       g   Q hV ! \        \        ,           \        ,           \        \        ,          \        \        ,          ,           \        \        ,          ,           \        \        ,          \        ,          .\        ^,          4      '       d   Q hV ! \        ^\        ,           \        ,           ,          \        ^\        ,           ,          .\        4      '       g   Q hV ! \        ^\        ,           \        ,           ,          \        ^\        ,           ,          .\        \        ,           4      '       g   Q hR# )c           
         < V  Uu. uF  p\        V.S\        SR 7      NK  	  pp\        V\        S\        4      p\        \        V.\        \        SR 7      V\        \        4      \        4       8H  # u upi ri   )r   r   r   r   r   r	   )rj   rI   rR   rk   rl   rZ   igrlexs   &&   r%   rm   test_local.<locals>.contains   sg    BCD!Q_aS&"48!DK4?A3RdCc2'*2*5 	5 Es   A2N)r   r   r   r   r   )rm   rZ   rr   s    @@r%   
test_localrt      sI   % Fq!9D5
 QFAQFAE""""A""""A""""QTAXq!tax(!a%0000QAaC!A#I!OQqSU;QTBBBBQA	]Aq1uI.2222QA	]Aq1uI.A6666r$   c                  6   \         \        .p \        4       p\        \         ^ .\        \
        V R7      p\        ^ \        .\        \
        V R7      p\        W\        \
        4      \        4       8X  g   Q h\        W2\        \
        4      \        4       8X  g   Q hR# )r   rY   N)r   r   r	   r   r   r   r   )rZ   r]   r^   f3s       r%   test_uncovered_linerw      sl    q6D	B	!Qbt	4B	!Qbt	4BRS"%333RS"%333r$   c                      \         .p \        ^\         .\        \        V R7      p\        ^ \         ^,
          .\        \        V R7      p\	        \        W.\        \        \        4      4      ^8X  g   Q hR# )r   rY   N)r   r   r   r   lenr   r   )rZ   r]   r^   s      r%   test_chain_criterionrz      sU    3D	!Q	6B	!QUUBT	:B|RHk5"=>!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<   r@   rD   rF   rJ   rL   rP   rT   rV   rc   rf   ro   rt   rw   rz   r#   r$   r%   <module>r      s    ,     ; : "  <,??5N18
A
1K<<
 6G;B7&4Dr$   