
    sgr                        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 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  ed      \  ZZ ed      ZejA                  ee      d        Z!ejA                  ee      d        Z!ejA                  ee      d        Z!ejA                  ee	      d        Z!ejA                  ee
      d        Z!ejA                  ee      d        Z!ejA                  ee      d        Z!y)    )BasicExpr)Lambda)ooInfinityNegativeInfinityZeroInteger)S)symbols)MaxMin)ImageSet)set_div)SetInterval	FiniteSetUnion)
Dispatcherzx y_set_powc                      y N xys     L/var/www/html/venv/lib/python3.12/site-packages/sympy/sets/handlers/power.py_r      s        c                 Z    t        t        t        t        ft        t        z        | |      S r   )r   r   _x_yr   s     r   r   r      s     FB8bBh0!Q77r   c                     | |z  S r   r   r   s     r   r   r      s    a4Kr   c                 4    t        t        j                        S r   )r   r   One)r   zs     r   r   r      s    QUUr   c                     | j                   |z  }| j                  |z  }|dkD  r||kD  n| j                  | j                    kD  dk(  r| j                  }| j                  }|}n| j                  }| j                  }|}| j                   j                  r"t        t        ||      t        ||      ||      S | j                  j                  r"t        t        ||      t        ||      ||      S |j                  r|j                  r| j                   j                  rt        |t        | j                        S | j                  j                  rt        t         |d| j                        S t        t        t         |d| j                        t        |t        | j                              S t        ||| j                  | j                        S |j                  r|j                  rr| j                   j                  rt        |t        | j                        S | j                  j                  rt        |t        | j                        S t        dt              S t        t        j                  |t        j                  | v|      S y)z]
    Powers in interval arithmetic
    https://en.wikipedia.org/wiki/Interval_arithmetic
    r   TN)startend	left_open
right_openis_positiver   r   r   is_negativeis_oddis_zeror   r   is_evenr   r	   )r   exponents1s2r*   r+   slefts          r   r   r   #   s    
(	B	
B\b(8dBKK	\\
 LL	[[
wwBKBKJ0 	0 
		BKBKJ0 	0
 wwB55uu}}Rq{{;;2#r4=xBPQP\P\?]^^BAKK>>			wwB55uu}}B44Ar?"AFFE166?IFF 
r   c                    | j                   j                  r`| j                  dk  rt        t        j
                        S | j                   dkD  rt        t        j                        S t        dt              S | j                  j                  ra| j                   dkD  rt        t        j
                        S | j                  dk  rt        t         t              S t        t         t              S | j                   dkD  r8| j                  dk  rt        t        j
                        S t        dt              S t        t         t              S )N   r   )
r(   is_nonnegativer)   r   r   r	   r   r   r   r-   bes     r   r   r   S   s     	ww5519QVV$$77Q;QZZ((2	
		77R<QVV$$552:bS"%%R  77R<uuqy ((Ar?"R  r   c                 R    t        t        t        j                  |       t              S r   )r   r   r   r%   r   r9   s     r   r   r   i   s    GAEE1%r**r   N)"
sympy.corer   r   sympy.core.functionr   sympy.core.numbersr   r   r   r	   r
   sympy.core.singletonr   sympy.core.symbolr   (sympy.functions.elementary.miscellaneousr   r   sympy.sets.fancysetsr   sympy.sets.setexprr   sympy.sets.setsr   r   r   r   sympy.multipledispatchr   r!   r"   r   registerr   r   r   r   <module>rH      s/   " & L L " % ? ) & ; ; - 
B j! 
5%  ! 
38 8 
4  
8T" # 
8W%-G &-G^ 
8X&! '!* 
8-.+ /+r   