
    Цi                         S r SSKJrJrJr  SSKJr  SSKJr  SSK	J
r
  SSKJr  SSKJr  SSKJr  SS	KJr  SS
KJr  SSKJr  SSKJrJrJr  SSKJr  SSKJrJrJ r J!r!J"r"  SSKJ#r#  SSK$J%r%  S r&S r'S r(S r)S r*g)z6Tests for solvers of systems of polynomial equations.     )IIntegerRational)S)symbols)sqrt)QQ)UnsolvableFactorError)Options)Poly)solve)flatten)xyz)PolynomialError)solve_poly_systemsolve_triangulatedsolve_biquadraticSolveFailedsolve_generic)parallel_poly_from_expr)raisesc                  	   [        [        S-
  /[        5      [        R                  4/:X  d   e[        [        [        -
  [        [        -
  S-
  /[        [        5      b   e[        [        [        S-  -
  [        [        S-  -   /[        [        5      [        R
                  [        R
                  4/:X  d   e[        S[        -  S-
  [        [        SS5      -  S[        -  -
  [        S[        -  -
  /[        [        [        5      [        SS5      [        S5      [        S5      4/:X  d   e[        [        [        -  S[        -  -
  S[        S-  -  [        S-  -
  /[        [        5      SS[        S5      * 4S[        S5      4/:X  d   e[        [        [        S-  -
  [        [        S-  -   S-   /[        [        5      [        * [        [        R                  5      -  [        SS5      4[        [        [        R                  5      -  [        SS5      4/:X  d   e[        S-  [        -   [        -   S-
  n [        [        S-  -   [        -   S-
  n[        [        -   [        S-  -   S-
  n[        S5      S-
  [        S5      * S-
  pC[        XU/[        [        [        5      SS	S
X3U4XDU4/:X  d   eSS/n[        [        [        S-  [        S-  -
  5      [        [        S-
  5      /5      U:X  d   e[        [        S-  [        S-  -
  [        S-
  /[        [        5      U:X  d   e[        [        S-  [        S-  -
  [        S-
  /5      U:X  d   e[        [        [        [        -  -   S-
  [        [        [        -  -   S-
  /[        [        5      SS/:X  d   e[        [        S 5        [        [        S 5        [        [        S 5        [        [        S 5        [        [        S 5        [        [        S-  [        -
  S-   /[        /SS9/ :X  d   e[        [         S 5        [        [        S-
  [        S-  [        -
  S-   -  [        S-  S-
  /[        [        /SS9SS/:X  d   e[        [         S 5        g )N            
   )r   r   r   r   r   r   r   r   r   r   r   r   r    r   r      ))r   r   c                  P    [        [        S-  [        S-  -
  /[        [        5      $ )Nr   r   r   r        _/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/sympy/solvers/tests/test_polysys.py<lambda>(test_solve_poly_system.<locals>.<lambda>8   s    (91a4!Q$;-A(Nr,   c                      [        [        S[        -  [        S-  -  [        -   [        S-  [        -  -   [        S-  [        * S-
  -  S-   /5      $ )Nr(   r   r&   )r   r   r   r   r+   r,   r-   r.   r/   9   sD    (9	
BqDAIMAqDF"AqD1"q&MA$56)8r,   c                  2    [        S[        -  /[        5      $ Nr   r   r   r+   r,   r-   r.   r/   ;   s    $5qseQ$?r,   c                  >    [        [        S-
  /[        [        45      $ r2   r*   r+   r,   r-   r.   r/   =       (9Q3&1a&)r,   c                  >    [        [        S-
  /[        [        45      $ r2   )r   r   r   r+   r,   r-   r.   r/   ?   r5   r,   Fstrictc                  F    [        [        S-  [        -
  S-   /[        /SS9$ )Nr   r   Tr7   r3   r+   r,   r-   r.   r/   E   s!    *;	
AAD+*r,   c                  z    [        [        S-
  [        S-  [        -
  S-   -  [        S-  S-
  /[        [        /SS9$ )Nr   r   r   Tr7   r*   r+   r,   r-   r.   r/   K   s7    $q1uq!tax!|&<ad1f%E&'VD:r,   )r   r   r   Oner   Zeror   r   r   r   r   Halfr   r   NotImplementedErrorr   r
   )f_1f_2f_3absolutions         r-   test_solve_poly_systemrE      s   a!eWa(aeeXJ666a!eQUQY/A6>>>a!Q$hAqD11a8affaff=M<NNNNacAgq!Q'7!A#'=q1Q3wGAqQ
1a.'!*gbk	234 4 4 acAaCi1a4!Q$7A>	!d1gXDG-. . . a!Q$hAqD15q!<"T!&&\/8B?	+aQVVnhr1o-NOP P P Q$(Q,
C
ad(Q,
C
a%!Q$,
C7Q;a1qc_aA6	Iy1)aAY?@ @ @  Hd1a4!Q$;/a!e=>(JJJadQTk1q511a8HDDDadQTk1q512h>>>	
QqS1a!A#gk"Aq*.6-?@ @ @  NO
 !8 9
??@
 ! 
 ! 
 adQhl^aS?2EEE
  #* + q1uq!tax!|4adQh?!Q$)+/6.?@ @ @
 :;r,   c            
      ^  ^  [        [        [        4SS05      m [        [        S-  S[        S-  -  -
  [        S-  [        -
  S-   /T 5      [	        S[	        S5      [
        -  -
  5      * [        SS5      [	        S5      [
        -  S-  -
  4[	        S[	        S5      [
        -  -
  5      [        SS5      [	        S5      [
        -  S-  -
  4[	        S[	        S5      [
        -  -   5      * [        SS5      [	        S5      [
        -  S-  -   4[	        S[	        S5      [
        -  -   5      [        SS5      [	        S5      [
        -  S-  -   4/:X  d   e[        S[        -  [        -
  [        S-
  [        S-  [        -
  S-   -  /T SS	9[        SS5      S4/:X  d   e[        [        U 4S
 j5        g )NdomainZZr   r   r    r   r   Fr7   c                  p   > [        S[        -  [        -
  [        S-
  [        S-  [        -
  S-   -  /T SS9$ )Nr   r   r   Tr7   )r   r   r   	NewOptions   r-   r.   $test_solve_generic.<locals>.<lambda>\   s4    -	
1q1q51a4!8a<()9T+Cr,   )	r   r   r   r   r   r   r   r   r
   rJ   s   @r-   test_solve_genericrM   O   s   A4 01I!Q$1a4-AA6	B2Q	>""HQNT!WQYq[$@A"tAwqy.!8Aq>DGAIaK#?@2Q	>""HQNT!WQYq[$@A"tAwqy.!8Aq>DGAIaK#?@BB B B 	
1q1q51a4!8a<()9UD
1a.!	     #C Dr,   c                    ^^^^ [        S5      u  pp#n[        S-
  S-  [        S-
  S-  -   US-  -
  n[        S-
  S-  [        S-
  S-  -   US-  -
  n[        SUS-  -  S-
  5      nSU-
  S-  nSU-   S-  n	[	        XV/[        [        5      X4X4/:X  d   e[        S-
  S-  [        S-
  S-  -   US-  -
  n[        S-
  S-  [        S-
  S-  -   US-  -
  n[	        XV/[        [        5      S[        SU-  S-
  SU-  S-   -  5      S-  -
  [        SS5      4S[        SU-  S-
  SU-  S-   -  5      S-  -   [        SS5      4/:X  d   eS m[        S-
  S-  [        S-
  S-  -   US-  -
  n[        U-
  S-  [        S-
  S-  -   US-  -
  n[	        XV/[        [        5      n
[        U
5      S:X  a  [        S U
 5       5      (       d   e[        U4S j[        U
5       5       5      (       d   e[        U -
  S-  [        U-
  S-  -   US-  -
  n[        U-
  S-  [        U-
  S-  -   US-  -
  n[	        XV/[        [        5      n
[        U
5      S:X  a  [        S U
 5       5      (       d   e[        U4S	 j[        U
5       5       5      (       d   e[        [        -  [        -
  [        S-  [        -
  4n[        U5      [        S0[        S
[        S
0/:X  d   e[        [        -  [        -
  [        S-  [        -
  4n[        U5      [        S0[        S
[        S
0/:X  d   e[        [        4nX4 H+  n[        U/UQ76 u  u  mmm[        [        UUU4S j5        M-     [        S-  [        S-  -   S-
  [        S-  S-
  4n[        U/UQ76 u  u  mmm[        TTT5      / SQ:X  d   eSS/n[        S-  [        S-  -   S-
  [        S-  S-
  4n[        U/UQ76 u  u  mmm[        TTT5      U:X  d   e[        S-  [        S-  -   S-
  [        S-  [        -
  [        S-  -   S-
  4n[        U/UQ76 u  u  mmm[        TTT5      U:X  d   eg )Nzx0 y0 x1 y1 rr   r   r   c                 `    U R                   =(       a    U R                  [        R                  L $ N)is_Powexpr   r=   )exprs    r-   r.   (test_solve_biquadratic.<locals>.<lambda>q   s    ;QVV);;r,   c              3   >   #    U  H  n[        U5      S :H  v   M     g7fr   Nlen.0rs     r-   	<genexpr>)test_solve_biquadratic.<locals>.<genexpr>x        #@ACFaK   c              3   J   >#    U  H  oR                  T5      S :H  v   M     g7fr   N)countrZ   r[   querys     r-   r\   r]   y   s     <Oqwwu~"Os    #c              3   >   #    U  H  n[        U5      S :H  v   M     g7frV   rW   rY   s     r-   r\   r]      r^   r_   c              3   ^   >#    U  H"  n[        UR                  T5      5      S :H  v   M$     g7fra   )rX   findrc   s     r-   r\   r]      s#     @1s166%=!Q&s   *-r   c                     > [        T TT5      $ rP   )r   )fgopts   r-   r.   rT      s    $5aC$@r,   ))r    r    )r    r   r$   r%   )r   r    )r   r   )r   r   r   r   r   r   rX   allr   r   r   r   r   r   )x0y0x1y1r[   r?   r@   srB   rC   results1s2gensseqansri   rj   rk   rd   s                   @@@@r-   test_solve_biquadraticrx   `   sh   0BBAq51*Az
!AqD
(Cq51*Az
!AqD
(CQq!tVaZA	
Q	A	
Q	AcZA.A6A62BBBBq51*Az
!AqD
(Cq51*Az
!AqD
(CcZA.
dAaC!GacAg&')
)8Aq>	:
dAaC!GacAg&')
)8Aq>	:	<< < < <Eq5A+Q

"QT
)Cr6A+Q

"QT
)Cz1a0Fv;!#@#@ @ @@@<GFO<<<<<r6A+R!
#ad
*Cr6A+R!
#ad
*Cz1a0Fv;!#@#@ @ @@@@@@@@@
A#'1a4!8	B9!Q!Q1....
A#'1a4!8	B9!Q!Q1....q6Dx-c9D9A{@A  a4!Q$;?AqD1H
%C)#55KFQCQ3' ,, , , ,F
Ca4!Q$;?AqD1H
%C)#55KFQCQ3'3...a4!Q$;?AqD1Hq!tOa/
0C)#55KFQCQ3'3...r,   c                     [         S-  [        -   [        -   S-
  n [         [        S-  -   [        -   S-
  n[         [        -   [        S-  -   S-
  n[        S5      S-
  [        S5      * S-
  pC[	        XU/[         [        [        5      / SQ:X  d   e[
        R                  " [        S5      5      n[	        XU/[         [        [        US9SSSX3U4XDU4/:X  d   eg )Nr   r   )r!   r"   r#   )rG   r!   r"   r#   )r   r   r   r   r   r	   algebraic_field)r?   r@   rA   rB   rC   doms         r-   test_solve_triangulatedr|      s    
Q$(Q,
C
ad(Q,
C
a%!Q$,
C7Q;a1qsoq!Q7)* * * 

T!W
%Csoq!QsC	Iy1)aAY?@ @ @r,   c                  j   [        [        S-
  S-  S-  [        [        SS5      -
  S-  S-  -   S-
  [        /[        [        5      n U S[        R
                  S[        S5      -  -
  4S[        R
                  S[        S5      -  -   4/:X  d   e[        [        S-
  S-  S-  [        S	-
  S-  S-  -   S-
  [        /[        [        5      n [        U 5      S:X  d   eU S   S   S:X  d   eU S   S   R                  S
S5      (       d   eU S   S   S:X  d   eU S   S   R                  SS5      (       d   eg )Nr   r   i r   r   r      iW  g      ?g7g   mBgG@)	r   r   r   r   r   r=   r   rX   
epsilon_eq)rootss    r-   test_solve_issue_3686r      s>   Q
6 1Q!R5H14LV4S SWXXZ[\^_abcEa"T$Z-/01affr$t*}6L2MNNNNQ
6 1QZ!OF4J JaOQRSUVXYZEu:??8A;!8A;!!"3T::::8A;!8A;!!"2D9999r,   N)+__doc__sympy.core.numbersr   r   r   sympy.core.singletonr   sympy.core.symbolr   (sympy.functions.elementary.miscellaneousr   !sympy.polys.domains.rationalfieldr	   sympy.polys.polyerrorsr
   sympy.polys.polyoptionsr   sympy.polys.polytoolsr   sympy.solvers.solversr   sympy.utilities.iterablesr   	sympy.abcr   r   r   sympy.polysr   sympy.solvers.polysysr   r   r   r   r   r   sympy.testing.pytestr   rE   rM   rx   r|   r   r+   r,   r-   <module>r      sa    < 5 5 " % 9 0 8 + & ' -   '2 2 : '6;rD"5/p@ 
:r,   