+
    i3&                        ^ RI Ht ^ RIHtHt ^ RIHtHt ^ RIH	t	 ^ RI
Ht ^ RIHtHt ^ RIHt ^ RIHt ^ R	IHt ^ R
IHtHt ^ RIHtHtHt ^ RI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# )    )prod)QQZZ)xtheta)	factorint)n_order)Polycyclotomic_poly)DomainMatrix)	round_two)StructureError)
PowerBasisto_col)prime_decomp_two_elt_rep*_check_formal_conditions_for_maximal_order)raisesc                    aaa \        \        ^\        4      4      p \        V 4      pVP	                  ^\
        P                  ! ^\        4      ,          4      oSP	                  ^\
        P                  ! ^\        4      ,          4      oVP	                  \
        P                  ! ^\        4      RRR13,          4      o\        \        V3R l4       \        \        V3R l4       \        \        V3R l4       R# )   :NNNNc                     < \        S 4      # Nr   )Bs   h/var/www/html/photoedit/myenv/lib/python3.14/site-packages/sympy/polys/numberfields/tests/test_primes.py<lambda>@test_check_formal_conditions_for_maximal_order.<locals>.<lambda>       #Ma#P    c                     < \        S 4      # r   r   )Cs   r   r   r      r   r   c                     < \        S 4      # r   r   )Ds   r   r   r      r   r   )
r
   r   r   r   submodule_from_matrixr   eyer   r   r   )TAr   r!   r#   s     @@@r   .test_check_formal_conditions_for_maximal_orderr)      s    _Q"#A1A	L$4$4Q$; ;<A	L$4$4Q$; ;<A	 0 0B 73B3 ?@A
>PQ
>PQ
>PQr   c                  \   ^p \        \        V 4      4      p\        V4      w  r#R F  p\        WA4      pV Fn  pWB,          VP                  V,          ,           pVP                  4       p\        WV4      p	WP                  8w  g   KQ  WB,          W,          ,           p
W8X  d   Kn  Q h	  K  	  R#    N)         r   )r
   r   r   r   alphabasis_element_pullbacksr   )ellr'   ZKdKpPPiHgensbH2s              r   test_two_elt_repr<   !   s    
C_S!"Aq\FBB rxx{"A,,.DTq)AHH}TAD[ww  r   c                  ,   ^p \        \        V 4      4      p\        V4      w  r#\        WW2R7      p\	        V4      ^8X  g   Q hV^ ,          pVP                  W,          4      pWeP                  8X  g   Q hVP                  ^V,          4      ^ 8X  g   Q hR# )r,   r4   r3   N)r
   r   r   r   len	valuatione)r5   r'   r3   r4   r6   P0vs          r   test_valuation_at_prime_idealrD   7   s    	A_Q Aq\FBQb(Aq6Q;;	
1B
QTA99<<""""r   c                     \        \        ^4      4      p \        \        R 4       \	        ^V 4      p\        V4      ^8X  g   Q hV^ ,          pVP                  ^8X  g   Q hVP                  ^8X  g   Q hV^ ,          VP                  8X  g   Q hV^,          V8X  g   Q hV^,          ^VP                  ,          8X  g   Q hR# )r,   c                      \        ^4      # )r,   )r    r   r   r   test_decomp_1.<locals>.<lambda>I   s    |Ar   N)	r
   r   r   
ValueErrorr   r?   rA   fr3   )r'   r6   rB   s      r   test_decomp_1rK   D   s     	_Q A
:./QAq6Q;;	
1B4419944199q5BEE>>q5B;;q5AIr   c                     ^p \        \        V 4      4      pR Fj  p\        W 4      pV ^,
          V,          p\        W!4      p\	        V4      V8X  g   Q hV F)  pVP
                  ^8X  g   Q hVP                  V8X  d   K)  Q h	  Kl  	  R# r+   )r
   r   r	   r   r?   rA   rJ   )r2   r'   r5   f_expg_expr6   r7   s          r   test_decomp_2rO   U   s{    
C_S!"AqU"1vB44199445= =  r   c            
      >   \        \        ^,          ^#,
          4      p / p\        WR7      w  r#R Fi  p\        W@W2VP	                  V4      R7      p\        V4      ^8X  g   Q hV^ ,          P                  ^8X  g   Q hV^ ,          ^,          WB,          8X  d   Ki  Q h	  R# )   radicalsr4   r3   radicalN)rQ   r   r,   r
   r   r   r   getr?   rA   r'   radr3   r4   r5   r6   s         r   test_decomp_3rZ   c   s    Q!Vb[A
Cq'FB "SWWQZ@1v{{tvv{{tQw!$	 r   c            
      >   \        \        ^,          ^,
          4      p / p\        WR7      w  r#R Fi  p\        W@W2VP	                  V4      R7      p\        V4      ^8X  g   Q hV^ ,          P                  ^8X  g   Q hV^ ,          ^,          WB,          8X  d   Ki  Q h	  R# )rQ   rR   rT   N)   r,   rV   rX   s         r   test_decomp_4r]   p   s    Q!Vb[A
Cq'FB "SWWQZ@1v{{tvv{{tQw!$	 r   c            
        a R EF_  p \        \        ^,          V ,
          4      p/ p\        WR7      w  r4^p\        WQWCVP	                  V4      R7      oV ^,          ^8X  d   \        S4      ^8X  g   Q h\        ;QJ d(    V3R l\        ^4       4       F  '       d   K   RM	  RM! V3R l\        ^4       4       4      '       g   Q h\        R S 4       4      WS,          8X  g   Q hK  V ^,          ^8X  g   Q h\        S4      ^8X  g   Q hS^ ,          P                  ^8X  g   Q hS^ ,          P                  ^8X  g   Q hS^ ,          P                  4       WS,          8X  d   EK`  Q h	  R# )	r,   rR   rT   c              3      <"   T F9  pSV,          P                   ^8H  ;'       d    SV,          P                  ^8H  x  K;  	  R# 5i   NrA   rJ   ).0ir6   s   & r   	<genexpr> test_decomp_5.<locals>.<genexpr>   s4     EHqqtvv{22qtvv{2Hs
   !AAFTc              3   F   "   T F  qVP                   ,          x  K  	  R # 5ir   rA   rc   r7   s   & r   re   rf      s     -1RBDD1   !N)i)r
   r   r   r   rW   r?   allranger   rA   rJ   as_submodule)dr'   rY   r3   r4   r5   r6   s         @r   test_decomp_5rp   }   s    a!1+"SWWQZ@q5A:q6Q;;3EE!HE333EE!HEEEEE-1--777q5A::q6Q;;Q466Q;;Q466Q;;Q4$$&!&000 r   c            	         \        \        ^,          \        ^,          ,           ^\        ,          ,
          ^,           4      p / p\        WR7      w  r#^p\        W@W2VP	                  V4      R7      p\        V4      ^8X  g   Q h\        ;QJ d    R V 4       F  '       d   K   RM	  RM! R V 4       4      '       g   Q h\        R V 4       4      WB,          8X  g   Q hR# )r\   rR   rT   c              3   t   "   T F.  qP                   VP                  u;8H  ;'       d    ^8H  Mu x  K0  	  R# 5ir`   rb   ri   s   & r   re    test_decomp_6.<locals>.<genexpr>   &     -1Rttrtt  q  1   68FTc              3   F   "   T F  qVP                   ,          x  K  	  R # 5ir   rh   ri   s   & r   re   rs           %1RBDD1rj   N)r
   r   r   r   rW   r?   rl   r   rX   s         r   test_decomp_6rx      s     	Q!Va1f_q1u$q()A
Cq'FB	AQb<Aq6Q;;3-1-333-1-----%1%%---r   c                     \        \        ^,          \        ^,          ,           ^\        ,          ,
          ^,           4      p \        P                  ! V 4      p^pVP	                  V4      pVP                  4       p\        V4      ^8X  g   Q h\        ;QJ d    R V 4       F  '       d   K   RM	  RM! R V 4       4      '       g   Q h\        R V 4       4      W$,          8X  g   Q hR# )r\   c              3   t   "   T F.  qP                   VP                  u;8H  ;'       d    ^8H  Mu x  K0  	  R# 5ir`   rb   ri   s   & r   re    test_decomp_7.<locals>.<genexpr>   rt   ru   FTc              3   F   "   T F  qVP                   ,          x  K  	  R # 5ir   rh   ri   s   & r   re   r{      rw   rj   N)	r
   r   r   alg_field_from_polyprimes_abovemaximal_orderr?   rl   r   )r'   Kr5   r6   r3   s        r   test_decomp_7r      s    Q!Va1f_q1u$q()A
q!A	A	qA	
	Bq6Q;;3-1-333-1-----%1%%---r   c                     \         ^,          ^\         ^,          ,          ,           ^\         ,          ,
          ^,           \         ^,          ^\         ^,          ,          ,           ^\         ,          ,           ^,
          \         ^,          ^\         ^,          ,          ,           \         ,
          ^,           \         ^,          ^\         ^,          ,          ,           ^\         ,          ,
          ^,
          \         ^,          ^\         ^,          ,          ,           ^,           \         ^,          ^\         ^,          ,          ,           ^\         ,          ,           ^,
          \         ^,          ^\         ^,          ,          ,           ^,           \         ^,          ^\         ^,          ,          ,           ^\         ,          ,           ^,
          \         ^,          ^\         ^,          ,          ,           \         ,
          ^,           \         ^,          ^\         ^,          ,          ,           ^\         ,          ,
          ^,           \         ^,          ^\         ^,          ,          ,           ^\         ,          ,
          ^,           \         ^,          ^\         ^,          ,          ,           ^\         ,          ,           ^,
          \         ^,          ^\         ^,          ,          ,           ^\         ,          ,
          ^,           \         ^,          ^\         ^,          ,          ,           ^\         ,          ,
          ^,           \         ^,          ^	\         ^,          ,          ,           ^\         ,          ,           ^,
          \         ^,          ^\         ^,          ,          ,           ^	\         ,          ,
          ^,           3p R pRpV  F  p\        V4      p/ p\        WER7      w  rgVP                  4       pW,          p	\	        V	4      p
V
 FV  pVP                  V4      p\        WWvVR7      p\        R V 4       4      pW,          pV'       d   V! WKWW4       W8X  d   KV  Q h	  K  	  R# )r\   c                    \        R4       \        WV4       V F  p\        RV: R24       K  	  \        RV4       \        RV4       \        RWE8H   24       R# )z2Useful for inspection, when running test manually.z  ()zI: zJ: zEqual: Nz====================)print)r'   r5   rU   r6   IJr7   s   &&&&&& r   displaytest_decomp_8.<locals>.display   sP    haGBCvQ-  eQeQx !r   FrR   rT   c              3   F   "   T F  qVP                   ,          x  K  	  R # 5ir   rh   ri   s   & r   re    test_decomp_8.<locals>.<genexpr>   s     *"XXrj   N)r   r
   r   discriminantr   rW   r   r   )casesr   inspectgr'   rY   r3   r4   dT	f_squaredFr5   rU   r6   r   r   s                   r   test_decomp_8r      s    	
QQ!Va!e#a'	QQ!Va!e#a'	QQ!Va!#	QQ!Va!e#a'	QQ!Va	QQ!Va!e#a'	QQ!Va	QQ!Va!e#a'	QQ!Va!#	QQ!Va!e#a'	QQ!Va!e#a'	QQ!Va!e#a'	QQ!Va!e#a'	QQ!Va!e#a'	QQ!Va!e#a'	Qa1fq1u$r)!E$" GG1+^^H	i AggajGQbAA***AAg!/6M6  r   c                      \        \        ^4      4      p \        ^V 4      ^ ,          pVP                  ^8X  g   Q hVP	                  4       ^VP
                  ,          8X  g   Q hV^8w  g   Q hR# r,   N)r
   r   r   rJ   rn   r3   r'   rB   s     r   test_PrimeIdeal_eqr      s\     	_Q A	a	A	B44199??BEE	)))7N7r   c                      \        \        ^4      4      p \        ^V 4      ^ ,          pV^VP                  ,          ,           VP	                  4       8X  g   Q hR# r   )r
   r   r   r3   rn   r   s     r   test_PrimeIdeal_addr      sE    _Q A	a	A	B BEE	>R__....r   c                     \         P                  ! \        \        ^,          ^,           4      4      p V P	                  ^4      ^ ,          p\        V4      R8X  g   Q hV P	                  ^4      ^ ,          p\        V4      R8X  g   Q h\         P                  ! \        \        ^,          ^,           4      RR7      p V P	                  ^4      ^ ,          p\        V4      R8X  g   Q hV P	                  ^4      ^ ,          p\        V4      R8X  g   Q hR# )rQ   z(2, 3*_x/2 + 1/2)z(3)r0   )aliasz(2, 3*alpha/2 + 1/2)N)r   r}   r
   r   r~   str)kfrps     r   test_strr      s    
tAqD1H~.A
..
A
Cs8****
..
A
Cs8u 	tAFQJ/w?A
..
A
Cs8----
..
A
Cs8ur   c                  :   \        \        ^,          ^,           4      p \        V 4      w  r\        ^WVR7      p\	        V^ ,          4      R8X  g   Q hV^ ,          P	                  \
        R7      R8X  g   Q hV^ ,          P	                  \
        RR7      R8X  g   Q hR# )	rQ   r>   z[ (2, (3*x + 1)/2) e=1, f=1 ])	field_genz![ (2, (3*theta + 1)/2) e=1, f=1 ]T)r   	just_gensz(2, (3*theta + 1)/2)N)r
   r   r   r   reprr   )r'   r3   r4   r6   s       r   	test_reprr     s    QTAXAq\FBQR(A!:8888Q499u9%)LLLLQ499u959OOOOr   c                     \         P                  ! \        \        ^,          \        ^,          ,           ^\        ,          ,
          ^,           4      4      p V P	                  4       pV P                  ^4      pV^,          pVP                  \        . RO4      ^R7      pVP                  \        . RO4      ^R7      pVP                  V4      pWe8X  g   Q hV ! \        ^^4      \        ^^4      \        ^^4      .4      pV ! \        ^^4      \        ^^4      \        ^^4      .4      pVP                  V4      pWe8X  g   Q hV P                  V4      pV P                  V4      pVP                  V4      pWe8X  g   Q hR# )r\   )denomN)      r/   )r/   r   rQ   )r   r}   r
   r   r   r~   parentr   reduce_element
reduce_ANP
to_alg_numreduce_alg_num)r   Zkr6   r   aa_bar_expecteda_bars          r   test_PrimeIdeal_reducer     s;   
tAFQ!VOa!e$;a$?@AA	
	B	qA
A$C 			&&a	0AYYvj1Y;Nq!E""" 	
2b!9bQiB
+,A1a"Q(Br1I67NNN1E""" 	
QA\\.1Nq!E"""r   c                  &   \         P                  ! \        \        ^,          \        ^,          ,           ^\        ,          ,
          ^,           4      4      p V P	                  ^4      pV^ ,          P
                  P                  ^ 4      '       g   Q hR# )r\   N)r   r}   r
   r   r~   r0   equiv)r   r6   s     r   test_issue_23402r   %  s^    
tAFQ!VOa!e$;a$?@AA	qAQ4::Ar   N)/mathr   sympyr   r   	sympy.abcr   r   sympy.ntheoryr   sympy.ntheory.residue_ntheoryr	   sympy.polysr
   r   sympy.polys.matricesr   sympy.polys.numberfields.basisr   #sympy.polys.numberfields.exceptionsr    sympy.polys.numberfields.modulesr   r   sympy.polys.numberfields.primesr   r   r   sympy.testing.pytestr   r)   r<   rD   rK   rO   rZ   r]   rp   rx   r   r   r   r   r   r   r   r   rG   r   r   <module>r      s       # 1 - - 4 > ?  (R,
#"!

12
.	.-`/$P#2r   