
    \hj,                        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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  S S	KJr  S S
KJrJr  S SKJr  S SK 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,  \" S5      r-\" S5      r.\" S5      r/\" S5      r0\" S5      r1S r2S r3S r4S r5S r6S r7S r8S r9S r:S  r;S! r<S" r=S# r>S$ r?S% r@g&)'    )	unchanged)ConditionSetIntersection	FiniteSetEmptySetUnionContainsImageSet)SetKind)FunctionLambda)Mod)
NumberKind)oopi)EqNe)S)Symbolsymbols)Abs)asinsin)And)Matrix)MatrixSymbol)Interval)raiseswarns_deprecated_sympywxyzfc                  	  ^^^ [        [        [        [        [        5      S5      [	        SS[
        -  SS5      5      n [
        U ;   d   e[
        S-  U ;  d   eS[
        -  U ;  d   e[        U ;  d   eS[        [        [        S-  S:  [        R                  5      ;   d   eS[        [        [        S-  S:  [        R                  5      ;  d   eS[        [        [        S:  [	        SS	5      5      ;  d   e[        [        S
 5        [        SSS5      n[        U[        U[        SS/SS//5      -  U5      5      n[        SS/SS//5      nUR                  U5      R                  5       [        R                   L d   e[        SS/SS//5      nUR                  U5      R                  5       [        R"                  L d   e[%        [        [        [        S:  [        [        15      R&                  [(        5      (       d   e[        [        S 5        [        [        S 5        [        R*                  m[        R,                  m[         mT" [        ST5      [        R.                  L d   eT" [        ST5      TL d   eT" [        [        S:  T" [        [        S:  T5      5      T" [        [        S:  [        S:  -  T5      :X  d   eT" [        [        S:  T" [        [        S:  T5      5      T" [        [        S:  [        S:  -  T5      :X  d-   T" [        [        S:  T" [        [        S:  T5      5      5       eT" [        [        S:  T" [        [        S:  T5      5      T" [        [        S:  [        S:  -  T5      :X  d   eT" [        [        S:  T" [        [        [        :  T5      5      T" [        [        S:  [        [        :  -  T5      :X  d   e[1        T[        [        S:  T" [        [        [        :  T5      5      (       d   e[        [        [        S:  5      R&                  TL d   e[        [        4[        S:  5      R&                  TL d   e[        [        [        4[        [        :  TS-  5      nSU;   d   eS[
        4U;  d   e[        [        UU4S j5        [        [        UU4S j5        g )Nr      FT               c            	      L    S[        [        [        S:  [        SS5      5      ;   $ N   r(   r*   r+   r   r!   r"   r        Z/var/www/auris/envauris/lib/python3.13/site-packages/sympy/sets/tests/test_conditionset.py<lambda>test_CondSet.<locals>.<lambda>.   s!    a<1q5A$ r1   Xc                  F    [        [        [        S-   [        [        15      $ Nr*   )r   r!   r"   r0   r1   r2   r3   r4   :   s    l1a!eaV<r1   c                  ,    [        [        [        S5      $ r7   r   r!   r0   r1   r2   r3   r4   ;   s    l1a3r1   r*   r&   c            
      f   > T " [         [         S:  T " [         [        4[         S:  TS-  5      5      $ Nr*   r&   r!   r"   )CIs   r2   r3   r4   T   s'    a1q5!QFAE1a4*@Ar1   c                  J   > T " [         [        4[         [        -   S:  TT5      $ )Nr&   r=   )r>   Us   r2   r3   r4   V   s    aAA	1a8r1   )r   r!   r   r   r   r   r   r   Realsr"   r   	TypeErrorr   r   containsdoittruefalse
isinstancebase_setr   IntegersUniversalSetr   r   )	sin_sols_principalr5   
matrix_setYZcr>   r?   rA   s	         @@@r2   test_CondSetrQ      s#   %aCFA&.q!B$t&DF####a4))))R4))))''''Q1q!''2222LAqD1Hagg6666 LAE8Aq>:::: 9   	S!QAaAfq!fq!f-=&>$>!BCJAA Aq!&&(AFF222AA Aq!&&(AGG333l1a!eaV4==   
9<=
934	

A	AAQq>QZZ'''Qa=AQAqAE1~ 
q1q5QU#Q'( ( (QAqAE1~ 
q1q5QU#Q'( E)*1a!eQq!a%^)DE (QAqAE1~ 
q1q5QU#Q'( ( (QAqAE1~ 
q1q5QU#Q'( ( (Q1q5!Aq1ua.11111q5!**a/// a!e$--222aVQUAqD)AQ;;r7!
9AB
989r1   c            
          [        [        [        S-  S:  [        SSSS5      5      n [        SSSS5      n[        [        [        S-  S:  [        SSSS5      5      n[        X5      U:X  d   eg )Nr&   r)   r*   Fr   r'   )r   r!   r   r   )input_conditionsetother_domainoutput_conditionsets      r2   test_CondSet_intersectrV   Y   s}    %aA8Aq%4 Aq%/L&q!Q$(H	1eU5 * 
 ! ! !r1   c            
      2   [        [        [        [        [        5      [        R                  5      [        R                  L d   e[        [        [        [        [        [        5      5      S5      [        R                  5      [        R                  :X  d   eg )N)r   r!   r   r   Naturalsr   r   r   r0   r1   r2   test_issue_9849rZ   c   sg    2a8QZZ 
ZZ  2c#a&k2.

 
ZZ  r1   c                  2   [        [        [        [        S:  [        S:  5      [        SSS5      5      [        S5      :X  d   e[        [        [        S:  [        SSS5      5      [        :X  d   e[        [        [        [        S:  5      [        5      [        :X  d   e[        S5      n [        [        [        [        S:  5      [        SSSU 5      5      [        [        S5      [        [        [        [        S:  5      [        U 5      5      5      :X  d   e[        [        [        [        [        S5      S5      [        SSSU 5      5      [        [        SS5      [        [        [        [        [        S5      S5      [        U 5      5      5      :X  d   eg )	Nr*   r   r&   r"   rX   r'   r)   )	r   r!   r   r   r   r   r   r   r   )r"   s    r2   $test_simplified_FiniteSet_in_CondSetr]   j   s@   3q1ua"f-yAq/A 
q\  1q5)Aq!"45AAA3q2v;1X===sACAJ	"aA(>?ilLCAJ	!EFG H GBs1ay!,i1a.CDi1o|Ar#a)Q/?!  	  r1   c                  p   [        [        [        [        S5      [	        [
        5      5      R                  [        [
        1:X  d   e[        [        [        [        S5      [	        [
        5      5      R                  [
        1:X  d   e[        [        [        [        S5      [	        [        [
        5      5      R                  [        [
        1:X  d   e[        [        [        [        S5      [        [        [        [        S-  5      [        R                  5      5      R                  [        5       :X  d   eg Nr   r&   )r   r!   r   r"   r   r#   free_symbolsr
   r   r   rJ   setr0   r1   r2   test_free_symbolsrb   w   s    2a8Yq\ 

,1a&! ! !2a8Yq\ 

,1#  2a8Yq!_ 

,1a&! ! !2a8XfQ1o	

& !\SU+ + +r1   c                  h   [        [        [        [        S5      [	        [
        5      5      R                  [        /:X  d   e[        [        [        [        S5      [	        [        [        5      5      R                  [        /:X  d   e[        [        [        S:  [        [        [        [        S-  5      [        R                  5      5      R                  [        /:X  d   e[        [        [        S:  [        [        [        S:  [        R                  5      5      R                  [        /:X  d   eg )Nr   
   r&   r*   )r   r!   r   r"   r   r#   bound_symbolsr
   r   r   rJ   r0   r1   r2   test_bound_symbolsrf      s    2a8Yq\ 

-A3  2a8Yq!_ 

-A3  1r68F1adOQZZ#H 

-A3  1r6<1q5!**#E 

-A3  r1   c                  X   [        S5      u  p[        [        [        S:  [        [        [
        5      5      R                  5       [        X S:  [        [        [
        5      5      :X  d   e[        [        [        S:  [        [        [
        5      5      R                  5       [        X S:  [        [        [
        5      5      :X  d   e[        [        [        S:  [        [        [        [        S-  5      [        R                  5      5      R                  5       [        X S:  [        [        X S-  5      [        R                  5      5      :X  d   e[        [        [        4[        [        :*  [        R                  S-  5      nUR                  [        [        /:X  d   eUR                  5       [        X4X:*  [        R                  S-  5      :X  d   eUR                  5       [        [        [        4[        [        :*  [        R                  S-  5      R                  5       :X  d   eg )Nz_0 _1r*   r&   )r   r   r!   r   r"   r   as_dummyr
   r   r   rJ   rB   re   )_0_1es      r2   test_as_dummyrl      s   WFB1q5(1b/ 

(*Ra!RAB B B1q5(1b/ 

(*Ra!RAB B B1q5(6!QT?AJJ"G 

(*QE!2AJJ?AA A A 	aVQ!VQWWaZ0A??q!f$$$::<<"(AGGQJGGGG::<<AQ
 

(*  r1   c            
        ^ [        [        [        5      n [        [        [        S:  U 5      nUR                  [        [        5      U:X  d   eUR                  [        [        5      [        [        [        S:  [        [        5      5      :X  d   eUR                  [        [        05      [        [        [        S:  U 5      :X  d   e[        [        [        [        :  U 5      R                  [        [        5      [        [        [        [        :  U R                  [        [        5      5      :X  d   e[        SSS9m[        TST:  [        R                  5      [        R                  L d   e[        SSS9n[        TT[        :  [        R                  5      R                  T[        5      [        TT[        :  [        R                  5      :X  d   e[        [        S 5        [        UT[        :  [        S	S
5      5      R                  [        U5      [        S	S
5      :X  d7   [        UT[        :  [        S	S
5      5      R                  [        U5      5       e[        TT[        :  [        [        * S5      5      R                  [        U5      [        [        * S5      :X  d   e[        [!        [        5      [!        [        5      S:  [        [        15      R                  [!        [        5      [        5      [        [!        [        5      [!        [        5      S:  [        [        15      :X  d   e[        S5      n[#        [%        USU-  [&        -  [)        [        5      -   5      [        R                  5      n[#        [%        USU-  [&        -  [)        [        R*                  S-  5      -   5      [        R                  5      n[        [        [-        [        [        SS5      5      U5      R                  [        [        R*                  S-  5      R/                  U5      (       d   eS[        [        [        4[        [        -   S:  [        R                  S-  5      ;   d   e[        [0        U4S j5        g )Nr&   nT)negativer   p)positivec                  T    [        [        S-   [        S:  [        R                  5      $ r7   )r   r!   r   rJ   r0   r1   r2   r3   #test_subs_CondSet.<locals>.<lambda>   s    |	Aq1uajj "r1   r(   r*   kr'   rX   r   r*   c                  8   > [        T T S:  [        SS5      5      $ )Nir   rd   )r   r   )rn   s   r2   r3   rs      s    l1a#gx2Gr1   )r   r#   r"   r   r!   subsxreplacer    r   r   rJ   r   r   
ValueErrorr   r   r$   r
   r   r   r   Oner	   dummy_eqrC   )srP   rp   ru   img1img2rn   s         @r2   test_subs_CondSetr      sO   !QAQAq!A66!Q<166!Q<<1q5)A,????::q!faQ!::::1q5! 

$q!*QAqvva|<= = = 	sT"A1q5!**-;;;sT"A1q5!** 

$q!*QAqzz:; ; ;
: " #	1q5(2q/##'41:"aA .BN	1q5(2q/C##'41:. A 	1q5(B3"$$(DA %
rc1   !adQhA 

$qtQ-<!adQhA?@ @ @ 	sAF1ac"ftAw./<DF1ac"ftAEE!G}45qzzBD8	8Bq> ""&$q!%%'"288D>B B B \1a&!a%!)QZZ]CCCC
9GHr1   c            
      p   [        5          [        [        [        4[        S-   [        [        -   1[        R
                  S-  5      [        [        [        4[        [        S-   S5      [        [        [        -   S5      -  [        R
                  S-  5      :X  d   e S S S 5        g ! , (       d  f       g = f)Nr*   r&   r   )r   r   r!   r"   r   rB   r   r0   r1   r2   test_subs_CondSet_tebrr      s{    		!QFQUAENAGGQJ?!QAE11q5!!<aggqjIJ 	J J 
"	!	!s   BB''
B5c                  n   [         n [        R                  nU " [        [        S:  U5      nUR	                  U " [
        [
        S:  U5      5      (       d   eUR	                  S5      S:X  d   eUR	                  U " [        [        S:  [        R                  5      5      S:X  d   e[        [        [
        4[        [        S-   S5      [        [        [
        -   S5      -  [        R                  S-  5      n[        [        [
        4[        [        S-   S5      [        [        [
        -   S5      -  [        R                  S-  5      n[        [        [
        4[        [        S-   S5      [        [        [
        -   S5      -  [        R                  S-  5      nUR	                  U5      (       d   eUR	                  U5      SL d   eUR	                  U5      SL d   eUR	                  U5      SL d   e[        S5      n[        S5      n[        S5      n[        [        Xf[        -  5      [        R                  5      n	[        [        Xw[        -  5      [        R                  5      n
[        [        [        US5      U	5      n[        [        [        US5      U
5      nUR	                  U5      (       d   eg )Nr*   Fr   r&   mrn   a)r   r   rJ   r!   r|   r"   rB   r   	Complexesr   r
   r   r   r   )r>   r?   rP   c1c2c3r   rn   r   d1d2s              r2   test_dummy_eqr      s   A	

A	!QUAA::a1q5!n%%%%::a=E!!!::a1q5!''*+u444	q!fbQlRAq\9177A:	FB	q!fbQlRAq\9177A:	FB	q!fbQlRAq\91;;>	JB;;r???;;r?e###::b>U""";;q>U""" 	sAsAsA	&bD/1::	.B	&bD/1::	.B	aAq2	&B	aAq2	&B;;r???r1   c            
      (   S[        [        [        S:  [        SS5      5      ;   d   eS[        [        [        S:  [        SS5      5      ;   SL d   e[	        [
        S 5        [	        [
        S 5        [        [        [        S:  [        SS5      5      R                  S5      [        S:  :X  d   e[        [        [        S:  [        SS5      5      R                  S5      [        R                  L d   e[        [        [        S:  [        SS5      5      R                  [        5      [        [        [        [        SS5      5      [        S:  5      :X  d   e[        [        S[        -  S	:  [        R                  5      R                  S	5      [        S	[        [        S[        -  S	:  [        R                  5      SS
9:X  d   e[        [        [        4[        [        -   S:  [        R                  S-  5      n U R                  S5      (       a   eU R                  S5      (       d   eU R                  S5      (       a   e[        [        [        [        44[        [        -   [        -   S:  [        R                  [        R                  S-  -  5      n U R                  S5      (       a   eU R                  S5      (       a   eU R                  S5      (       a   eU R                  S5      (       a   eU R                  S5      (       d   eg )Nr.   r(   r*   r+      Fc            	      L    S[        [        [        S:  [        SS5      5      ;   $ r-   r/   r0   r1   r2   r3   test_contains.<locals>.<lambda>   s    \!QUHQN;;r1   c                  Z    S[        [        S[        -  S:  [        R                  5      ;   $ )Nr   r*   )r   r!   r   rB   r0   r1   r2   r3   r      s    a<1Q3!8QWW#EEr1   r   )evaluater&   )r&   r*   rv   r:   )r:   r'   )r:   r'   r)   )r*   r   )r   r!   r   r"   r   rC   rD   r   rG   r    r   r	   rB   rJ   )rP   s    r2   test_containsr      sp   QAx1~6666aQA77EAAA 9;= 9EF1q5(1a. 

(1+!a%! ! !1q5(1a. 

(1+! ! !1q5(1a. 

(1+Xa!Q8!a%@A A A
 1Q3!8QWW-66q9LAaC1Hagg6GH H HaVQUQY

A6Azz!}}::fzz&!!!!a!Q[!a%!)a-AJJM1IJAzz!}}zz&!!!!zz+&&&&zz*++++::k""""r1   c                     [        [        [        4[        S:  [        R                  S-  5      R                  [        [        45      [        S:  [        [        [        R                  5      -  [        [        [        R                  5      -  :X  d   e[        [        [        S:  [        R                  5      R                  [        5      [        [        [        R                  5      [        S:  -  :X  d   eg r<   )r   r!   r"   r   rJ   as_relationalr	   r0   r1   r2   test_as_relationalr     s    AAqzz1}5CCQF 
!ex1::..!QZZ1HHI I I1q5!**-;;A 
a$A./ / /r1   c            	         [        [        [        [        5      [        -   S:  5      n [        [        [        [        U 5      [        R
                  5      nU[        [        [        [        5      [        -   S:  [        R
                  5      :X  d   e[        [        [        [        5      [        -   S:  5      n [        [        [        [        U 5      [        R
                  5      nU[        [        [        [        5      [        -   S:  [        R
                  5      :w  d   e[        [        [        [        5      [        -   S:  5      R                  [        SS5      5      n [        [        [        [        U 5      [        R
                  5      nU[        [        [        [        5      [        -   S:  [        SS5      5      :X  d   eg)z4Tests whether there is basic denesting functionalityr   rX   r*   N)	r   r!   r   r	   r   rB   r"   	intersectr   )innerouters     r2   test_flattenr     s   CFQJN+EHQ.8ELCFQJNAGG<<<<CFQJN+EHQ.8ELCFQJNAGG<<<<CFQJN+55hr1oFEHQ.8ELCFQJNHRODDDDr1   c                  H   ^ SSK Jn   [        S5      m[        U U4S j5        g )Nr   )BadSignatureErrorza,ac                  *   > [        T [        S:  5      $ )Nr   r9   )dups   r2   r3    test_duplicate.<locals>.<lambda>!  s    l3A&>r1   )sympy.core.functionr   r   r   )r   r   s    @r2   test_duplicater     s    5
%.C
>?r1   c            	         [        [        [        [        [        5      S5      [	        SS[
        -  5      5      R                  [        [        5      L d   e[        [        [        S:  5      R                  [        [        5      L d   eg r_   )	r   r!   r   r   r   r   kindr   r   r0   r1   r2   test_SetKind_ConditionSetr   $  s]    2c!fa=(1ad*;<AAWZEXXXX1q5!&&'**====r1   N)Asympy.core.exprr   
sympy.setsr   r   r   r   r   r	   r
   sympy.sets.setsr   r   r   r   sympy.core.modr   sympy.core.kindr   sympy.core.numbersr   r   sympy.core.relationalr   r   sympy.core.singletonr   sympy.core.symbolr   r   $sympy.functions.elementary.complexesr   (sympy.functions.elementary.trigonometricr   r   sympy.logic.boolalgr   sympy.matrices.denser   "sympy.matrices.expressions.matexprr   r   sympy.testing.pytestr   r   r    r!   r"   r#   r$   rQ   rV   rZ   r]   rb   rf   rl   r   r   r   r   r   r   r   r   r0   r1   r2   <module>r      s    %) ) ) # 2  & ' * " / 4 @ # ' ; $ ? 3K
3K
3K
3KSM::z!
+ %IPJ6#B/E@>r1   