
    wg!R                     Z   d Z ddlmZ ddlmZ ddlmZmZmZm	Z	 ddl
mZmZmZmZmZmZ ddlmZ ddlmZmZ ddlmZ dd	lmZmZ dd
lmZmZ ddlmZ ddl m!Z!m"Z"m#Z# ddl$m%Z% ddl&m'Z'm(Z( ddl)m*Z*m+Z+ ddl,m-Z-m.Z.m/Z/ ddl0m1Z1m2Z3m4Z4m5Z6m7Z7m8Z8 ddl9m:Z: ddl;m<Z< ddl=m>Z> ddl?m@Z@ ddlAmBZBmCZC ddlDmEZEmFZF  ej                         ZHd ZId ZJd ZKd ZLd ZMd ZNd ZOd ZPd  ZQd! ZRd" ZSd# ZTd$ ZUd% ZVd& ZWd' ZXeFd(        ZYd) ZZd* Z[d+ Z\d, Z]d- Z^eFd.        Z_d/ Z`d0 Zad1 Zbd2 Zcd3 Zdd4 Zed5 Zfy6)7zFTests for tools for solving inequalities and systems of inequalities.     )Sum)Function)IRationaloopi)EqGeGtLeLtNe)S)DummySymbol)Abs)explog)rootsqrt)	Piecewise)cossintan)Integral)AndOr)PolyPurePoly)	FiniteSetIntervalUnion)reduce_inequalitiessolve_poly_inequalityreduce_rational_inequalitiessolve_univariate_inequalityreduce_abs_inequality_solve_inequality)rootof)solve)solveset)Mod)xy)raisesXFAILc                  *   t        t        dt              d      t        j                  gk(  sJ t        t        dt              d      t        j
                  gk(  sJ t        t        t        dz   t              d      t        dt        dd      gk(  sJ y )Nr   z==   >TF)	psolver   r-   r   RealsEmptySetr   r!   r        j/home/mcse/projects/flask/flask-venv/lib/python3.12/site-packages/sympy/solvers/tests/test_inequalities.pytest_solve_poly_inequalityr;   $   sr    $q!*d#y000$q!*d#

|333(1q5!$c*xBe/L.MMMMr9   c                  j   t        t        t        dz  d      ggt        d      t        d      k(  sJ t        t	        t        dz  d      ggt        d      t        d      k(  sJ t        t        t        dz  d      ggt        d      t        j                  k(  sJ t        j                  r8t        t        t        dz  d      ggt        d      t        j                  k(  sJ t        t         t              sJ t        t        t        dz  d      ggt        d      t        d      j                  t        j                        k(  sJ t        t        t        dz  d      ggt        d      t        d      j                  t        j                        k(  sJ t        t        t        dz  d      ggt        d      t        dd      k(  sJ t        t	        t        dz  d      ggt        d      t        dd      k(  sJ t        t        t        dz  d      ggt        d      t        dddd      k(  sJ t        t        t        dz  d      ggt        d      t!        t        t         d      t        dt                    k(  sJ t        t        t        dz  d      ggt        d      t        dd      j                  t        j                        k(  sJ t        t        t        dz  d      ggt        d      t        dd      j                  t        j                        k(  sJ t        t        t        dz  d      ggt        d      t        d	d      j#                         k(  sJ t        t	        t        dz  d      ggt        d      t        d	d      k(  sJ t        t        t        dz  d      ggt        d      t        d	ddd      k(  sJ t        t        t        dz  d      ggt        d      t!        t        t$         d	      t        dt$                    k(  sJ t        t        t        dz  d      ggt        d      t!        t        t$         d	d
      t        dt$        d            k(  sJ t        t        t        dz  d      ggt        d      t        d	d      j                  t        j                        k(  sJ t'        d      } t        t        t        dz  dz
  d      t        t        dz  dz
  d      ggt        d      t        j                  k(  sJ t        t	        t        dz  dz
  d      t        t        dz  dz
  d      ggt        d      t        dd      k(  sJ t        t	        t        dz  dz
  d      t        t        dz  dz
  d      ggt        d      t!        t        |  ddd      t        d| dd            k(  sJ t        t	        t        dz  dz
  d      t        t        dz  dz
  d      ggt        d      t!        t        |  ddd      t        d| dd            k(  sJ t        t        t        dz  dz
  d      t        t        dz  dz
  d      ggt        d      t!        t        |  ddd      t        d| dd            k(  sJ t        t        t        dz  dz
  d      t        t        dz  dz
  d      ggt        d      t!        t        |  ddd      t        d| dd            k(  sJ t        t        t        dz  dz
  d      t        t        dz  dz
  d      ggt        d      t!        t        |  ddd      t        dddd      t        d| dd            k(  sJ t        t        t        dz  d	      ggt              t        j(                  u sJ y )N   r   F
relationalr2   r4   T      ?g      )
right_open)	left_open)r%   r	   r-   r    r   r   r   r7   is_realr
   r6   r!   r   r   
complementr   r"   evalfinfr   false)ss    r:   +test_reduce_poly_inequalities_real_intervalrI   *   s   '
QT1+u.1:1> > >'
QT1+u.1:1> > >'
QT1+u.12< < < 99 (
QT1+u.	 4 4"*B3"34 4 (
QT1+u.!() ) ) (
QT1+u.!() ) ) (
QT1+u.1:2q1AB B B'
QT1+u.19"aA A A'
QT1+u.19"at1LM M M'
QT1+u.hsB!R12 2 2 (
QT1+u.Q""177+, , , (
QT1+u."a##AGG,- - - ("	1c+ * )E+.7c.B.H.H.JK K K'
QT3-103;D#3FG G G'"	1c+ * )E+.6tS$.MN N N'
QT3-10htT"HS#$678 8 8 (
QT3-10htTd3cT*	,, , , ("	1c+ * )E+$''01 1 1 	QA'"	1q!+A1o*' )()*u>ABL L L'"QTAXq/2	1q!< * )e-09"a0@A A A'
QTAXq/2adQh?	+,aE
8QBE518Aq%3OPQ Q Q (
QTAXq/2adQh?	+,aE
8QBE40(1au2MNO O O (
QTAXq/2adQh?	+,aE
8QBD%0(1a2MNO O O (
QTAXq/2adQh?	+,aE
8QBD$/!Qd1KLM M M (
QTAXq/2adQh?	+,aE
8QBD$/"at1LAtT"$$ $ $
 ("QT3-(91=HHHr9   c                  j	   t        t        t        dz  d      ggt        d      t        t        d      k(  sJ t        t        t        dz  d      ggt        d      t        t        d      k(  sJ t        t	        t        dz  d      ggt        d      dk(  sJ t        t        t        dz  d      ggt        d      t        t	        t         t              t	        t        t                    k(  sJ t        t        t        dz  d      ggt        d      t        t        t        t               t	        t        t              t        t        d            k(  sJ t        t        t        dz  d      ggt        d      t        t        t        t               t	        t        t              t        t        d            k(  sJ t        j                  t        d      fD ]  } | t        z  }t        t        t        dz  |       ggt        d      t        t        t        |        t        t        |             k(  sJ t        t        t        dz  |       ggt        d      t        t        t        |  t              t        t        |                   k(  sJ t        t	        t        dz  |       ggt        d      t        t        t	        |  t              t	        t        |                   k(  sJ t        t        t        dz  |       ggt        d      t        t        t        t        | t              t	        t        |            t        t        t        |        t	        | t                                k(  sJ t        t        t        dz  |       ggt        d      t        t        t        t	        | t              t	        t        |              t        t	        | t              t	        t        |                        k(  sJ t        t        t        dz  |       ggt        d      t        t        t	        | t              t	        t        |              t        t	        |  t              t	        t        |             t        t	        | t              t	        t        |                  k(  rJ  y )Nr=   r   Tr>   Fr@   )r%   r	   r-   r   r   r
   r   r   r   r   r   Oner   )onerF   s     r:   0test_reduce_poly_inequalities_complex_relationalrM   u   s   '
QT1+t-021a9 9 9'
QT1+t-021a9 9 9'
QT1+t-056 6 6'
QT1+t-03BsAJ1b	0JK K K'
QT1+t-Bq2#J1b	2a8,- - - (
QT1+t-Bq2#J1b	2a8,- - - qv ,"f+Asm_qT3r!cT{Bq#J'( 	( ( ,Asm_qT3BtQKAs,-. 	. . ,Asm_qT3BtQKAs,-. 	. . ,Asm_qT33r#qz2a:.Bq3$KSD!0MNOP 	P P ,Asm_qT33r3${Bq3$K0#baj"Q*2MNOP 	P P ,Asm_qT3s2sdA;1sd,2sdA;1c
+2c1:r!Sz*,, 	, ,#,r9   c            
         t        g t              dk(  sJ t        t        dz  dt        z  z   dz   t        dz  dz
  z  dk\  ggt        d      t        t        j                  t
         d      t        dd	      t        j                  d
t
                    k(  sJ t        dt        z  dz
  dt        z
  z  t        dz  dz   t        dz
  dz  z  z  dk  ggt        d      t        t        j                  dd      t        j                  dd            k(  sJ t        t        dz   t        dz
  z  dk  ggt        d      t        j                  d	d      k(  sJ t        t        dz  d
t        z  z   dz   t        dz
  z  dkD  ggt        d      t        t        j                  dd	      t        j                  dt
                    k(  sJ t        t        dz  dz
  t        dz
  dz  z  dk  ggt        d      t        t        j                  dd      t        j                  dd
            k(  sJ t        dt        z  dz   t        d
z   z  dk\  ggt        d      t        t        j                  t
         d      t        j                  t        dd      t
                    k(  sJ t        t        dz
  t        z  dt        z
  k  ggt        d      t        t        j                  t
         d      t        j                  dd
            k(  sJ t        t        t
        k  t        dk\  t
         t        k  ggt        d      t        dt
              k(  sJ y )NFr=         r   r>   r4      
      r2      )	r%   r-   r"   r!   openr   Ropenr   Lopenr8   r9   r:   1test_reduce_rational_inequalities_real_relationalr\      s   'A.%777'a4!A#:>AqD2I
&!
+	,-qUDhmmRC$hr2&6a8LMN N N (qD2IA!Q$(QUQJ!6
7!
;	<=q 	hmmB"HMM!Q$789 9 9
 (1q51q5/Q*>)?(@!r1   (1a4!A#:>AE*BQ*F)G(H!hmmB#X]]1b%9:; ; ; (1a4"9q1uqj*@1*D)E(FhmmB"HMM!Q$789 9 9 (1Q37QU*;q*@)A(BAhmmRC$hnnXa^R&HIJ J J (1q5!)q1u*<)=(>hnnbS"%x~~a';<= = =
 (
b&!q&2#'	"#Q5:=Ea_M M Mr9   c                     t        t        dz
        dk  } t        t        dt              t        t        d            }t	        |       |k(  sJ t	        | t              |k(  sJ t	        t        t        dz
              t        t        d      k(  sJ t	        t        dt        z  dz         dk\        t        t        t        t        dd      t              t        t        t                    t        t        t        t        dd            t        t         t                          k(  sJ t	        t        t        dz
        t        dt        z  dz
        z   dk        t        t        t        j                  t              t        t        d            k(  sJ t	        t        t        dz
        t        dt        t              z  dz
        z   dk        t        t        t        d      t        k  t        d	k        t        t        j                  t        k  t        dk              k(  sJ t        d
d      t        t        fd       t	        t        dk  t        g      t        t         t        k  t        dk        k(  sJ y )NrU   rO   r=   rX   irS      rR   r4   nrF)extended_realc                  8    t        t         dz
        dk        S )NrU   rO   )r#   abs)r_   s   r:   <lambda>z.test_reduce_abs_inequalities.<locals>.<lambda>   s    1#b1f+/B r9   symbols)rb   r-   r   r   r#   r	   r   r   r   r   r   Halfr   r/   	TypeError)eansr_   s     @r:   test_reduce_abs_inequalitiesrj      s   AE
QA
bAh1a
!Cq!S(((q!$+++s1q5z*bAh666AaC!G RA%:Bq"I!FBq(3"#RQZ022 2 2 s1q5zC	!a-    R]Bq!H56 6 6s1q5zC#a&1,==AB
3quqy!b&!3qvvz1q5#9:; ; ; 
E	*B
9BCq1uq"g6#rcAgq1u:MMMMr9   c                  0   t        t        t        d      t        z  d            t	        t        d      dz  t        k  t        t
        k        k(  sJ t        t        dz   dkD        t	        t        j                  t        k  t        t
        k        k(  sJ y )Nr=   r2   r   )r#   r
   r   r-   r   r   r   NegativeOner8   r9   r:    test_reduce_inequalities_generalrm      sj    r$q'!)Q/0CQ	QB4OOOOq1uqy)S1BAF-KKKKr9   c                      t        t        t        dz  d      dg      t        t        d      k(  sJ t        t        t        dz  d      dg      dk(  sJ t        t        dz  dk\        t        j                  u sJ y )Nr=   r   TF)r#   r	   r-   r   truer8   r9   r:    test_reduce_inequalities_booleanrp      su    	AqD!d "1a) ) )1a4U34===q!tqy)QVV333r9   c                  4   t        t        t        dz  d      t        t        dz  d      g      t	        t        t	        t        t        j                  t              t        t        t                    t	        t        t        d      t        t         t                          t        t	        t        t        j                  t              t        t        t                    t	        t        t        d      t        t         t                                k(  sJ y )Nr=   r2   r4   )r#   r
   r-   r.   r   r   r   r   rK   r   r   r8   r9   r:   %test_reduce_inequalities_multivariaterr      s    1a4R1a[9:c
3r!%%|R2Y'R2YB3
)CD
3r!%%|R2Y'R2YB3
)CD?F F F Fr9   c                  H    t        t        d        t        t        d        y )Nc                  T    t        t        t        t              t        z   d            S Nr2   )r#   r
   r   r-   r8   r9   r:   rc   z1test_reduce_inequalities_errors.<locals>.<lambda>   s    (;Bs1vz1<M(N r9   c                  V    t        t        t        dz  t        z  t        z   d            S Nr=   r2   )r#   r
   r-   r.   r8   r9   r:   rc   z1test_reduce_inequalities_errors.<locals>.<lambda>   s    (;Bq!tAvz1<M(N r9   )r/   NotImplementedErrorr8   r9   r:   test_reduce_inequalities_errorsry      s    
 NO
 NOr9   c                     t        t        t        z   dk  t        g      t        dt        z
  k  k(  sJ t        t        t        z   dk\  t        g      t        t        k  t        t         dz   k\  z  k(  sJ t        t	        dt        t        z
        t        g      t	        t        t              k(  sJ t        t        dt        t        z
        t        g      t        t        t              k(  sJ y )Nr2   rd   r   )r#   r-   r.   r   r	   r   r8   r9   r:   test__solve_inequalitiesr{      s    q1uqy1#61q1u9EEEq1uzA37AFqQBQRF{;SSSSr!QU|aS9R1XEEEr!QU|aS9R1XEEEr9   c            	          dt         dz  z  dz  t         t        dd      z  z
  t        dd      z   dkD  } t        |       t        t         t        dd      t	        d      dz  z   k  t	        d       dz  t        d	d      z
  t         k        k(  sJ y )
NrW   r=   -   rS   !   r   ii     )r-   r   r#   r   r   )eqs    r:   test_issue_6343r      s    	AqDQxA&	&"a	81	<Br"Aa 49Q;..c
1xA0NQR0RST T Tr9   c                  d   t        t        dz  dz
  dk        t        t        j                  t        k  t        dk        k(  sJ t        t        dz  dz
  dk        t        t        j                  t        k  t        dk        k(  sJ t        t        dz  dz
  dkD        t        t        t         t        k  t        dk        t        t        t        k  t        j                  t        k              k(  sJ t        t        dz  dz
  dk\        t        t        t         t        k  t        dk        t        t        j                  t        k  t        t        k              k(  sJ t        dz  t        z   dz
  } t        | dk\        }t        t        t        | d      t        k  t        t        k        t        t         t        k  t        t        | d      k              }||k(  sJ t        t        t         dz   dz        dk        t        t        j                  t        k  t        dk        k(  sJ y )Nr=   r2   r   r4   rX   	   )r#   r-   r   r   rl   r   r   rK   r*   r)   r   Zero)r   soltrus      r:   test_issue_8235r      s   q!tax!|,AMMAq1u%& & &q!tax1}-AMMQQ'( ( (q!tax!|,
3sQwBQVQUUQY!789 9 9q!tax1}-
3sQwR #aeeqj!b&"9:; ; ; 
AAB
a.C
SA!#QV,c2#'1r1;M.N
OC#:: rAvk"Q&'3qvvz1q5+AAAAr9   c            
         t        dt        t        t        dz  t        ddf      z   dz
  k  t        g      t        t        t        dz  t        ddf       dz   k\  k(  sJ t	        d      } t         | t              t        ddf      }t        dt        |z   t        dz  z   k  t        g      t        t        dz   t         | t              t        ddf      z
  k\  k(  sJ y )Nr   r=   r2   rO   f)r#   r-   r   r.   r   r   )r   rh   s     r:   test_issue_5526r     s    q	HQTAq!9%%) *,-30	
x1q!Qi((1,	,. . . 	AAaD1a)AqAEAqDL01#6	
q!tec!A$Aq	**	*, , ,r9   c                  l   t        t        dz  dk\  t        d      t        t        t         d      t        dt                    k(  sJ t        t        dz  dk\  t              t        t        t        dt              t        t        t                    t        t        t        d      t        t         t                          k(  sJ t        t        dz
  t        dz
  z  t        dz
  z  dk\  t        d      t        t        dd      t        dt                    k(  sJ t        t        dz
  t        dz
  z  t        dz
  z  dk\  t              t        t        t        dt              t        t        d            t        t        dt              t        t        t                          k(  sJ t        t        dz
  t        dz
  z  t        dz
  z  dk  t        t        dd      	      t        t        t        d      t        t        d            k(  sJ t        t        dz  dt        z  z
  dz
  dkD  t        d      t        t        d
t        d       dz  t        j                  z   dd      t        t        j                  t        d      dz  z   t        dd            k(  sJ t        t        dz  t        dz  z
  t        z   dz
  dkD  t        d      t        dt        d      k(  sJ t        t        t        z   t        dt        z  z   z  dk  t              t        t        d      k(  sJ t        t        dz
  t        dz
  z  t        z   t        dz
  t        dz
  z  dt        z  z   z  dk  t              t        t        t        d      t        t        d            k(  sJ t        t        dz
  t        dz
  z  t        z   t        dz
  t        dz
  z  dt        z  z   z  t        dz
  z  dkD  t              t        t        d      k(  sJ t        t         d        t        t        dz  t        z
  dz
  dkD  t              t        t#        t        dz  t        z
  dz
  d      t        k  t        t        k        k(  sJ t        dt        dz
  z  dkD  t              t        t        d      t        k  t        t        k        k(  sJ t        dz
  t        dz
  z  j%                         } t        t        dz
  | z  dk  t              t        t         kD  t        dk  z  t'        t        d      z  k(  sJ t)        d      t        t*        fd       t)        dd      t        t*        fd       t)        dd      t        z  dkD         dz  k  k(  sJ t        z  dk        dk(  sJ t        z  dkD        dk(  sJ t-        d      dz  t/        d      dz  z   dz
  t        t*        fd       t        t*        fd       t        t*        d        t        t*        d        t        t0        d        t        dz  t        z   t        t        dz   z  z
  t        dk  t        d      t        j2                  u sJ t        dk  t        d      t        j4                  u sJ t        t*        d        y )Nr=   rS   Fr>   rR   r2   rO   r   domainr4   rU   Tc                  l    t        t        dz  dt        z  t        z  z
  dz   t        z  dk  t              S )Nr=   rO   r   isolver-   r   r8   r9   r:   rc   z2test_solve_univariate_inequality.<locals>.<lambda>+  s,    1qs1uq(8!';a'? C r9   r^   nc                  H    t        t        t               k  t        d      S )NFr>   )r   r   r-   r   s   r:   rc   z2test_solve_univariate_inequality.<locals>.<lambda>:  s    s1v{A%(P r9   c1positivec                  (    t         z  dk         S Nr   )r   )r   r   s   r:   rc   z2test_solve_univariate_inequality.<locals>.<lambda><  s    qtax(< r9   )negativec                  8    t        t        dz   k  t              S Nr=   )r   r-   zeros   r:   rc   z2test_solve_univariate_inequality.<locals>.<lambda>C  s    q!td{A(> r9   c                  F    t        t        dz   t        z  k  t              S r   r   r   s   r:   rc   z2test_solve_univariate_inequality.<locals>.<lambda>D  s    	1tAvq) r9   c                  D    t        dt        t        z
  z  dk  t              S )Nr2   r=   r   r-   r.   r8   r9   r:   rc   z2test_solve_univariate_inequality.<locals>.<lambda>F      q!a%y1}a(@ r9   c                  D    t        dt        t        z
  z  dk  t              S )Nr2   r   r   r8   r9   r:   rc   z2test_solve_univariate_inequality.<locals>.<lambda>G  r   r9   c                  >    t        t        t        z
  dk  t              S r   r   r8   r9   r:   rc   z2test_solve_univariate_inequality.<locals>.<lambda>H  s    fQUQY2 r9   c                  |    t        t        t        t              dz  t	        t              dz  z   d      t              S rw   )r   r	   r   r-   r   r8   r9   r:   rc   z2test_solve_univariate_inequality.<locals>.<lambda>O  s,    
3q619s1vqy !$a)) r9   )r   r-   r"   r!   r   r   r   r   r   r    r	   r   r   rf   r   r/   
ValueErrorr)   expandr   r   rx   r   r   rg   r7   r6   )denr   r   r   s    @@@r:    test_solve_univariate_inequalityr     s   !Q$!)Q51U8RC;LB6   !Q$!)Q2c"Q(Bq"I&>Bq"I
B3
A $   1q51q5/1q5)Q.eDhq!nhq"o./ / /1q51q5/1q5)Q.2
3r!QxAq"C1a"Q)$<=> > >1q51q5/1q5)A-q9Q?K
2a8R1X   !Q$1*q.1$aE:hrDG8A:.d;qvvQ	)2tT:	<< < < !Q$A+/A%)1?B   1q51qs7#a'+r!Qx777AEAE?Q&!a%!a%1Q3)>?!CQG2bQRTUhXZ[\^_X`KaaaaQUQUOa'1q51q5/AaC*?@1q5IAMqQUWXY[\U]]]]
JCD !Q$(Q,"A&F1a4!8a<#a'R01 1 1 !QU)a-#s1Q4!8QV'<<<<EAE?
"
"
$C1q5#+"A&	
bSQUbAh&' ' ' 	c
A
 PQ	td	#B
 <=cD!A!B$)R aRTBY///!B$(B4'''!B$(B5(((q619s1vqy 1$D
 >?
 ! 
 @A
 @A
923a4!8aQiD$(A%0AJJ>>>$!)Q51QWW<<<  !) *r9   c                  F   t        t        t              t        j                  k  t        d      t        t        dt        dz  dd      t        j                  t        t        dd      z  dt        z              k(  sJ t        t        t              t        j                  kD  t        d      t        t        dz  t        t        dd      z  dd      k(  sJ t        t        t              t        j                  k  t        d      t        t        dz  t        t        dd      z  dd      k(  sJ t        t        t              t        j                  k\  t        d      t        t        dt        dz        t        j                  t        t        dd      z  dt        z              k(  sJ t        t        t              t        j                  k  t        d      t        t        j                  dt        d	z        t        j                  t        dz  t                    k(  sJ t        t        t              t        j                  k  t        d      t        t        t        j                        t        j                  t        dt        z              k(  sJ t        t        t              t        j                  k  t        d      t        j                   k(  sJ t        t        t              t        d
      k  t        d      t        j"                  k(  sJ t        t        t              t        j$                  k\  t        d      t        j                   k(  sJ t        t        t              t        j                  kD  t        d      t        j"                  k(  sJ y )NFr>   r      TrU   r=   rO   rS   rR   )r   r   r-   r   rf   r"   r!   r   rY   r   r   r   rZ   r   rK   r    r6   r7   rl   r8   r9   r:   test_trig_inequalitiesr   S  s   #a&166/17hq"Q$t,hmmBx1~<MqQSt.TUV V V#a&166/17Ar(1a.($56 6 6#a&166/17Ar(1a.($56 6 6#a&AFF"A%8hq"Q$8Aq>0A1R4!HIJ J J #a&155.!6hnnQ1%x}}RT2'>?@ @ @ #a&AFF"A%8iAbD!9:; ; ; #a&AEE/17177BBB#a&1R5.!6!**DDD#a&AMM)1?177JJJ#a&155.!6!**DDDr9   c                     t        t        dz  dk\  t        d      t        j                  k(  sJ t        t        dz  dk\  t        d      t        j                  j	                  t              k(  sJ t        t        dz  dk  t        d      t        j
                  k(  sJ t        t        dz  dk  t        d      t        j
                  j	                  t              k(  sJ y )Nr=   r   Fr>   T)r   r-   r   r6   as_relationalr7   r8   r9   r:   test_issue_9954r   j  s    !Q$!)Q51QWW<<<!Q$!)Q40AGG4I4I!4LLLL!Q$(A%0AJJ>>>!Q$(A$/1::3K3KA3NNNNr9   c            	      4   t        t        dz  t        dz  z
  dz   d      } t        t        t              dt	        t        d      z  z   dkD        t        t        dt        k  t        | dz  k        t        | dz  t        k  t        t        k              k(  sJ y )NrU   r=   r2   r   rO   r   )r)   r-   r*   r   r   r   r   r   )rs    r:   test_slow_general_univariater   q  s}    q!tad{Q"Aa1T!QZ<'!+,
3q1ua!Q$hQTAXq2v!678 8 8r9   c                  $   dt         z
  t        dt         z
        z
  } t        t        dt               t        t         t                    }t        | dt               |k(  sJ dt         z
  t        dt         z
  dz        z
  } t        | dk        |k(  sJ y )Nr2   <r=   r   )r-   rb   r   r   r   r'   r   r#   )r   ri   s     r:   test_issue_8545r   x  sy    	
QQU	B
bAh1b	
"C S!,333	
Qq1uqj!	!BrAv&#---r9   c                  
   t        t         t        k  t              t        t         t        k  t        t        k        k(  sJ t        t        t        kD  t              t        t         t        k  t        t        k        k(  sJ y )N)r   r   r-   r   r8   r9   r:   test_issue_8974r     sX    2#'1bS1Wa"f!5555"q&!RC!GQV 4444r9   c                     t        ddt        dt        z  dz
        z  z   dk        t        t         kD  t        t	        d      dz  k  z  t        t        d      z  k(  sJ t        t        dt        t              z        dz
  t              t        t        d      k(  sJ t        ddt        ddt        z  z
        z  z   dt              t        t        t         t        k  t        dk        t        t        j                  t        k  t        t        dd      k        t        t        dd      t        k  t        t        k              k(  sJ t        t        d	        y )
Nr4   r2   r   r=   rW   r   rO   rS   c                  h    t        ddt        ddt        t              z  z
        z  z   dt              S )NrW   r2   r   )r'   rb   r   r-   r8   r9   r:   rc   z"test_issue_10198.<locals>.<lambda>  s5    3B3	Ad1gI< : 5Q  r9   )r#   rb   r-   r   r   r   r   r	   r'   r   r   r   r   r/   r   r8   r9   r:   test_issue_10198r     s!   
Qs1Q37|^a!%&"WQqT!V$<r!Qx$GH H H s1T!W9~115AqAAA aA!Gn!4c1=
3sQwAAFFQJHQN*+S!Q!1CQV-L	NN N N :   !r9   c                      t        t        t              dk        dk(  sJ t        t        t              dk  t        j
                        t        j
                  k(  sJ y )Nr=   Tr   )r*   r   r-   r+   r   r6   r8   r9   r:   test_issue_10047r     sD     Q!$$$CFQJqww/177:::r9   c                      t        t        t              dk        t        t        j
                  t        k  t        t        d      k        k(  sJ y )Ni  )r*   r   r-   r   r   r   r   r8   r9   r:   test_issue_10268r     s4    Q$3qvvz1s4y=#AAAAr9   c                      t        d      } t        t        t              | k  t        d      t	        t
        j                  | dk  ft        |  |       df      k(  sJ y )Nr   Fr>   r   T)r   r   r   r-   r   r   r7   r!   r   s    r:   test_isolve_Setsr     sU    c
A#a&A+qU31::q1u%!Q'>?@ @ @r9   c            	      v   t        dd      } t        dd      }t        |dz
  |dz
  z  |dz
  z  dk  || 	      t        |d      k(  sJ t        d      }t        |dz   dk  |t        j
                  	      |d
k  |t         kD  z  t        t        |d      d      z  k(  sJ t        d|z  dz   dkD  |t        j
                  	      |dk\  |t        k  z  t        t        |d      d      z  k(  sJ t        |dz  d|z  z   dz
  dk  |t        j
                  	      |d
k\  |dk  z  t        t        |d      d      z  k(  sJ t        |dz  d|z  z   dz
  dkD  |t        j
                  	      |dk\  |t        k  z  t        t        |d      d      z  |dk  |t         kD  z  t        t        |d      d      z  z  k(  sJ y )Nr   rO   r-   Fr   r2   r=   rS   r   rW   r4   rQ   )r    r   r   r	   r   Integersr   r,   )domr-   s     r:   %test_integer_domain_relational_isolver     s   
Aq/CsA1q51q5/1q5)A-q=AqIIIsA!a%!)Qqzz2GRC 2c!Qi#334 4 4!a%!)a-1::6GB2c!Qi#334 4 416AE>A%*AajjAGQ2c!Qi#334 4 416AE>A%*AajjA!VB2c!Qi#33RAG$3q!9a(88:: : :r9   c                     t        t        t              t        t        dt                    t        dt              k(  sJ t        dd      } t        dt        z  j                  t              dk  t        |       | k(  sJ t        t        t        dz
        t        z  dk  t        t        j                        t        j                  dd      k(  sJ y )Nr   r2   rT   r   r^   )r+   r   r.   r!   r   r    r-   diffr   r   r6   r[   )is    r:   test_issue_10671_12466r     s    CFAx2/9Q3CCCCBAQqSJJqMA%q!,111SQZ\a'AGG4q!  r9   c                      t         t        t        t        t        t
        fD ]l  } t         | t        d      t              j                  t        k(  sJ t         | t        j                  t              t              j                  t        k(  rlJ  t        t	        dt        z  dz
  t              t              t	        t        d      k(  sJ t	        t        j                  t              }t        |t              |k(  sJ t        dz  t        t              t        t              t        t              z   t        dt        z   z  fD ]:  }dD ]3  }d|z  |z
  dkD  }t        |t        d      ||t        d      z  kD  k(  r3J  < t        dt        dz  z  dt        z  z   dz
  dk  t        d      t        t        dz   z  t        j                  k  k(  sJ t        t	        t        t        z  d      t              t	        t        t        z  d      k(  sJ t!        dd      }t        t	        t        |z  d      t              t	        t        d|z        k(  sJ t        t        |z  dk  t              t        |z  dk  k(  sJ t!        d	d
      }t        |t        z  dkD  t              t        j"                  t        k  t        |k  z  k(  sJ t        |t        z  dkD  t        d      dt        z  d|z  kD  k(  sJ t	        dt        z
  t        dt        z  dz
  z        }t        |t              t        t        d      k(  sJ t        t        t        dt        z  dz
  z  k  t              t        t        j                  k  t        t        d      z  k(  sJ y )Nr2   r=   )r   r2   r   T)linearnz)nonzeroar   )r   r   r   r
   r	   r   r(   r-   lhsr   rK   r.   r   r   r   rf   r   r   )opiefxcrh   r   r   s          r:   test__solve_inequalityr     s   2r2r2& ; Aq1-11Q666 AEE1q155:::; R!a^Q/2a8;;;	AEE1BR#r)))!tSVSVc!f_aQi8  	A"q1A$Q$7QqtV  	
 Qq!tVac\A-11TB	1q5	AFF  R!QZ+r!A#qz999	d	#BR"a[!,1ad;;;QrTAXq)adQh777sT"AQqS1Wa(QVVaZAE,BBBBQqS1Wa5!A#!)DDD
1q5!QqS1W+AQ"bAh...QAaC!G_a0QZ2a84KKKKr9   c                      ddl m    t         t              dk(  sJ   t        j                  t        d            dk(  sJ   t        j                  t                t        t        j                        cxk(  rdk(  sJ  J   t        j                  t                 t         t        j                        cxk(  rt        j
                  k(  sJ  J   t        j                  t                t        t        j                        cxk(  rt        dd      k(  sJ  J   t        j                  t                 t         t        j                        cxk(  rdk(  sJ  J   t        t                t        t              cxk(  rt        dz   k(  sJ  J   t        t                 t         t              cxk(  rt        dz
  k(  sJ  J t        t         fd       y )	Nr   _ptrO   r=   r4   rR   r2   c                  H      t        dd      t        j                        S )Nr   T)infinite)r   r   rK   r   s   r:   rc   ztest__pt.<locals>.<lambda>  s    s5t#<aeeD r9   )sympy.solvers.inequalitiesr   r   r   rK   rf   rl   r   r-   r/   r   r   s   @r:   test__ptr     sd   .sB<1quuadq   quub>SQUU^0q00000quurc?c2#quuo777777q}}b!SQ]]%;NxANNNNNq}}rc"c2#q}}&=CCCCCCq":R,q1u,,,,,q2#;#rc1+.Q.....
:DEr9   c                      t        t        t        d      dk  t              t        dk  t        j                  t        k  z  k(  sJ y )NrO   r=   r   )r(   r   r-   r   r   r8   r9   r:   test_issue_25697r     s2    SAY!^Q/AFqvvz3JJJJr9   c                      t        dt        t              k        t        t        t        t              k        j	                  t        d      k(  sJ y )NrO   )r#   rb   r-   r   subsr8   r9   r:   test_issue_25738r     s@    q3q6z 
 c!f-222q9: : :r9   c                      t        t        t        t              z  dk        t        t        k  t        t        k  z  t         t        k  t        t         k  z  z  k(  sJ y ru   )r#   r   r   r-   r   r8   r9   r:   test_issue_25983r     sI    r#a&yA~.B!GB3GbSSTWYZ_a^aYaLb2ccdcr9   N)g__doc__sympy.concrete.summationsr   sympy.core.functionr   sympy.core.numbersr   r   r   r   sympy.core.relationalr	   r
   r   r   r   r   sympy.core.singletonr   sympy.core.symbolr   r   $sympy.functions.elementary.complexesr   &sympy.functions.elementary.exponentialr   r   (sympy.functions.elementary.miscellaneousr   r   $sympy.functions.elementary.piecewiser   (sympy.functions.elementary.trigonometricr   r   r   sympy.integrals.integralsr   sympy.logic.boolalgr   r   sympy.polys.polytoolsr   r   sympy.sets.setsr    r!   r"   r   r#   r$   r5   r%   r&   r   r'   r(   sympy.polys.rootoftoolsr)   sympy.solvers.solversr*   sympy.solvers.solvesetr+   sympy.core.modr,   	sympy.abcr-   r.   sympy.testing.pytestr/   r0   rE   rF   r;   rI   rM   r\   rj   rm   rp   rr   ry   r{   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r8   r9   r:   <module>r      s:   L ) ( 2 2 8 8 " - 4 ; ? : B B . ' 0 6 6; ; + ' +   . bhhjNHIV%,P!MHN&L
4FP
FTB&,;*|E.O 8 8.5
	!;B @ @:$L8
FK:
er9   