
    \h4                        S 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  SSKJr  SSKJr  SSKJr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SKJr  SSK J!r!  SSK"J#r#  SSK$J%r%J&r&  S r'S r(S r)\S 5       r*S r+S r,S r-g)z:Tests for tools for constructing domains for expressions.     )tooslow)construct_domain)ZZQQZZ_IQQ_IRRCCEX)	RealField)ComplexField)CatalanGoldenRatio)EFloatIRationalpi)S)exp)sqrt)sin)rootof)xyc            	         [        / SQ5      [        [        S5      [        S5      [        S5      /4:X  d   e[        / SQSS9[        [        S5      [        S5      [        S5      /4:X  d   e[        [        R                  [        S5      [        S5      /5      [        [        S5      [        S5      [        S5      /4:X  d   e[        [        R                  [        S5      [        S5      /SS9[        [        S5      [        S5      [        S5      /4:X  d   e[        [        R
                  [        S5      /5      [        [        SS5      [        S5      /4:X  d   e[        SS[        R
                  /5      n [        U S   [        5      (       d   eU S   [        S5      [        S	5      [        S
5      /:X  d   e[        S[        [        R
                  /5      n [        U S   [        5      (       d   eU S   [        S5      [        S5      [        S
5      /:X  d   e[        S	[        -   /5      [        [        S	S	5      /4:X  d   e[        SS[        -  -   /5      [        [        SS5      /4:X  d   e[        S[        /5      [        [        SS5      [        SS5      /4:X  d   e[        S[        S-  /5      [        [        SS5      [        S[        R
                  5      /4:X  d   e[        S[        S5      /S S9[        [        S5      [        [        S5      5      /4:X  d   e[        S[        S5      /SS9[        [        S5      [        [        S5      5      /4:X  d   e[        S[        S5      /S S9[        [        S5      [        [        S5      5      /4:X  d   e[        [         [        [         5      /5      [        [        [         5      [        [        [         5      5      /4:X  d   e[        [         [        [         5      [        ["        5      /5      [        [        [         5      [        [        [         5      5      [        [        ["        5      5      /4:X  d   e[        R$                  " [        S5      5      n[        S[        R
                  [        S5      /SS9XR'                  S5      UR'                  [        R
                  5      UR'                  [        S5      5      /4:X  d   e[        R$                  " [        S5      [        S5      -   5      n[        S[        S5      [        S5      /SS9XR'                  S5      UR'                  [        S5      5      UR'                  [        S5      5      /4:X  d   e[        [            n[        S[         -  S/5      X"R'                  S[         -  5      UR'                  S5      /4:X  d   e[        [         ["        4   n[        S[         -  S["        -  /5      X"R'                  S[         -  5      UR'                  S["        -  5      /4:X  d   e[        [            n[        [         S-  S/5      X"R'                  [         S-  5      UR'                  S5      /4:X  d   e[        [         ["        4   n[        [         S-  S["        -  /5      X"R'                  [         S-  5      UR'                  S["        -  5      /4:X  d   e[        [            n[        S[         -  [        /5      X"R'                  S[         -  5      UR'                  [        5      /4:X  d   e[        [         ["        4   n[        S[         -  [        ["        -  /5      X"R'                  S[         -  5      UR'                  [        ["        -  5      /4:X  d   e[        [            n[        [         S-  [        /5      X"R'                  [         S-  5      UR'                  [        5      /4:X  d   e[        [         ["        4   n[        [         S-  [        ["        -  /5      X"R'                  [         S-  5      UR'                  [        ["        -  5      /4:X  d   e[        [            n[        [         S-  S/5      X"R'                  [         S-  5      UR'                  S5      /4:X  d   e[        [         ["        4   n[        [         S-  S["        -  /5      X"R'                  [         S-  5      UR'                  S["        -  5      /4:X  d   e[        [            n[        [        [         -  S-  S/5      X"R'                  [        [         -  S-  5      UR'                  S5      /4:X  d   e[        [         ["        4   n[        [        [         -  S-  S["        -  /5      X"R'                  [        [         -  S-  5      UR'                  S["        -  5      /4:X  d   e[        [            n[        [         S-  [        S-  /5      X"R'                  [         S-  5      UR'                  [        S-  5      /4:X  d   e[        [         ["        4   n[        [         S-  [        S-  ["        -  /5      X"R'                  [         S-  5      UR'                  [        S-  ["        -  5      /4:X  d   e[        R(                  " [         5      n[        S[         -  S/5      X"R'                  S[         -  5      UR'                  S5      /4:X  d   e[        R(                  " [         ["        5      n[        S[         -  S["        -  /5      X"R'                  S[         -  5      UR'                  S["        -  5      /4:X  d   e[        R(                  " [         5      n[        S[         -  S/5      X"R'                  S[         -  5      UR'                  S5      /4:X  d   e[        R(                  " [         ["        5      n[        S[         -  S["        -  /5      X"R'                  S[         -  5      UR'                  S["        -  5      /4:X  d   e[        SS9[            n[        [*        R,                  " S5      [         -  /5      X"R'                  [*        R,                  " S5      [         -  5      /4:X  d   e[        S5      [        [        S5      4:X  d   e[        [        S5      S-  5      [        [        SS5      4:X  d   e[        [/        SS5      5      [        [        SS5      4:X  d   e[        0 5      [        0 4:X  d   eg )N)         r   r   r   T)fieldgQ	@r   g      ?g      ?y              ?g       @g      @	extension   g      @iP  )precd   )r   r   r   r   OneHalf
isinstancer   r	   r   r   r
   r   r   r   r   r   r   algebraic_fieldconvert
frac_fieldr   evalfr   )resultalgdoms      Z/var/www/auris/envauris/lib/python3.13/site-packages/sympy/polys/tests/test_constructor.pytest_construct_domainr1      s   I&21r!ube/D*EEEEIT2rBqE2a5"Q%;P6QQQQQUUAaD!A$/0R"Q%A19N4OOOOQUUAaD!A$/t<beRPQUTVWXTYEZ@[[[[QVVQqTN+R1Xr!u4E/FFFFtQ/0FfQi++++!9D2c7BsG4444tQ/0FfQi....!9D2d8RW5555SUG$bcl^(<<<<SQYK(R"S#,,@@@@QF#tAqz41:.F'GGGGQ!H%$aT!QVV_0M)NNNNT47Ot<bhPRSWXYSZP[E\@]]]]T47Ot<bhPRSWXYSZP[E\@]]]]QQLD9b2a5"TRSW+BV=WWWWQQL)b2a5"T!W+2F-GGGGQQa12rBqE2d1g;PRSWXYSZP[;\6]]]]


T!W
%CQQ0DA	{{1~s{{1662CKKQ4HIJK K K 

T!WtAw.
/CQQa1TB	{{1~s{{473S[[a5IJKL L L Q%CQqS!H%	{{1Q3Q012 2 2 QT(CQqS!A#J'	{{1Q3QqS!1234 4 4 Q%CQqS!H%	{{1Q3Q012 2 2 QT(CQqS!A#J'	{{1Q3QqS!1234 4 4 q'CQqS!H%	{{1Q3Q012 2 2 q!t*CQqS!A#J'	{{1Q3QqS!1234 4 4 q'CQqS!H%	{{1Q3Q012 2 2 q!t*CQqS!A#J'	{{1Q3QqS!1234 4 4 Q%CQqS#J'	{{1Q3S!1234 4 4 QT(CQqS#a%L)	{{1Q3SU!3456 6 6 Q%CQqSUCL)	{{1Q3q5!3;;s#3456 6 6 QT(CQqSUCEN+	{{1Q3q5!3;;s1u#5678 8 8 Q%CQqS!C%L)	{{1Q3QsU!3456 6 6 QT(CQqS!C%'N+	{{1Q3QsU1W!5678 8 8 --
CQqS!H%	{{1Q3Q012 2 2 --1
CQqS!A#J'	{{1Q3QqS!1234 4 4 --
CQqS#J'	{{1Q3S!1234 4 4 --1
CQqS#a%L)	{{1Q3SU!3456 6 6 
a
 CRXXc]1_-.	{{288C=?+,-. . . A2r!u+---AaDF#Bq!H~555HQN+Bq!H~===BB8+++    c                      [        [        * S-  [        -  S-  SS9n [        R                  " U 5      n[        U S-  U S/SS9UUR                  U S-  5      UR                  U 5      UR                  S5      /4:X  d   eg )Nr   r   F)evaluater   Tr!   )r   r   r   r   r)   r   r*   )wr.   s     r0   test_complex_exponentialr6      s    QBqDGAI&A


Q
CQT1aLD9	QT		Q	Q	>   r2   c                  8   [        [        S-  [        -   S-   S5      n [        [        S-  [        -   S-   S5      n[        R                  " U 5      n[        R                  " U5      n[	        U /5      [
        [        U 5      /4:X  d   e[	        U/5      [
        [        U5      /4:X  d   e[	        X/5      [
        [        U 5      [        U5      /4:X  d   e[	        U /SS9X"R                  U 5      /4:X  d   e[	        U/SS9X3R                  U5      /4:X  d   eg Nr   r   r   Tr!   )r   r   r   r)   r   r   
from_sympy)r1r2K1K2s       r0   test_rootofr>      s   	1q1a	 B	1q1a	 B			B	B			B	BRD!b2b6(^333RD!b2b6(^333RH%"r"vr"v.>)????RDD1r"#6% % % %RDD1r"#6% % % %r2   c                     [        [        S-  [        -   S-   S5      n [        [        S-  [        -   S-   S5      n[        R                  " X-   5      n[	        X/SS9X"R                  U 5      UR                  U5      /4:X  d   eg r8   )r   r   r   r)   r   r9   )r:   r;   K12s      r0   test_rootof_primitive_elementrA      s~    	1q1a	 B	1q1a	 B


RW
%CRH5..$cnnR&89:; ; ; ;r2   c                  ^   [        S[        [        5      0SS9[        S[        [        [        5      5      04:X  d   e[        S[        0SS9[        S[        [        5      04:X  d   e[        SS0SS9[        SS04:X  d   e[        S[        0SS9[        S[        [        5      04:X  d   eg )N)r   F)	composite)r   r   r   )r   r   )r   r   r   r   r    r2   r0   test_composite_optionrE      s    T3q6Ne<	dBs1vJ ! ! ! T1I7	dBqE]   VQK59	fa[   VQK59	fbe_  r2   c                  8   [        S5      n [        S5      nSSSSSSS	S
SX4 H6  n[        U/5      n[        US   S   5      n[        X$-
  5      U-  S:  a  M6   e   [        U /5      nUS   S   nUS-
  S:  d   e[        U/5      nUS   S   nUS-
  S:  d   eg )Nz1.01z1.0000000000000000000001r   g{Gz?gư>gvIh%<=g+=gؗҜ<g#B;g0.++gYnr   gJz5)r   r   floatabs)f1f2ur-   vr   s         r0   test_precisionrM      s    	vB	)	*BtUE5%!1#&&)A,15zA~%%%	 rd#Fq	!AQ3;;rd#Fq	!AQ3;;r2   c                  8   [         [        [        4 HF  n [        U 5      S   [        U    :X  d   e[        [
        U -   5      S   [        [
        U 4   :X  a  MF   e   [        [        5      S   [        :X  d   e[        [
        [        -   5      S   [        :X  d   eg )Nr   )r   r   r   r   r   r   r   r   )ns    r0   test_issue_11538rP      s    W"1%A...A&q)R1X555  K(+r111AO,Q/2555r2   N).__doc__sympy.testing.pytestr   sympy.polys.constructorr   sympy.polys.domainsr   r   r   r   r	   r
   r   sympy.polys.domains.realfieldr    sympy.polys.domains.complexfieldr   
sympy.corer   r   sympy.core.numbersr   r   r   r   r   sympy.core.singletonr   &sympy.functions.elementary.exponentialr   (sympy.functions.elementary.miscellaneousr   (sympy.functions.elementary.trigonometricr   sympyr   	sympy.abcr   r   r1   r6   r>   rA   rE   rM   rP   rD   r2   r0   <module>r_      sl    @ ( 4 > > > 3 9 - : : " 6 9 8  L,^% 	; 	;$6r2   