o
    jg                     @   s  d dl mZ d dlmZ d dlmZmZ d dlmZm	Z	m
Z
mZ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 edZeeedd	 Zeeed
d	 Zeeedd	 Zeeedd	 Zeeedd	 Zeeedd	 Zeeedd	 Zeeedd	 Zeeedd	 Zeeedd	 Zeeedd	 Zeeedd	 Zeeedd	 Zeeedd	 Zeeedd	 Zee	e	dd	 Zee	edd	 Zeeedd	 ZdS )    )S)sympify)MinMax)EmptySet	FiniteSetIntersectionInterval
ProductSetSetUnionUniversalSet)ComplexRegionNaturals	Naturals0Integers	RationalsReals)
Dispatcher
union_setsc                 C      | S N abr   r   Q/var/www/html/zoom/venv/lib/python3.10/site-packages/sympy/sets/handlers/union.py_      r   c                 C   r   r   r   r   r   r   r   r      r   c                 C   r   r   r   r   r   r   r   r      r   c                 C   r   r   r   r   r   r   r   r      r   c                 C   r   r   r   r   r   r   r   r      r   c                 C   r   r   r   r   r   r   r   r   "   r   c                 C   s&   t | |}|| kr|S ||kr| S d S r   )r   )r   r   	intersectr   r   r   r   &   s   
c                 C   s`   | tjrt|}|jr.| js|jstt| j|jS | jr.|jr.tt| j|jddS d S )NT)polar)		is_subsetr   r   r   	from_realis_ComplexRegionr    r   setsr   r   r   r   r   .   s   
c                 C   s   |S r   r   r   r   r   r   r   =   r   c                 C   r   r   r   r   r   r   r   r   B   r   c                 C   sx   | | r| S t|jt| jkrd S t| jdkr:| j\}}|j\}}||kr/|t|| S ||kr:t||| S d S )N   )r!   lenr$   r   )r   r   a1a2b1b2r   r   r   r   F   s   


c                 C   s   | | r| S d S r   )r!   r   r   r   r   r   U   s   
c                 C   s   |  |rZt| j|j}t| j|j}||k s#||kr%|| vr%||vr%d S t| j|j}t| j|j}| j|ks;| joB|j|kpB|j}| j|ksK| joR|j|kpR|j}t||||S d S r   )_is_comparabler   endr   start	left_open
right_openr	   )r   r   r,   r-   r.   r/   r   r   r   r   [   s    
c                 C   s   t jS r   )r   r   r   r   r   r   r   n   s   c                 C   s   | j ot|| jtju o| jj}| jo#t|| jtju o#| jj}|s(|rE| j o/| j|v}| jo7| j|v}t	| j| j||}||hS d S r   )
r.   r   containsr-   r   true	is_finiter/   r,   r	   )r   r   open_left_in_b_and_finiteopen_right_in_b_and_finite	open_left
open_rightnew_ar   r   r   r   r   s    c                 C   s   t | j|jB  S r   )r   	_elementsr   r   r   r   r      s   c                    s4   t  fdd| D rt fdd| D   hS d S )Nc                 3   s    | ]
}  |d kV  qdS )TNr0   .0xr   r   r   	<genexpr>   s    z_.<locals>.<genexpr>c                    s   g | ]}  |d kr|qS )Tr9   r:   r=   r   r   
<listcomp>   s    z_.<locals>.<listcomp>)anyr   r   r   r=   r   r      s   c                 C   s   d S r   r   r   r   r   r   r      r   N)sympy.core.singletonr   sympy.core.sympifyr   (sympy.functions.elementary.miscellaneousr   r   sympy.sets.setsr   r   r   r	   r
   r   r   r   sympy.sets.fancysetsr   r   r   r   r   r   sympy.multipledispatchr   r   registerr   r   r   r   r   <module>   sV    ( 


































