
    gJ#                     H    d dl mZ d dlmZ d Zd Zd Zd Zd Zd Z	d	 Z
d
S )    interval)raisesc                  L   t          dd          t          ddd          k    dk    sJ t          dd          t          ddd          k    dk    sJ t          dd          t          ddd           k    dk    sJ t          dd          t          dd	          k    d
k    sJ t          dd          t          d	d          k    dk    sJ t          dd          t          dd	          k    d
k    sJ t          dd	          t          dd	          k    dk    sJ t          dd          t          d	d          k    d
k    sJ t          dd          t          dd          k    dk    sJ t          ddd          t          dd          k    dk    sJ t          ddd           t          dd          k    dk    sJ t          dd          dk    dk    sJ t          dd          dk    dk    sJ t          ddd          t          dd          k    dk    sJ t          ddd           t          dd          k    dk    sJ t          dd          } t          |           t          dd          k    dk    sJ | j        dk    sJ d| v sJ d| v sJ d| v sJ t          dd          | v sJ t          dd	          | vsJ d| vsJ d| vsJ t          t          d           t          d                    }d| v sJ | |v sJ t          dt          d                    |v sJ t          t          d           d          |v sJ t          dd          |v sJ t          ddd           t          dd	          k    dk    sJ t          t          d            d S )N   Tis_validTTFTFTN      ?   NTr      FT)NN      
   ig333333g333333@infgd~Qgd~QJc                  $    t          ddd          S )Nr   r   r   r        o/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/plotting/intervalmath/tests/test_intervalmath.py<lambda>ztest_interval.<locals>.<lambda>(   s    x1a00 r   )r   widthfloatr   
ValueError)interinterbs     r   test_intervalr$      s   QNNhq!d;;;;LLLLQNNhq!e<<<<NNNNQNNhq!d;;;;LLLLQA.<????QNNhq!nn,>>>>QNNhq!nn,====QNNhq!nn,>>>>QNNhq!nn,====QNNhr2...<????A&&&(2r*:*::}M M M MQD)))Xb!__<MMMMQNNaM1111QNNaL0000QE***hq!nn<NNNNQD)))Xa^^;LLLLROOEUOOxA.<????;"::::;;;;::::Aq>>U""""B??%''''euU||mU5\\22F::::F????AuU||$$....U5\\M1%%////E4  F****	"b5	)	)	))Xa^^;N N N N
:0011111r   c                  &   t          dd          t          dd          z   t          dd          k    dk    sJ dt          dd          z   t          dd          k    dk    sJ t          dd          dz   t          dd          k    dk    sJ dt          dt          d                    z   t          dt          d                    k    } | dk    sJ dt          ddd	          z   }|j        du sJ dt          ddd 	          z   }|j        J t          ddd	          t          ddd 	          z   }|j        du sJ t          dd          t          d
dd 	          z   }|j        J t          ddd	          dz   }|j        du sJ d S )Nr   r   r   r   r
   r   r   Fr   r   r   r    r	   )compareas     r   test_interval_addr)   +   s   QNNXa^^+x1~~=,NNNNA(1a..0\AAAAQNNQ(1a..0\AAAA8AuU||,,,E%LL0I0IIGl""""	HQE****A:	HQD))))A:A&&&!Q)F)F)FFA:A"a$7777A:A&&&*A:r   c                  T   t          dd          t          dd          z
  t          dd          k    dk    sJ t          dd          dz
  t          dd          k    dk    sJ dt          dd          z
  t          dd          k    dk    sJ dt          ddd	          z
  } | j        du sJ t          dd
d 	          dz
  } | j        J t          ddd	          t          dd          z
  } | j        du sJ t          ddd 	          t          dd          z
  } | j        J d S )Nr   r   r   r
   r   r   Fr   r   r   r   r	   r(   s    r   test_interval_subr.   =   sG   QNNXa^^+xA><OOOOQNNQ(1a..0\AAAAA(2q//1lBBBB	HQE****A:A%%%)A:A&&&!Q7A:A%%%A6A:r   c                  &
   t          dd          t          dd          k     dk    sJ t          dd          t          dd          k     dk    sJ t          dd          t          dd          k     d	k    sJ t          dd          t          dd          k    dk    sJ t          dd          t          d
d          k    dk    sJ t          dd          t          dd          k    dk    sJ t          dd          t          dd
          k    d	k    sJ t          ddd          t          dd          k    dk    sJ t          ddd           t          dd          k    dk    sJ t          dd          d
k    dk    sJ t          dd          dk    dk    sJ t          dd          dk    d	k    sJ t          dd          t          dd          k    dk    sJ t          dd          t          dd          k    dk    sJ t          dd          t          dd          k    d	k    sJ t          dd          dk    dk    sJ t          dd          dk    d	k    sJ t          dd          dk    dk    sJ t          dd          dk    dk    sJ t          dd          dk    dk    sJ t          dd          dk     d	k    sJ t          dd          dk     dk    sJ t          dd          dk    dk    sJ t          dd          dk    d	k    sJ t          dd          t          dd          k    dk    sJ t          dd          t          dd
          k    dk    sJ t          dd          t          dd          k    d	k    sJ t          dd          dk    dk    sJ t          dd          dk    dk    sJ t          dd          dk    d	k    sJ dt          dd          k    dk    sJ t          ddd          t          ddd           k     } | dk    sJ t          ddd           t          ddd          k     } | dk    sJ t          ddd           t          ddd           k     } | dk    sJ t          ddd          t          ddd           k    } | dk    sJ t          ddd           t          ddd          k    } | dk    sJ t          ddd           t          ddd           k    } | dk    sJ d S )Nr   r   r   r   r
   r   r   r   r   r      Fr   )FF)FNr      g@r   g333333?r   r   r   r   r-   s    r   test_interval_inequalityr2   K   s   QNNXa^^+<<<<QNNXa^^+<<<<QNNXb!__,>>>>QNNhq!nn,====QNNhsA...<????QNNhq!nn,====QNNhq#...=@@@@A&&&(2q//9nM M M MQD)))Xb!__<NNNNQNNc!l2222QNNaL0000QNNaM1111QNNXa^^+<<<<QNNXa^^+<<<<QNNXc1----????ROOq \1111ROOq ]2222ROOq \1111ROOq \1111QNNQ<////QNNQ=0000QNNQ<////QNNQ<////QNNQ=0000QNNhq!nn,====QNNhq#...<????QNNhq!nn,>>>>QNNaL0000QNNc!l2222QNNaM1111A<////Q'''(1a$*G*G*GGAQ&&&!Q)G)G)GGAQ&&&!Q)F)F)FFAQ'''(2rD*I*I*IIAQ&&&"b5)I)I)IIAQ&&&"b4)H)H)HHAr   c                     t          dd          t          dd          z  t          dd          k    dk    sJ t          dd          t          dd          z  t          dd          k    } | dk    sJ t          dd          t          d	d
          z  t          d	d          k    } | dk    sJ t          dd
          dz  t          dd          k    dk    sJ d
t          dd          z  t          dd          k    dk    sJ d
t          ddd          z  } | j        du sJ d
t          ddd           z  } | j        J t          ddd          t          ddd           z  } | j        du sJ d S )Nr   r   r   r   2   r
   r   ir   r   r0   r   Fr   r,   r-   s    r   test_interval_mulr5   |   s   A!R(HQOO;M M M MQ(1b//)Xc2->->>AQ(2q//)Xb!__<AQNNQ(1a..0\AAAAQ8B??2|CCCC	HQE****A:	HQD))))A:A&&&!Q)F)F)FFA:r   c                  
   t          ddd          dz  } | t          t          d           t          d          d          k    sJ t          ddd           dz  } | t          t          d           t          d          d           k    sJ dt          ddd           z  } | t          t          d           t          d          d           k    sJ t          dd          dz  }|j        du sJ t          dd          t          d	d          z  }|j        J t          dd          t          dd          z  }|j        J t          d	d          t          d	d          z  }|j        J t          d	d          t          dd          z  t          d
d          k    }|dk    sJ t          dd          t          dd          z  t          dd          k    }|dk    sJ t          d	d          t          dd          z  t          d
d          k    }|dk    sJ t          dd          t          dd          z  t          dd          k    }|dk    sJ t          dd          t          dd          z  t          dd          k    }|dk    sJ t          dd          t          dd          z  t          dd          k    }|dk    sJ t          d	d          t          dd          z  t          d
d          k    }|dk    sJ t          dd          t          dd          z  t          dd          k    }|dk    sJ t          d	d          t          dd          z  t          dd          k    }|dk    sJ t          dd          t          dd          z  t          d
d          k    }|dk    sJ t          d	d          t          dd          z  t          dd          k    }|dk    sJ t          dd          t          dd          z  t          dd          k    }|dk    sJ t          dd          t          dd          z  t          d
d          k    }|dk    sJ t          dd          t          dd          z  t          dd          k    }|dk    sJ t          d	d          t          dd          z  t          dd          k    }|dk    sJ t          dd          t          dd          z  t          dd          k    }|dk    sJ t          ddd          dz  }|j        du sJ d S )Nr   r   Fr   r   r   r   g      ?r   g       g      @r
   g        g       @      g      пg      r          @r+   g       r   g      g      ?g      ?      ?r   r   r&   )divr(   s     r   test_interval_divr;      s|   
1a%
(
(
(1
,C(E%LL=%,,GGGGGGG
1a$
'
'
'!
+C(E%LL=%,,FFFFFFF
hq!d+++
+C(E%LL=%,,FFFFFFFAA:a8B??*A:A!Q'A:Q(2q//)A:Q(3***htS.A.AAAA#q)))Xc3-?-??AQ(3***htS.A.AAAua 0 00HT54I4IIAa8C+++xS/A/AAAa8C+++xS/A/AAATXc1---$1E1EEATXc1---$1E1EEAQ(2t,,,s0C0CCAA"d+++xc/B/BBAQ(2t,,,c0B0BBAuT 2 22huc6J6JJAa8B---$1F1FFAa8B---$1F1FFATXb$///8D#3F3FFATXb$///8D#3F3FFAQ'''!+A:r   c                  ,   t          t          dd                     t          t          ddd                     t          t          dd                     t          t          dd                     t          t          dd                     d	S )
a  
    test that interval objects are hashable.
    this is required in order to be able to put them into the cache, which
    appears to be necessary for plotting in py3k. For details, see:

    https://github.com/sympy/sympy/pull/2101
    https://github.com/sympy/sympy/issues/6533
    r   Tr   r+   r7   r   r9   r8   N)hashr   r   r   r   test_hashabler>      s     	!Q!Q	&	&	&'''"d		"d		$		r   N)sympy.plotting.intervalmathr   sympy.testing.pytestr   r$   r)   r.   r2   r5   r;   r>   r   r   r   <module>rA      s    0 0 0 0 0 0 ' ' ' ' ' '#2 #2 #2L  $  . . .b  ,4 4 4l    r   