
    gjD                     <   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 d dlmZ d dlmZmZ d dl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mZmZmZ d dl m!Z! d dl"m#Z# d dlm$Z$m%Z%m&Z&m'Z'm(Z(m)Z) d dlm*Z*m+Z+m,Z,m-Z- d dl.m/Z/  e!d          Z0e01                    e#e#          d             Z2e01                    e#e          d             Z2e01                    e%e$          d             Z2e01                    e%e%          d             Z2e01                    ee%          d             Z2e01                    ee          d             Z2e01                    e$e&          d             Z2e01                    e'e          d             Z2e01                    e'e%          d             Z2e01                    e'e'          d             Z2e01                    e'e$          d             Z2e01                    e'e)          d             Z2e01                    e(e          d             Z2e01                    e-e-          d              Z2e01                    ee          d!             Z2e01                    e*e          d"             Z2e01                    e+e          d#             Z2e01                    ee          d$             Z2e01                    ee          d%             Z2e01                    ee          d&             Z2e01                    e$e)          d'             Z2e01                    e%e)          d(             Z2e01                    e)e&          d)             Z2d* Z3e01                    e$e          d+             Z2e01                    e%e          d,             Z2d-S ).    )_aresame)Lambdaexpand_complex)Mul)ilcmFloat)Eq)S)Dummysymbols)ordered)sign)floorceiling)ComplexRegion)	FiniteSetIntersectionIntervalSetUnion)
Dispatcher)ConditionSet)IntegersNaturalsRealsRangeImageSet	Rationals)EmptySetUniversalSetimageset
ProductSet)numerintersection_setsc                     d S N abs     \/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/sets/handlers/intersection.py_r,          4    c                 ^    t          | j        | j        t          | j        |                    S r&   )r   sym	conditionr   base_setr(   s     r+   r,   r,      s$    q{LQ,G,GHHHr.   c                     | S r&   r'   r(   s     r+   r,   r,           Hr.   c                 &    | t           j        u r| n|S r&   )r
   r   r(   s     r+   r,   r,   $   s    QZ11Q&r.   c                 "    t          ||           S r&   )r$   r(   s     r+   r,   r,   (       Q"""r.   c           	         |j         r| j        s.|j        s't          t          | j        |j                            S | j        r|j        r| j        | j        }}|j        |j        }}t          ||          }t          ||          }dt          j        z  |v rt          j	        |v sdt          j        z  |v r+t          j	        |v rt          |t          d                    }t          ||z  d          S |                    t          j                  rpg }t          dt          d          }	| j        s\| j        D ];}
t          j	        |
j        d         v r |                    |
j        d                    <t          | }t          ||          S | j        r| j        D ]}
t          j	        |
j        d         v r |                    |
j        d                    t          j        |
j        d         v r=|                    t'          t)          |	|	           |
j        d                              t          j	        |
j        d         v r"|                    t          d                     t          | }t          ||          S d S d S )N   r   T)polarx)clsreal   )is_ComplexRegionr:   r   r   sets
a_interval
b_intervalr
   PiZeror   r   	is_subsetr   r   r   psetsargsappendr   r   )selfotherr1theta1r2theta2new_r_intervalnew_theta_intervalnew_intervalr;   elements              r+   r,   r,   ,   s    ,
 	,U[ 	, di!D!DEEE Z 	,EK 	,$/B)5+;B)"b11N!-ff!=!= 146!!af&6&6!$&  QVv%5%5%*+=+4Q<<&9 &9" 0B!B&*, , , , qw 5CU... z 	5: 9 96W\!_,, ''Q888 ,/Le444 Z 		5: 6 66W\!_,, ''Q88847<?** ''A2Q(P(PQQQ6W\!_,, ''	!555 ,/Le444-5 5		5 		5r.   c                     | S r&   r'   r(   s     r+   r,   r,   [   r4   r.   c                    t          d | j        |j        d d         z   D                       sd S | j        dk    rt          j        S t          t          |j        | j                            }||vr|dz  }t          t          |j
        | j
                            }||vr|dz  }t          | t          ||dz                       S )Nc              3   $   K   | ]}|j         V  d S r&   	is_number.0is     r+   	<genexpr>z_.<locals>.<genexpr>b   s$      88qq{888888r.   r9   r   r>   )allrG   sizer
   r   r   maxinfr   minsupr$   r   )r)   r*   startends       r+   r,   r,   _   s     88AFQVBQBZ$788888  	v{{z Cqu%%&&EA~~

AE15!!
"
"C
!||qQeS1W 5 5666r.   c                 \    t          | t          |j        t          j                            S r&   )r$   r   r_   r
   Infinityr(   s     r+   r,   r,   s   s     Q
 ; ;<<<r.   c           	      z   t          d | |fD                       sd S |st          j        S | st          j        S |j        | j        k     rt          j        S |j        | j        k    rt          j        S | }|j        j        r|j        }|}|j        j        r|j        }|j        j        r|S |j        j        r| S ddlm	} d } | ||t          d                     ||t          d                    z
            \  }}|d u o|d u }|rt          j        S |                                d         }	 |||	          }
fd}t          t          |j        |j                             |||
          }|t          j        S  |||
          }|t          j        S fd} || |          } |||          }t          |j                  dk     r|j        }t          |j                  dk     r|j        }t!          |j        |j                  }t#          |j        |j                  }t'          ||          S )	Nc              3   R   K   | ]"}t          d  |j        D                       V  #dS )c              3   $   K   | ]}|j         V  d S r&   rV   )rY   vs     r+   r[   z_.<locals>.<genexpr>.<genexpr>z   s$      //11;//////r.   N)r\   rG   )rY   rs     r+   r[   z_.<locals>.<genexpr>z   s;      @@As///////@@@@@@r.   r   )diop_linearc                 &    | j         || j        z  z   S r&   )rb   step)rj   rZ   s     r+   <lambda>z_.<locals>.<lambda>   s    ag!&( r.   r)   r*   c                    || j         k    r|S t          | j         |z
            z  }t          || j         |z   |          d         }|| j         k    rn*t          | j                  t          |          k    r||z  }|| vrd S |S )N)rb   r   r   rm   )rK   csts1rm   s       r+   _first_finite_pointz_.<locals>._first_finite_point   s    ==H "(Q,$
 1bhmR((,>>
 BG}}R((bR<<F	r.   c                     t          | j                  z  }| j        j        rt	          || j        |          }nt	          | j        ||z   |          }|S r&   )r   rm   rb   	is_finiter   stop)rj   firstrr   rvrm   s       r+   _updated_rangez_.<locals>._updated_range   sS    !&\\$7 	0uafb))BBqw
B//B	r.   )r\   r
   r   ra   r_   rb   is_infinitereversed%sympy.solvers.diophantine.diophantinerk   r   as_coeff_Addabsr   rm   r   r^   r`   rw   r   )r)   r*   rK   rM   rk   eqvavbno_solutiona0rq   rt   rs   s2rz   rb   rw   rm   s                    @r+   r,   r,   w   s    @@!Q@@@@@ t  z zuqu}}zuqu}}z 
B	x [	
B	x [ 
x 	x AAAAAA 
)	(B
 [Bc

++bbU3ZZ.@.@@AAFB *+tK z 
		1	B
2r

A    0 tBGRW%%&&D		R	#	#B	zz		R	#	#B	zz     
2		B	2		B BG}}q[BG}}q[ "(##Erw  Dd###r.   c                     | S r&   r'   r(   s     r+   r,   r,      r4   r.   c                     | S r&   r'   r(   s     r+   r,   r,      r4   r.   c                 ~  $%& ddl m} t          | j        j                  dk    s| j        j        | j        j        k    rd S | j        d         }|t          j        u rd }t          |t                    rZ|j        t          j        fk    rD|j        j        }|j        j        d         }t          d          }|                    ||          }n|t          j        u rt          d          x}}|3| j        j        $| j        j        d         %	 t           |$|z
  %|fd                    }n# t          t           f$ r Y d S w xY wt          |          dk    rt          j        S t%          d |D                       rt          |          dk    rx|d         \  }}	|j        \  }
$                    %|                    |
%                                                    }t+          t-          %|          t          j                  S d S t/          $%fd|D              S |t          j        k    r<dd	lm}m& &fd
}| j        j        }| j        j        d         %t          %j        d          }|                    %|          }|                                \  }}t=          |          }|                    |%          }|                    |%          }|j        }t-          %|          }|j        rnL|j        du rt          j        S |%hk    rd S | |tA          j!        tE          |                    %          z  }| | ||          %          z  }t+          ||          S t          |tF                    r5ddl$m%}m&}m'} | j        j        }| j        j        d         %d\  }}|j(        |j)        }}|j*        r|}n|} |||j+        %          \  }} |||j,        %          \  }} t[          d || fD                       r|%k    r t          |          dk    r|j.        d         }|%k    r t          |           dk    r| j.        d         }t%          d ||fD                       rd S t          j        }!t[          d ||fD                       r2||k    r||}}tG          ||||          }"|/                    |"          }!nj|0                    t          j                  rK ||%t          j                  }#t          |!t          tb          f          s|#/                    |          }!nd S |!t          j        u rt          j        S t          |!td                    r)|!j3        t          j4        urt/          t          |!           }!|!t+          t-          %|          |!          S d S d S d S )Nr   )diophantiner>   mT)symspermutec              3   .   K   | ]}|D ]}|j         V  d S r&   )free_symbols)rY   tuplss      r+   r[   z_.<locals>.<genexpr>   s1      DDtDD!Q^DDDDDDDr.   c              3   P   K   | ] }                     |d                    V  !dS )r   N)subs)rY   r   fnns     r+   r[   z_.<locals>.<genexpr>)  s5      "C"C2771ad#3#3"C"C"C"C"C"Cr.   )denomssolve_linearc           
          g }| D ]m} |d|g          \  }}||k    r#|                     t          |                     <|                     t          |t          |d                               nt	          | S )Nr   )rH   r   r   r	   r   )exprsr0   solsrZ   r;   xisr   s         r+   _solution_unionz_.<locals>._solution_union.  s     D = =%aSE22388KK	#////KKS"Q(( ; ;<<<<$<r.   )r=   F)invert_realinvert_complexsolveset)NNc              3   @   K   | ]}t          |t                    V  d S r&   )
isinstancer   rX   s     r+   r[   z_.<locals>.<genexpr>l  s,      ::Az!Y''::::::r.   c              3      K   | ]}|d u V  	d S r&   r'   rX   s     r+   r[   z_.<locals>.<genexpr>w  s&      9919999999r.   c              3   $   K   | ]}|j         V  d S r&   )is_realrX   s     r+   r[   z_.<locals>.<genexpr>}  s$      9919999999r.   )5sympy.solvers.diophantiner   lenlamda	variables	signature	base_setsr
   r   r   r   exprr   r   list	TypeErrorNotImplementedErrorr   anyr   expandr!   r   r   r   sympy.solvers.solversr   r   nameas_real_imagr   is_zeror   	make_argsr#   r   sympy.solvers.solvesetr   r   r   	left_open
right_openr   r_   ra   r\   rG   	intersectrE   r   r   r]   re   )'rI   rJ   r   r2   gmvarr   solnssolnsolmtr   r   r   fn_f_reimifreelamr   r   r   new_infnew_sup	new_lopen	new_ropeninverterg1h1g2h2	range_setrQ   	solutionsr   r   r   s'                                       @@@r+   r,   r,      s   555555 	DJ !!A%%z#tz';;;t~a H 1:eX&& 	 5?qzm+K+K!B+'*Cc

AaBBaj  3ZZA>B
$Q'A[[b1vtLLLMM23     5zzQz!DDDDDDD 	Eu::??!&qJD$,DQ771dii1oo66==??D#F1dOOQZ@@@F "C"C"C"C"CU"C"C"CDD>>>>>>>>
	  
	  
	  
	  
	  JOJ #16%%%VVAr]]""BBWWR^^WWR^^Qmm: 	- Z5  :qc\\4 eBii((!- - -H 	OOFF1IIq111X&&&	E8	$	$ :	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 JOJ #%$0@9	9 	&"HH%H!UY**B!UY**B::"b::::: )	Qwwr77a<< gajGQwwr77a<< gajG
 99w&899999  
I99w&899999  W$$'.WG')YOO$..|<<		??17++  (Aqw 7 7I%i(L1IJJ $-$7$7$>$>		AJ&&z!Iu-- 8).
2R2R%tI7	$q!i888FFu: :s    D2 2EEc                     t          |j                  t          | j                  k    rt          j        S t	          d t          | j        |j                  D              S )Nc              3   F   K   | ]\  }}|                     |          V  d S r&   )r   )rY   rZ   js      r+   r[   z_.<locals>.<genexpr>  s0      GG41aAGGGGGGr.   )r   rG   r
   r   r"   zipr@   r(   s     r+   r,   r,     sM    
16{{c!&kk!!zGG3qvqv3F3FGGGHHr.   c                    t           j        t           j        f}| t          | k    r&| j        | j        }}|j        s||v s|j        s||v r|S |                     |          sd S d}| j        |j	        k    rg|j        | j	        k    rV| j        |j        k     r|j        }|j
        }n| j        |j        k    r| j        }| j
        }n| j        }t          | j        |j                  s|j                            t                    r'| j                            t                    s|j        }no| j                            t                    r'|j                            t                    s| j        }n)t          t          | |g                    d         j        }| j
        p|j
        }| j	        |j	        k     r| j	        }| j        }	n| j	        |j	        k    r|j	        }|j        }	n| j	        }t          | j	        |j	                  s|j	                            t                    r'| j	                            t                    s|j	        }no| j	                            t                    r'|j	                            t                    s| j	        }n)t          t          | |g                    d         j	        }| j        p|j        }	||z
  dk    r|s|	rd}nd}|rt           j        S t          ||||	          S )NFr   T)r
   NegativeInfinityre   r   leftrightr   _is_comparablerb   rc   r   r   hasr   r   r   r   r   )
r)   r*   inftylrj   emptyrb   r   rc   r   s
             r+   r,   r,     s    
*EHevqw19 	U

ai
1::H A tEw!%AGqu,,7QWGEIIWqwGEIIGEAGQW-- : 7;;u%% :agkk%.@.@ :GEEW[['' :E0B0B :GEE
 !!A0039E2q{I515==%CJJUQU]]%CJJ %CAE15)) 6599U## 6AEIIe,<,< 6%CCUYYu%% 6aeii.>.> 6%CCw!u~~..q15C5J;!jE zE3	:666r.   c                     t           j        S r&   )r
   r   r(   s     r+   r,   r,     s
    :r.   c                     |S r&   r'   r(   s     r+   r,   r,     r4   r.   c                 .    t          | j        |j        z   S r&   )r   	_elementsr(   s     r+   r,   r,     s    q{Q[022r.   c                 R    	 t          fd| D              S # t          $ r Y d S w xY w)Nc                     g | ]}|v |	S r'   r'   )rY   elr*   s     r+   
<listcomp>z_.<locals>.<listcomp>  s    555"R1WW2WWWr.   )r   r   r(   s    `r+   r,   r,     sJ    555555566   tts    
&&c                     d S r&   r'   r(   s     r+   r,   r,     r-   r.   c                     | S r&   r'   r(   s     r+   r,   r,     r4   r.   c                     | S r&   r'   r(   s     r+   r,   r,     r4   r.   c                     | S r&   r'   r(   s     r+   r,   r,     r4   r.   c                 *   	 |j         t          j        u r|j        t          j        u r| S t          t          | j        t          |j	                            t          |j                  dz             }t          ||          S # t          $ r Y d S w xY w)Nr>   )_infr
   r   _supre   r   r^   r_   r   r   r   r   r$   
ValueError)r)   r*   r   s      r+   _intlike_intervalr     s    6Q'''AFaj,@,@H#aeWQV__--uQW~~/ABB A&&&   tts   'B AB 
BBc                 "    t          | |          S r&   r   r(   s     r+   r,   r,     r7   r.   c                 "    t          | |          S r&   r   r(   s     r+   r,   r,     r7   r.   N)4sympy.core.basicr   sympy.core.functionr   r   sympy.core.mulr   sympy.core.numbersr   r   sympy.core.relationalr	   sympy.core.singletonr
   sympy.core.symbolr   r   sympy.core.sortingr   $sympy.functions.elementary.complexesr   #sympy.functions.elementary.integersr   r   sympy.sets.fancysetsr   sympy.sets.setsr   r   r   r   r   sympy.multipledispatchr   sympy.sets.conditionsetr   r   r   r   r   r   r   r   r    r!   r"   sympy.simplify.radsimpr#   r$   registerr,   r   r'   r.   r+   <module>r     sB   % % % % % % 6 6 6 6 6 6 6 6       * * * * * * * * $ $ $ $ $ $ " " " " " " . . . . . . . . & & & & & & 5 5 5 5 5 5 > > > > > > > > . . . . . . K K K K K K K K K K K K K K - - - - - - 0 0 0 0 0 0                H H H H H H H H H H H H ( ( ( ( ( ( J233  L,77  87 L#..I I /.I Hh//  0/ Hh//' ' 0/' Hh//# # 0/# M3//,5 ,5 0/,5\ He,,  -, E8,,7 7 -,7& E8,,= = -,= E5))o$ o$ *)o$d E8,,  -, E9--  .- Hc**` ` +*`F J
33I I 43I Hh//A7 A7 0/A7F Hc**  +* L#..  /. Iy113 3 213 Is++  ,+ C%%  &% Hi00  10 Hi00  10 Iu--  .-   Hh//# # 0/# Hh//# # 0/# # #r.   