
    g+W                        d dl 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 d dlmZmZ d dlmZ d dlmZmZ d dlmZmZmZ d d	l m!Z! d d
l"m#Z#m$Z$m%Z% d dl&m'Z'm(Z( d dl)m*Z* d dl+m,Z, d dl-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4m5Z5  ed          Z6 edd          Z7 edd          Z8 edd          \  Z9Z:d Z;d Z<d Z=d Z>d Z?d Z@e4d              ZAd! ZBd" ZCd# ZDd$ ZEd% ZFd& ZGd'S )(    )AccumBounds)EFloatIRationalnanoopizoo)EqGeGtLeLtNe)S)Symbolsymbols)	factorial)explog)ceilingfloorfrac)sqrt)sincostan)RootOfCRootOf)Integers)Interval)ImageSet)Lambda)	unchanged)XFAILraisesxiT)	imaginaryyrealzk,n)integerc                  (   t          t                    t          u sJ t          t                    t          u sJ t          t                     t           u sJ t          t                    t          u sJ t          d          dk    sJ t          d          dk    sJ t          d          dk    sJ t          t                    dk    sJ t          t                     dk    sJ t          dt          z            dk    sJ t          dt          z            dk    sJ t          t
                    d	k    sJ t          t
                     d
k    sJ t          t          j                  dk    sJ t          t          dd                    dk    sJ t          t          dd	                    dk    sJ t          t          dd	                    dk    sJ t          t          dd	                     dk    sJ t          t          d                    dk    sJ t          t          d                     dk    sJ t          t          d                    dk    sJ t          t          d                     dk    sJ t          t                    t          k    sJ t          t                     t           k    sJ t          t                    } | j        t           u r| j        d         t          k    sJ t          t          t          z            t          t          z  k    sJ t          t           t          z            t           t          z  k    sJ t          t          t          t
          z  dz            t          z            t          t          t
          z  dz            t          z  k    sJ t          dt          z            dt          z  k    sJ t          dt          z            dt          z  k    sJ t          t          dz            dk    sJ t          t           dz            t           k    sJ t          t          dz             dk    sJ t          t
          dz             dk    sJ t          t          t
          z             dk    sJ t          t          t
          z             d	t          z   k    sJ t          t          t
                              d	k    sJ t          t          t                              t          t                    k    sJ t          t          t                               t          t                     k    sJ t#          t           t                     sJ t#          t           dt           z            sJ t#          t           t$          t           z            sJ t          t$                    t$          k    sJ t          dt$          z            dt$          z  k    sJ t          t$          t&          z            t$          t&          z  k    sJ t#          t           t$          dz            sJ t#          t           t           t          z             sJ t          t           d	z             t          t                     d	z   k    sJ t          t           t$          z             t          t                     t$          z   k    sJ t          t          d	z             t          t                    d	z   k    sJ t          t          t$          z             t          t                    t$          z   k    sJ t          d	t          t          z  z   t
          z             dt          t                    t          z  z   k    sJ t          t$          t&          z             t$          t&          z   k    sJ t#          t           t           t          z            sJ t          t$          t          z            t$          t          z  k    sJ t          t          dd          t          t          z  z
            dd	t          z  z
  k    sJ t          t)          d                    dk    sJ t          t)          d                    dk    sJ t          t          d                    dk    sJ t          t+          d          t+          d          z            dk    sJ t-          t          t+          d          t+          d          z                                d                    d	k    sJ t          t1          d          t          d          z            dk    sJ t          t                    t          k     dk    sJ t          t                    t          k    dk    sJ t          t                    t          k    dk    sJ t          t                    t          k    dk    sJ t          t                     t           k    j        sJ t          t                     t           k    j        sJ t          t                     t          k    j        sJ t          t                     t          k    j        sJ t          t                    t          k    dk    sJ t          t                    t          k     dk    sJ t          t                    t           k    dk    sJ t          t                    t           k    dk    sJ t          t                                        t6                    t          t7          t                    z
  k    sJ t          t                                        t8                    t9          t                      k    sJ t          t                                        t6                                        t          t
                     t          t
                     k    sJ t          t                                        t6                                        t          t                    t          t                    k    sJ t          t                                        t8                                        t          t                    t9          t                      k    sJ t          t                                        t8                                        t          t
                     t9          t
                     k    sJ t=          t          t                    t          t7          t                    z
            sJ t=          t          t                    t9          t                                sJ t?          dd          }t?          dd           }t?          d!d"          }t?          d#d$          }t          |          dk     dk    sJ t          |          dk    dk    sJ t          |          dk    dk    sJ t          |          dk    dk    sJ t          |          dk    dk    sJ t          |          dk    |dk    k    sJ t          |          dk     |dk     k    sJ t          |          dk     dk    sJ t          |          dk    dk    sJ t          |          dk     dk    sJ t          |          dk    |dk     k    sJ t          |          dk    |dk    k    sJ t          |          dk    dk    sJ t          |          d	k    |d	k    k    sJ t          |          dk    dk    sJ t          |          dk    dk    sJ t          |          j         dk    sJ t          |          j!        dk    sJ t          |          j         dk    sJ t          |          j!        dk    sJ t          |          j         dk    sJ t          |          j!        dk    sJ t          |          j         J t          |          j!        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%          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          t                     d&k    tE          t          t                     d&d%          k    sJ t          t                     d'k    tG          t          t                     d'd%          k    sJ t          t                     d(k     tI          t          t                     d(d%          k    sJ t          t                     d)k    tK          t          t                     d)d%          k    sJ t          t                    d&k    t          dk     k    sJ t          t                    d'k    t          dk    k    sJ t          t                    d(k     t          d	k     k    sJ t          t                    d)k    t          dk    k    sJ t          t                    t&          k    t          t&          dz   k     k    sJ t          t                    t&          k    t          t&          k    k    sJ t          t                    t&          k     t          t&          k     k    sJ t          t                    t&          k    t          t&          dz   k    k    sJ t          tM          t           d	z  d*t           z  z
  d                    dk    sJ d S )+Nr            i            1@   (\@i            
      Tchop2   l   '~$DA7YD3':^Xf Fnegnegativennnonnegativepospositivenpnonpositiveevaluate      @皙	333333@333333   )'r   r   r	   r   r   r
   r   Halfr   r   r   r)   funcargsr   r+   r(   r%   knr   r   intevalfr   is_Relationalrewriter   r   subsr   r   is_negativeis_nonnegativer   r   r   r   r   )erG   rJ   rM   rP   s        j/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/functions/elementary/tests/test_integers.py
test_floorrh      s   ::99????"::"::88q====88q====99????88q====!99????1::????A;;"99>>>>"::==A"a!!R''''!Q  A%%%%"a!!R''''(1a..!!R''''t####%++#%%%%t""""%++"$$$$88q====!99????aA6U??qvayA~~~~A;;"Q$"Q<<B3q5    QrT!VR  C"QKKN22221::1A;;"Q$1::????!A;;1"R==Ba==AR==AR==AE!!!!rq    q??eAhh&&&&q??eAhh&&&&UAUAaC     UAaC     88q====1::11::1UAaC     UAE"""""Q<<588a<''''Q<<588a<''''Q<<588a<''''Q<<588a<''''QqS2!eAhhqj.0000Q<<1q5    UAaC     1::1"b!!AaC'((A!G3333Q==AR>>RQ==AQA1$$$$uSVVCFF]##))t)4455::::2s1vv%&&IJ J J J !HHqLU""""!HHMd""""!HHqLU""""!HHMe####!HHM((((!HHqL''''!HHM((((!HHqL''''!HHNt####!HHrMd""""!HHO$$$$!HHsNt####88D!!Qa[000088G$$!444488D!!&&q2#..%**<<<<88D!!&&q!,,a888888G$$))!Q//GQBKK<????88G$$))!bS11gbkk\AAAAeAhhDGG$$$$$eAhh!%%%%%

&
&
&C	$	'	'	'B

&
&
&C	$	'	'	'B#JJNt#####JJ!O$$$$#JJNu$$$$#JJ!O%%%%#JJ"%%%%#JJ"#),,,,#JJNa(((("IIMe####"IINt#####JJNu$$$$#JJ!Oq))))#JJNq))))#JJ!O$$$$#JJ!O****"IINt####"IIMe####::!T))))::$----99 E))))99#t++++::!U****::$,,,,99 (((99#+++!e$$$)d2222!e$$$q(U2222!e$$$)d2222!e$$$q(U2222!e$$$)d2222!e$$$q(T1111!e$$$)e3333!e$$$q(U2222!e$$$)e3333!e$$$q(U2222!e$$$)d2222!e$$$q(T1111!HHO588S5 A A AAAAA!HHE!HHdU!C!C!CCCCC!HHsNr%((C%@@@@@@@!HHtO588TE B B BBBBB!HHOQ''''!HH!r'****!HHsNA&&&&!HHtOb))))!HHMq1q5y))))!HHMqAv&&&&!HHqLa!e$$$$!HHqLa1q5j))))1r!tQ''((A------    c                  >+   t          t                    t          u sJ t          t                    t          u sJ t          t                     t           u sJ t          t                    t          u sJ t          d          dk    sJ t          d          dk    sJ t          d          dk    sJ t          t                    dk    sJ t          t                     dk    sJ t          dt          z            dk    sJ t          dt          z            dk    sJ t          t
                    d	k    sJ t          t
                     d
k    sJ t          t          j                  dk    sJ t          t          dd                    dk    sJ t          t          dd                    dk    sJ t          t          dd                     dk    sJ t          t          d                    dk    sJ t          t          d                     dk    sJ t          t          d                    dk    sJ t          t          d                     dk    sJ t          t                    t          k    sJ t          t                     t           k    sJ t          t                    } | j        t           u r| j        d         t          k    sJ t          t          t          z            t          t          z  k    sJ t          t           t          z            t           t          z  k    sJ t          t          t          t
          z  d	z            t          z            t          t          t
          z  d	z            t          z  k    sJ t          dt          z            dt          z  k    sJ t          dt          z            dt          z  k    sJ t          t          dz            t          k    sJ t          t           dz            dk    sJ t          t          dz             dk    sJ t          t
          dz             dk    sJ t          t          t
          z             dk    sJ t          t          t
          z             t          d	z   k    sJ t          t          t
                              d	k    sJ t          t          t                              t          t                    k    sJ t          t          t                               t          t                     k    sJ t#          t           t                     sJ t#          t           dt           z            sJ t#          t           t$          t           z            sJ t          t$                    t$          k    sJ t          dt$          z            dt$          z  k    sJ t          t$          t&          z            t$          t&          z  k    sJ t#          t           t$          dz            sJ t#          t           t           t          z             sJ t          t           dz             t          t                     dz   k    sJ t          t           dz             t          t                     dz   k    sJ t          t           dt          z  z             t          t                     dt          z  z   k    sJ t          t           t$          z             t          t                     t$          z   k    sJ t          t          dz             t          t                    dz   k    sJ t          t          t$          z             t          t                    t$          z   k    sJ t          dt
          z   t          t          z  z             dt          t                    t          z  z   k    sJ t          t$          t&          z             t$          t&          z   k    sJ t#          t           t           t          z            sJ t          t$          t          z            t$          t          z  k    sJ t          t          dd          t          t          z  z
            ddt          z  z
  k    sJ t          t)          d                    dk    sJ t          t)          d                    dk    sJ t          t          d                    dk    sJ t          t+          d           t+          d          z            dk    sJ t-          t          t+          d           t+          d          z                                d                    d
k    sJ t          t1          d          t          d          z            dk    sJ t          t                    t          k    dk    sJ t          t                    t          k    dk    sJ t          t                    t          k     dk    sJ t          t                    t          k    dk    sJ t          t                     t           k    j        sJ t          t                     t           k     j        sJ t          t                     t          k    j        sJ t          t                     t          k     j        sJ t          t                    t           k    dk    sJ t          t                    t           k    dk    sJ t          t                    t          k    dk    sJ t          t                    t          k     dk    sJ t          t                                        t6                    t7          t                      k    sJ t          t                                        t8                    t          t9          t                     z   k    sJ t          t                                        t6                                        t          t
                     t7          t
                     k    sJ t          t                                        t6                                        t          t                    t7          t                      k    sJ t          t                                        t8                                        t          t
                    t          t
                    k    sJ t          t                                        t8                                        t          t                     t          t                     k    sJ t=          t          t                    t          t9          t                     z             sJ t=          t          t                    t7          t                                sJ t?          dd          }t?          dd          }t?          dd           }t?          d!d"          }t          |          dk    dk    sJ t          |          dk     |dk    k    sJ t          |          dk    dk    sJ t          |          dk    |dk    k    sJ t          |          d
k    |d
k    k    sJ t          |          dk    |dk    k    sJ t          |          dk     dk    sJ t          |          dk    dk    sJ t          |          dk     dk    sJ t          |          dk    dk    sJ t          |          dk    dk    sJ t          |          dk    dk    sJ t          |          dk    dk    sJ t          |          d#k    |d#k    k    sJ t          |          dk    dk    sJ t          |          dk    dk    sJ t          |          j         dk    sJ t          |          j!        dk    sJ t          |          j         J t          |          j!        J t          |          j         dk    sJ t          |          j!        dk    sJ t          |          j         dk    sJ t          |          j!        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$          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          t                     d%k    tE          t          t                     d%d$          k    sJ t          t                     d&k    tG          t          t                     d&d$          k    sJ t          t                     d'k     tI          t          t                     d'd$          k    sJ t          t                     d(k    tK          t          t                     d(d$          k    sJ t          t                    d%k    t          d#k    k    sJ t          t                    d&k    t          d)k    k    sJ t          t                    d'k     t          dk    k    sJ t          t                    d(k    t          dk    k    sJ t          t                    t&          k    t          t&          k    k    sJ t          t                    t&          k    t          t&          dz
  k    k    sJ t          t                    t&          k     t          t&          dz
  k    k    sJ t          t                    t&          k    t          t&          k    k    sJ t          tM          t           dz  d*t           z  z
  d                    dk    sJ tO          tQ          t&          t&          tS          t           d#z  t           dz  z
  dz   d          z             tT                    }tS          t           d#z  t           dz  z
  dz   d          tO          tQ          t&          t&          z             tT                    }|+                    tY          d+d                    fd,t[          d-d.          D             k    sJ d S )/Nr   r0   r1   r6   r5   r2   r@   r>   r3   r8   r:   r;   r<   r=   rC   r9      g      @rA   rB   TrD   rF   l   '~$DA7YD3':^Xf FrG   rH   rJ   rK   rM   rN   rP   rQ   r4   rS   rU   rV   rW   rX   r7   rY   ic                     h | ]}|z   S  rn   ).0r)   fs     rg   	<setcomp>ztest_ceiling.<locals>.<setcomp>  s    -K-K-Ka!e-K-K-Kri   i   ).r   r   r	   r   r   r
   r   rZ   r   r   r   r)   r[   r\   r   r+   r(   r%   r]   r^   r   r   r_   r`   r   ra   rb   r   r   rc   r   r   is_positiveis_nonpositiver   r   r   r   r   r#   r$   r    r!   	intersectr"   range)rf   rG   rJ   rM   rP   srp   s         @rg   test_ceilingrx      s   3<<32;;"B3<<B33<<31::????1::????2;;"1::????A2;;"1Q3<<12a4==B2;;!B3<<216??a8B??##q((((8Aq>>""a''''HQNN?##r))))5;;2%%%%E$KK<  C''''5;;1$$$$E$KK<  B&&&&1::????A2;;1"

A6Wa2a4==BqD    B3q5>>bSU""""3qtAv;;r>""c!B$q&kk"n44441Q3<<1Q32a4==BqD    1Q3<<1A2a4==A1r6??b    26??a1r6??a1r6??a!e####72;;1$$$$71::'!**,,,,71::'!**,,,,Wa     Wac"""""Wac"""""1::????1Q3<<1Q31Q3<<1Q3Wac"""""Wa!e$$$$$1q5>>WQZZ!^++++1s7wqzzA~----1s1u9ac!111111q5>>WQZZ!^++++1q5>>WQZZ!^++++1q5>>WQZZ!^++++1r6AaC<  A

1$444441q5>>QU""""Wac"""""1Q3<<1Q38B##ac)**a!A#g55553q66??a3r77q    3q66??aCFF73q66>""b((((wAws1vv~&&,,$,7788B>>>>9R==Q'((IJ J J J AJJ!O$$$$AJJNu$$$$AJJNu$$$$AJJ!O%%%%AJJ!O****AJJN))))AJJ!O****AJJN))))AJJ2#$&&&&AJJ"%%%%AJJ"%%%%AJJO$$$$1::e$$r
22221::d##q488|33331::e$$))!bS11eBiiZ????1::e$$))!Q//E1"II:====1::d##((B//72;;>>>>1::d##((QB//7A2;;>>>>gajj!dA2hh,'''''gajj5!99*%%%%%

&
&
&C	$	'	'	'B

&
&
&C	$	'	'	'BCLLA$&&&&CLL1#),,,,CLL1&&&&CLLA38,,,,CLL238,,,,CLLBC2I....BKK!O%%%%BKK1%%%%CLL1&&&&CLLA%''''CLL1%%%%CLLA$&&&&CLLA$&&&&CLL1#'****BKK1%%%%BKK!O%%%%3<<#u,,,,3<<&$....2;;"***2;;%---3<<#t++++3<<&%////2;;"e++++2;;%----A&&&!+4444A&&&*u4444A&&&!+4444A&&&*u4444A&&&!+4444A&&&*t3333A&&&!+5555A&&&*u4444A&&&!+5555A&&&*u4444A&&&!+4444A&&&*t3333AJJ#"WQZZu"E"E"EEEEEAJJ$2gajj$#G#G#GGGGGAJJGAJJe!D!D!DDDDDAJJ"WQZZ"F"F"FFFFFAJJ#16****AJJ$AF++++AJJ!q&))))AJJ1r6****AJJ!Oa((((AJJ!OQU++++AJJNQU
++++AJJNA&&&&6!Q$A+q))**a////11q!ta ; ;<==xHHA1q!ta##A1q5!!8,,A;;xR(())-K-K-K-KU2r]]-K-K-KKKKKKKri   c                  $   t          t          t                    t                    sJ t          t                    t	          dd          k    sJ t          t                     t	          dd          k    sJ t          t
                    t          u sJ t          t                    dk    sJ t          t                    t          u sJ t          t          dd                    t          dd          k    sJ t          t          dd                     t          dd          k    sJ t          t          dd                    t          dd          k    sJ t          dd	          } t          t          | z            t          t          |           z  k    sJ t          dt          | z  z             t          t          |           z  k    sJ t          d
t          | z  z             d
t          t          |           z  z   k    sJ t          t          t          | z  z             t          t          |           z  k    sJ t          t          t          t          z  z             dk    sJ t          t          t          t          t          z  z             sJ t          t          t          t          z  z             t          t                    k    sJ t          t                                        t                    t          t          t                    z
  k    sJ t          t                                        t                    t          t          t                     z   k    sJ t          t                                         t                                        t           t$                    t          t$                    k    sJ t          t                                         t                                        t           t&                     t          t&                     k    sJ t          t                                         t                                        t           t$                     t          t$                     k    sJ t          t                                         t                                        t           t&                    t          t&                    k    sJ t)          t          t                     t           t          t                     z
            sJ t)          t          t                     t           t          t                      z             sJ t          dd	          } t          ddd          }t          ddd          }t          ddd          }t          ddd          }t          dd          }t          dd          }t          ddd          }t          ddd          }t          |           |k    sJ t          |           |k    rJ t          |           |k                        t,                    sJ t          |           |k                        t,                    sJ t          |           |k     sJ t          |           |k     rJ t          |           |k     rJ t          |           |k                         t.                    sJ t          |           |k    rJ t          |           |k    sJ t          |           |k    sJ t          |           |k                        t0                    sJ t          |           |k    rJ t          |           |k    sJ t          |           |k                        t2                    sJ t          |           |k                        t2                    sJ t)          t          |           |          rJ t)          t          |           |          rJ t)          t          |           |                              t(                    sJ t)          t          |           |                              t(                    sJ t5          t          |           |          sJ t5          t          |           |          sJ t5          t          |           |                              t4                    sJ t5          t          |           |                              t4                    sJ t          |           |k                        t,                    sJ t          |           |k    rJ t          |           |k                        t,                    sJ t          |           |k                        t,                    sJ t          |           |k                         t.                    sJ t          |           |k     rJ t          |           |k     rJ t          |           |k                         t.                    sJ t          |           |k                        t0                    sJ t          |           |k    sJ t          |           |k    sJ t          |           |k                        t0                    sJ t          |           |k                        t2                    sJ t          |           |k    sJ t          |           |k                        t2                    sJ t          |           |k                        t2                    sJ t)          t          |           |          rJ t)          t          |           |                              t(                    sJ t)          t          |           |                              t(                    sJ t)          t          |           |                              t(                    sJ t5          t          |           |                              t4                    sJ t5          t          |           |          sJ t5          t          |           |                              t4                    sJ t5          t          |           |                              t4                    sJ t          |           t          k     sJ t          |           t          k    sJ t          |           t          k    rJ t          |           t          k    rJ t          |           t           k     rJ t          |           t           k    rJ t          |           t           k    sJ t          |           t           k    sJ t          |           dk     sJ t          |           dk    sJ t          |           dk    rJ t          |           dk    rJ t          |           dk     rJ t          |           dk                        t,                    sJ t          |           dk                        t2                    sJ t          |           dk    sJ t          |           t7          d          k    sJ t          |           t7          d          t7          d          z
  k                        t,                    sJ t          |           t7          d          t7          d          z
  k    rJ t          |           t7          d          k    rJ t          |           t7          d          t7          d          z
  k                        t0                    sJ t          |           t7          d          t7          d          z
  k    sJ t)          t          |           t7          d                    rJ t)          t          |           t7          d          t7          d          z
                                t(                    sJ t)          t          |           t7          d          t7          d          z
            rJ t5          t          |           t7          d                    sJ t5          t          |           t7          d          t7          d          z
                                t4                    sJ t5          t          |           t7          d          t7          d          z
            sJ t          |d          j        sJ t          |d          j        sJ t          |d          j        sJ t          |d          j        sJ t          |           j        sJ t          |           j        sJ t          |           j        J t          |           j        J t          t                    j        sJ t          t                    j        sJ d S )Nr   r0   r>   r6   r2   r7   rTr,   g      ?p_i)r.   rO   )r.   rI   np_i)r.   rR   nn_i)r.   rL   p_rrN   n_rrH   np_r)r-   rR   nn_r)r-   rL   FrS   ) 
isinstancer   r(   r	   r   r   r   r^   r   r   r   r]   r%   rb   r   r   r+   rc   r
   r   r   hasr   r   r   r   r   r   is_zero	is_finite
is_integeris_real)	rz   r{   n_ir|   r}   r~   r   r   r   s	            rg   	test_fracr     s   d1ggt$$$$$88{1a((((((99Aq))))))9977a<<<<99A8Aq>>1111!Q  HQNN2222Q  HQNN2222sA!99$q''	!!!!AaC==Ad1ggI%%%%ac	??cAd1ggIo----AaC==Ad1ggI%%%%AaC==AT1qs7#####AaC==DGG####77??5!!Qq\111177??7##q7A2;;666677??5!!&&q"--b999977??5!!&&q1"--qb999977??7##((RC00D"II====77??7##((A..$q''9999d1ggq588|$$$$$d1ggq7A2;;'''''sA
t
4
4
4C
t
4
4
4C&$D999D&$D999D

&
&
&C

&
&
&C&t666D&t666D 77c>>>>Aww#~~~~GGtO  $$$$$GGtO  $$$$$77S====Aww}}}}Aww~~~~GGdN#####Aww#~~~~77c>>>>77d????GGtO  $$$$$Aww}}}}77S====GGdN#####GGdN#####$q''3$q''3d1ggt  $$$$$d1ggt  $$$$$d1ggsd1ggsd1ggt  $$$$$d1ggt  $$$$$ GGsN#####Aww#~~~~GGtO  $$$$$GGtO  $$$$$GGcMr"""""Aww}}}}Aww~~~~GGdN#####GGsN#####77c>>>>77d????GGtO  $$$$$GGcMr"""""77S====GGdN#####GGdN#####$q''3d1ggs#####d1ggt  $$$$$d1ggt  $$$$$d1ggs#####d1ggsd1ggt  $$$$$d1ggt  $$$$$ 77R<<<<77b====Aww||||Aww"}}}}Aww"}}}}Aww2#~~~~77bS====77rc>>>>77Q;;;;77a<<<<Aww{{{{Aww!||||Aww{{{{GGqLb!!!!!GGaKR     77a<<<< 77d1ggGGtAwwa((--b11111Aww$q''DGG+++++Aww$q''!!!!GGtAwwa((--b1111177d1ggQ'''''$q''477#####d1ggtAwwa())--b11111$q''477T!WW,-----d1ggtAwwd1ggtAwwa())--b11111d1ggtAwwa()))))e$$$,,,,e$$$....e$$$////e$$$,,,,7777?77?"""77%%%8888ri   c                     t          d          \  } }t          |                               | |d          t          |          k    sJ t          |                               | |d          t          |          k    sJ t          |                               | t          d          dk    sJ t          |                               | t          d          dk    sJ t          |                               | dd          dk    sJ t          |                               | dd          dk    sJ t          |                                | dd          dk    sJ t          |                                | dd          dk    sJ d S )Nzx,yd   r6   r>   r   r0   r1   )r   r   nseriesr   r
   )r(   r+   s     rg   test_seriesr   *  so   5>>DAq88Aq#&&%((22221::aC((GAJJ666688Ar3''1,,,,1::aS))Q....88Aq#&&!++++1::aC((A----!99Q3''2----A2;;q!S))Q......ri   c                     t          t          dz  t          z   t          dz  t          z
  z                                t          d          dk    sJ t          t          dz  t          z   t          dz  t          z
  z                                t          d          dk    sJ t          t          t                    dz
  t          z                                t          d          dk    sJ t          t          t                    dz
  t          z                                t          d          dk    sJ t          t	          t                    t          z                                t          d          dk    sJ t          t	          t                    t          z                                t          d          dk    sJ t          t          t                     t          z                                t          d          dk    sJ t          t          t                     t          z                                t          d          dk    sJ t          t	          t                    t          z  dz                                t          d          dk    sJ t          t	          t                    t          z  dz                                t          d          dk    sJ t          t          dz  t          z   t          dz  t          z
  z                                t          d          dk    sJ t          t          dz  t          z   t          dz  t          z
  z                                t          d          dk    sJ t          t          t                    dz
  t          z                                t          d          dk    sJ t          t          t                    dz
  t          z                                t          d          dk    sJ t          t	          t                    t          z                                t          d          dk    sJ t          t	          t                    t          z                                t          d          dk    sJ t          t          t                     t          z                                t          d          dk    sJ t          t          t                     t          z                                t          d          dk    sJ t          t	          t                    t          z  dz                                t          d          dk    sJ t          t	          t                    t          z  dz                                t          d          dk    sJ t          t	          t                    t          z                                t          ddd          dk    sJ t          t	          t                    t          z                                t          ddd          dk    sJ t          t          dz  t          z   t          dz  t          z
  z                                t          ddd          dk    sJ t          t          dz  t          z   t          dz  t          z
  z                                t          ddd          dk    sJ t          t	          t                    t          z                                t          ddd          dk    sJ t          t	          t                    t          z                                t          ddd          dk    sJ t          t          dz  t          z   t          dz  t          z
  z                                t          ddd          dk    sJ t          t          dz  t          z   t          dz  t          z
  z                                t          ddd          dk    sJ d S )	Nr6   r2   r0   cdirr5   r1   r   r   )r   r(   as_leading_termr   r   r   r   seriesrn   ri   rg   test_issue_14355r   6  s    !Q$(QTAX&''77!7DDJJJJ!Q$(QTAX&''77"7EEKKKK#a&&1*a  0010==CCCC#a&&1*a  0020>>!CCCCQ??**1Q*771<<<<Q??**1R*88A====#a&&++Aa+88B>>>>#a&&++Ab+99R????Q!,,Qq,99Q>>>>Q!,,Qr,::a????AqD1Hq!tax())99!A9FF"LLLLAqD1Hq!tax())99!B9GG1LLLLCFFQJ>""221Q2??1DDDDCFFQJ>""221R2@@AEEEE3q66!8,,Qq,99Q>>>>3q66!8,,Qr,::a????CFF719--a-::b@@@@CFF719--a-::b@@@@3q66!8A:..q.;;q@@@@3q66!8A:..q.<<AAAAQ??!!!QA!66!;;;;Q??!!!QA!66!;;;;!Q$(QTAX&''..q!S.CCrIIII!Q$(QTAX&''..q!S.DDJJJJ3q66!8##Aq#a#88A====3q66!8##Aq#b#99Q>>>>AqD1Hq!tax())00As10EEKKKKAqD1Hq!tax())00As20FF!KKKKKKri   c                     t          t                                        t                    t          k    sJ t          t                                        t          d          t          k    sJ t          t                                        t          d          dk    sJ t          t          t          j        z                                 t          d          t          j        k    sJ t          t          t          j        z                                 t          d          t          j        k    sJ t          dt          z  dz                                 t          d          t          j        k    sJ t          dt          z  dz                                 t          d          dt          z  k    sJ t          t          t                    dz                                 t          d          t          k    sJ t          t          t                    dz                                 t          d          t          j        k    sJ t          t          t          dz            dz                                 t          d          t          dz  k    sJ t          t          t          dz            dz                                 t          d          t          dz  k    sJ d S )Nr0   r   r1   r5   r4   r2   )r   r(   r   r   rZ   Oner   rn   ri   rg   test_frac_leading_termr   X  s=   77""1%%****77""1Q"//1444477""1R"00A5555AF
++Aa+88AFBBBBAF
++Ab+99QVCCCC1q>>))!A)66!%????1q>>))!B)772a4????A
++Aa+88A====A
++Ab+99QUBBBBAqD		A..q.;;q!tCCCCAqD		A..q.<<1DDDDDDri   c                  B   t          dt          t          z  z   t          t          z  z             dt          t          t          z             t          z  z   k    sJ t          dt          z  t          t          z  z   t          t          z  z             t          dt          z   t          z             t          z  k    sJ t          dt          z   t          t          z  z   t          t          z  z             dt          t          t          z             t          z  z   k    sJ d S )Nr6   r4   )r   r
   r   r+   r   rn   ri   rg   test_issue_4149r   f  s    RTAaC  Ab1fa$777771r!tac!""eAFQJ&7&7&99999QA!#$$E"q&MM!O(;;;;;;;ri   c                      t          ddd          } dd|  z  z  }t          t          |          t                    sJ d S )Nr]   T)rO   r.   r2   )r   r   r   )r]   r   s     rg   test_issue_21651r   m  sG    sT4000A
AG)CeCjj%(((((((ri   c                     t          t          t                              t          t                    k    sJ t          t          t                              t          t                    k    sJ t          t          t                              t          t                    k    sJ t          t          t                              t          t                    k    sJ d S )Nr   r(   r   rn   ri   rg   test_issue_11207r   s  s    q??eAhh&&&&

****588a((((71::'!**,,,,,,ri   c                  p   t          t          t          t          dz            t          z                       t          t          t          dz            t          z             k    sJ t          t          t          t          dz            t          z                       t          t          t          dz            t          z             k    sJ t          t          t          t          t	          dd          z  t          z                                 t          t          t	          dd          z  t          z             k    sJ t          t          t          t                    t          z                        t          t          t                    t          z            k    sJ d S )Nr6   r8   r2   )r   r   r(   r+   r   rn   ri   rg   test_nested_floor_ceilingr   z  s>   %1a((())eGAqDMM!O.D.D-DDDDDE'!Q$--/***++gadmmAo0F0F/FFFFF%8Aq>> 1! 344455665HQPQNNARSTAT;U;U:UUUUUWU1XXaZ((()))WU1XXaZ-@-@@@@@@@ri   c                     t          t          t          t                              dz             t          t                    dz   k    sJ t          t          t          t                              dz             t          t                    dz   k    sJ t          t          t          t                              dz             t          t                    dz   k    sJ d S )Nr6   r0   r   rn   ri   rg   test_issue_18689r     s    uQxx1$%%qA5555771::&&*++wqzzA~====7588$$q())U1XX\999999ri   c                      t          t          d                    t          j        u sJ t	          t          d                    t          j        u sJ d S )Nr   )r   floatr   Zeror   rn   ri   rg   test_issue_18421r     sH    q??af$$$$588&&&&&&ri   c                  >   t          dd          t          dd          } t          dd          }t          t          fd           t          t          fd	           t          t          | z                                t          d
          dk    sJ t          t          | z                                t          d          dk    sJ t          t          |z                                t          d
          dk    sJ t          t          |z                                t          d          dk    sJ t          t          | z                                t          d
          d
k    sJ t          t          | z                                t          d          dk    sJ t          t          |z                                t          d
          dk    sJ t          t          |z                                t          d          d
k    sJ d S )NaTr,   brN   crH   c                  f    t          t           z                                t          d          S Nr0   r   )r   r(   r   r   s   rg   <lambda>z"test_issue_25230.<locals>.<lambda>  s$    ac

(B(B1Q(B(O(O ri   c                  f    t          t           z                                t          d          S r   )r   r(   r   r   s   rg   r   z"test_issue_25230.<locals>.<lambda>  s$    !(D(DQq(D(Q(Q ri   r0   r   r   r1   )r   r'   NotImplementedErrorr   r(   r   r   )r   r   r   s     @rg   test_issue_25230r     s   s4   Ast$$$Ast$$$A
 O O O OPPP
 Q Q Q QRRR1::%%a%22a77771::%%a%33r99991::%%a%22b88881::%%a%33q88881Q3<<''!'4499991Q3<<''"'55::::1Q3<<''!'4499991Q3<<''"'55::::::ri   N)H!sympy.calculus.accumulationboundsr   sympy.core.numbersr   r   r   r   r   r	   r
   r   sympy.core.relationalr   r   r   r   r   r   sympy.core.singletonr   sympy.core.symbolr   r   (sympy.functions.combinatorial.factorialsr   &sympy.functions.elementary.exponentialr   r   #sympy.functions.elementary.integersr   r   r   (sympy.functions.elementary.miscellaneousr   (sympy.functions.elementary.trigonometricr   r   r   sympy.polys.rootoftoolsr   r    sympyr!   sympy.sets.setsr"   sympy.sets.fancysetsr#   sympy.core.functionr$   sympy.core.exprr%   sympy.testing.pytestr&   r'   r(   r)   r+   r]   r^   rh   rx   r   r   r   r   r   r   r   r   r   r   r   rn   ri   rg   <module>r      s   9 9 9 9 9 9 H H H H H H H H H H H H H H H H H H H H : : : : : : : : : : : : : : : : " " " " " " / / / / / / / / > > > > > > = = = = = = = = F F F F F F F F F F 9 9 9 9 9 9 B B B B B B B B B B 3 3 3 3 3 3 3 3       $ $ $ $ $ $ ) ) ) ) ) ) & & & & & & % % % % % % . . . . . . . .
F3KK
F3$
F3Twud###1y. y. y.x~L ~L ~LBP P Pf	/ 	/ 	/L L LDE E E < < <) ) )- - -A A A: : :
' ' '; ; ; ; ;ri   