o
    hG                     @   s(  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
 d dlmZmZ e
d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dS )    )ooInfinityNegativeInfinity)S)BasicExpr)
Dispatcher)Interval	FiniteSet_set_add_set_subc                 C      d S N xyr   r   M/var/www/html/ai/venv/lib/python3.10/site-packages/sympy/sets/handlers/add.py_      r   c                 C   s   | | S r   r   r   r   r   r   r         c                 C   s.   t | j|j | j|j | jp|j| jp|jS )z`
    Additions in interval arithmetic
    https://en.wikipedia.org/wiki/Interval_arithmetic
    r	   startend	left_open
right_openr   r   r   r   r         c                 C   $   | j tju rtt tS ttjhS r   )r   r   r   r	   r   r
   r   r   r   r   r   r   $      c                 C   r   r   )r   r   r   r	   r   r
   r   r   r   r   r   r   *   r   c                 C   r   r   r   r   r   r   r   r   1   r   c                 C   s   | | S r   r   r   r   r   r   r   6   r   c                 C   s.   t | j|j | j|j | jp|j| jp|jS )zc
    Subtractions in interval arithmetic
    https://en.wikipedia.org/wiki/Interval_arithmetic
    r   r   r   r   r   r   ;   r   c                 C   "   | j tju rtt tS tt S r   r   r   r   r	   r   r
   r   r   r   r   r   E      
c                 C   r   r   r    r   r   r   r   r   K   r!   N)sympy.core.numbersr   r   r   sympy.core.singletonr   
sympy.corer   r   sympy.multipledispatchr   
sympy.setsr	   r
   r   r   registerr   r   r   r   r   <module>   s6    






	









	

