
    \h                         S 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SKJr  SSKJr  SSKJrJrJrJrJrJrJrJr  S rS	 rS
 rS rS rg)z9Tests for high-level polynomials manipulation functions.     )
symmetrizehornerinterpolaterational_interpolateviete)MultivariatePolynomialError)S)symbols)raises)abcdexyzc            	         [        S[        [        [        5      S:X  d   e[        S[        [        [        5      S:X  d   e[        [        -   [        -   n [        [        -  [        [        -  -   [        [        -  -   n[        S5      S:X  d   e[        SSS9SS/ 4:X  d   e[        [        5      [        S4:X  d   e[        [        S-   5      [        S-   S4:X  d   e[        [        [        [        5      [        [        -   [        * 4:X  d   e[        [        S-   [        [        5      [        [        -   S-   [        * 4:X  d   e[        [        [        [        [        5      U [        * [        -
  4:X  d   e[        [        S-   [        [        [        5      U S-   [        * [        -
  4:X  d   e[        [        S-  [        [        [        5      U S-  SU-  -
  [        S-  * [        S-  -
  4:X  d   e[        [        S-  [        S-  -   5      S[        -  [        -  [        [        -   S-  -   S4:X  d   e[        [        S-  [        S-  -
  5      S[        -  [        -  [        [        -   S-  -   S[        S-  -  4:X  d   e[        [        S	-  [        S-  -   [        [        S-  -  -   [
        [        S	-  -  -   [        [        5      S
[        -  [        -  [        [        -   -  S[        -  [        -  [        -  -
  [        [        [        -   S-  -  -   [        [        -   S	-  -   [        S-  S[        -
  -  [        S	-  [
        S-
  -  -   4:X  d   e[        S5      =nu  p4n[        [        S-   [        [        [        SUS9US-   [        * [        -
  U[        [        -   [        -   4U[        [        -  [        [        -  -   [        [        -  -   4U[        [        -  [        -  4/4:X  d   e[        / SQ5      / SQ:X  d   e[        / SQSS9/ SQ/ 4:X  d   e[        [        [        -   [        [        -
  /5      [        [        -   S4[        [        -   S[        -  4/:X  d   eg )Nr   )r   r      r   r   T)formal      zu:3)r   r
   r   r   r   )r   )r   r   )r   r   )r   r   r   r   r   r   r
   )s1s2Uu0u1u2s         X/var/www/auris/envauris/lib/python3.13/site-packages/sympy/polys/tests/test_polyfuncs.pytest_symmetrizer$      s   aAq!V+++aAq!V+++	
QB	
1qsQqSBa=F"""a%!Q333a=QF"""a!eQ
***aA1q51"+---a!eQ"q1uqy1"o555aAq!b1"q&\111a!eQ1%"q&1"q&)9999adAq!$Q21uq!t|(DDDDadQTk"r!tAvQ
':A&>>>>adQTk"r!tAvQ
':Bq!tG&DDDDadQTkAadF*Qq!tV3Q:	AaQ!A#a%'	!Aq1uqjL	0AEA:	=	
Aq1u1a!e	$	&& & & u~%Aa!eQ1T1=	a!a2q1uqy/B!ac	AaC+@2qs1u+NOP P P i $<<<<i-2JB1OOOOq1ua!en%1q5!*q1ubdm)DDDD    c                     [        S5      S:X  d   e[        S5      S:X  d   e[        [        5      [        :X  d   e[        [        S-   5      [        S-   :X  d   e[        [        S-  S-   5      [        S-  S-   :X  d   e[        [        S-  [        -   5      [        S-   [        -  :X  d   e[        [        S-  [        -   S-   5      [        S-   [        -  S-   :X  d   e[        S[        S-  -  S[        S-  -  -   S[        S-  -  -   S	[        -  -   S
-   5      S[        -  S-   [        -  S-   [        -  S	-   [        -  S
-   :X  d   e[        [        [        S-  -  [        [        S-  -  -   [        [        S-  -  -   [
        [        -  -   [        -   5      [        [        -  [        -   [        -  [        -   [        -  [
        -   [        -  [        -   :X  d   e[        S[        S-  -  [        S-  -  S[        S-  -  [        -  -   S[        -  [        S-  -  -   [        [        -  -   [        S9S[        -  S-   [        -  [        -  S[        -  S-   [        -  -   [        -  :X  d   e[        S[        S-  -  [        S-  -  S[        S-  -  [        -  -   S[        -  [        S-  -  -   [        [        -  -   [        S9S[        -  S-   [        -  [        -  S[        -  S-   [        -  -   [        -  :X  d   eg )Nr   r   r   	         r            )wrt)r   r   r   r   r   r   r   r    r%   r#   test_hornerr/   9   s   !9>>!9>>!9>>!a%=AE!!!!Q$(q!tax'''!Q$(Aqy(((!Q$(Q,AE19q=000	!Q$1a4!AqD& 1Q3&*,23A#'1q!0Ca0G/JQ/NO O O	!Q$1a4!AqD& 1Q3&*,23A#'1q!0Ca0G/JQ/NO O O !AqD&A+!Q$q(1Q3q!t83ac9qA	!aGG!a{G#$%F& & & &!AqD&A+!Q$q(1Q3q!t83ac9qA	!aGG!a{G#$%F& & & &r%   c                     [        / SQ[        5      [        S-  :X  d   e[        / SQ[        5      [        S5      [        S-  -  S-  [        S5      [        S-  -  -
  [        S5      [        -  S-  -   S-
  :X  d   e[        / SQ[        5      [        S-  :X  d   e[        / S	Q[        5      S
[        S-  -   :X  d   e[        SSSS.[        5      S
[        S-  -   :X  d   e[        SSSSS.[        5      [        S5      * [        S-  -  S-  [        S5      [        S-  -  -   [        S5      [        -  S-  -
  S-   :X  d   e[        / SQ[        5      [        S5      [        S-  -  S-  [        S5      [        S-  -  S-  -   [        S5      [        S-  -  S-  -   [        S5      [        -  S-  -
  S-   :X  d   e[        SS5      S:X  d   e[        SS
5      [        R                  L d   e[        [        S
4S 4[        5      [        R                  L d   e[        [        S
SS0[        5      [        R                  L d   e[        S[        4S!4[        5      [        S-  S[        -  -
  S-   :X  d   eg )"N)r   r(   r'      r   )r   r(   r'      r   r)   !   r'   ))r   r   )r   r(   )r   r'   ))r   r   r   r,   )r   
   r   r,   r5   r      )r,   r*   r)   r'         i     )r   r   )r   r+   r4   )r,   r*   )r   r(   ir(   i           iO  i  r+   )r'   r(   r'   )r   r'   r1   )r   r   r:   )r   r   r	   Oner.   r%   r#   test_interpolater?   N   s1   }a(AqD000}a(AaDAIaK!A$q!t),CaeAgai,ORS,SSSS/3q!t;;;0!4AqD@@@1r*A.!ad(:::1rb115	
2q!tB2q!t#agail2S89 9 9@!D	#q!tC!C&A+c/)AcF1a4KO;agaimKaOP P Py!$)))z1%...A'+quu4441a|Q'155000A'+q!taczA~===r%   c                  F   [        S5      u  p/ SQn/ SQn/ SQn[        [        [        X#5      5      S5      SU S-  -  S-   U -  :X  d   e[        [        [        X#5      5      S5      SU S-  -  S-   U -  :X  d   e[        [        [        X$5      5      SUS9S	US-  -  S
-
  US-   -  :X  d   e[        [	        SS5      5      n/ SQn[        [        [        X%5      5      S5      SU S-  -  SU S-  -  -   SU S-  -  -
  SU -  -   S-
  U S-  SU S-  -  -   SU -  -
  S-   -  :X  d   eg )Nzx,y)r   r   r   r(   r,   r+   )x            i8  ir  )i.ii      i^  i  r   <   r   )XrE   i  r      )
l*oW6 l5(  lutNlKnlvvIO~l)*U_Vlfg<AldH+L;lP@\SQBlsG/KTr,   l]s[Nqr(   l   >"=4 l   76]l   Q{ r'   )r
   r   listziprange)r   r   xdataydata1ydata2ydatas         r#   test_rational_interpolaterQ   _   sm   5>DAE+F,FS%7 8!<	!Q$w|Q  S%7 8!<	!Q$w|Q  S%7 8!qA
1a4x#~A! ! !qEE  S%6 7;!Q$q!t/1457G7IJa4!AqD&=1Q3.356 6 6r%   c                  R  ^ [        S5      u  mn [        [        [        S-  -  [        [        -  -   [
        -   TU /[        5      TU -   [        * [        -  4TU -  [
        [        -  4/:X  d   e[        [        S 5        [        [        U4S j5        [        [        U4S j5        g )Nzr1, r2r   c                  $    [        S/ [        5      $ )Nr   r   r   r.   r%   r#   <lambda>test_viete.<locals>.<lambda>{   s    uQAr%   c                  2   > [        [        S-  S-   T /5      $ )Nr   r   rT   r1s   r#   rU   rV   |   s    uQTAXt4r%   c                  4   > [        [        [        -   T /5      $ )N)r   r   r   rX   s   r#   rU   rV   ~   s    a!ebT0Br%   )	r
   r   r   r   r   r   r   
ValueErrorr   )r2rY   s    @r#   
test_vieter]   u   s    XFB	!Q$1q2r(A',.GaRT?RUAaCL*IJ J J :./
:45
&(BCr%   N)__doc__sympy.polys.polyfuncsr   r   r   r   r   sympy.polys.polyerrorsr   sympy.core.singletonr	   sympy.core.symbolr
   sympy.testing.pytestr   	sympy.abcr   r   r   r   r   r   r   r   r$   r/   r?   rQ   r]   r.   r%   r#   <module>re      sG    ?  # % ' , , ,$EN&*>"6,	Dr%   