
    QiZ                     (   d dl mZ d dlmZ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&m'Z' d dl(m)Z)m*Z* d dl+m,Z, d dl-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4 d dl5m6Z6m7Z7  ed          Z8 edd          Z9 edd          Z: edd          \  Z;Z< eddd          Z= edd          Z>d Z?d Z@d  ZAd! ZBd" ZCd# ZDe6d$             ZEd% ZFd& ZGd' ZHd( ZId) ZJd* ZKd+S ),    )AccumBounds)	EFloatIRationalIntegernanoopizoo)EqGeGtLeLtNe)S)Symbolsymbols)	factorial)explog)ceilingfloorfrac)sqrt)sincostanasin)RootOfCRootOf)Integers)Interval)ImageSet)Lambda)	unchanged)XFAILraisesxiT)	imaginaryyrealzk,n)integerb)r/   
nonintegermpositivec                  ,   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          t          t          d          t          t          d                    z            z            dk    sJ t          t           t          t          d          t          t          d                    z            z            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          dt          dz   z            t          j        k    sJ t          t          dz   t          dz   z            t          j        k    sJ t          dt          dz   z            t          j        k    sJ t          t          dz   t           dz
  z            t%          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          t0                              t          t0                    k    sJ t3          t           t0                    sJ t3          t           dt0          z            sJ t3          t           t4          t0          z            sJ t          t4                    t4          k    sJ t          dt4          z            dt4          z  k    sJ t          t4          t6          z            t4          t6          z  k    sJ t3          t           t4          dz            sJ t3          t           t0          t.          z             sJ t          t0          d
z             t          t0                    d
z   k    sJ t          t0          t4          z             t          t0                    t4          z   k    sJ t          t.          d
z             t          t.                    d
z   k    sJ t          t.          t4          z             t          t.                    t4          z   k    sJ t          d
t          t.          z  z   t          z             dt          t.                    t          z  z   k    sJ t          t4          t6          z             t4          t6          z   k    sJ t3          t           t0          t          z            sJ t          t4          t          z            t4          t          z  k    sJ t          t          dd          t          t          z  z
            dd
t          z  z
  k    sJ t          t9          d                    dk    sJ t          t9          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          t?          d          t-          d          z            dk    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    j         sJ t          t0                    t0          k    j         sJ t          t0                    t0          k    j         sJ t          t0                    t.          k    j         sJ t          t0                    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          tB                    tB          k     dk    sJ t          tB                    tB          k    dk    sJ t          tB                    tB          k    dk    sJ t          tB                    tB          k    dk    sJ t          t.                    "                    tF                    t.          tG          t.                    z
  k    sJ t          t.                    "                    tH                    tI          t.                      k    sJ t          t.                    "                    tF                    %                    t.          t                     t          t                     k    sJ t          t.                    "                    tF                    %                    t.          t                    t          t                    k    sJ t          t.                    "                    tH                    %                    t.          t                    tI          t                      k    sJ t          t.                    "                    tH                    %                    t.          t                     tI          t                     k    sJ tM          t          t.                    t.          tG          t.                    z
            sJ tM          t          t.                    tI          t.                                sJ tO          dd          }tO          dd           }tO          d!d"          }tO          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          t0                    d&k    tU          t          t0                    d&d%          k    sJ t          t0                    d'k    tW          t          t0                    d'd%          k    sJ t          t0                    d(k     tY          t          t0                    d(d%          k    sJ t          t0                    d)k    t[          t          t0                    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.                    t6          k    t.          t6          dz   k     k    sJ t          t.                    t6          k    t.          t6          k    k    sJ t          t.                    t6          k     t.          t6          k     k    sJ t          t.                    t6          k    t.          t6          dz   k    k    sJ t          t]          t0          d
z  d*t0          z  z
  d                    dk    sJ d S )+Nr               i         1@   (\@i            
      Tchop2   l   '~$DA7YD3':^Xf Fnegnegativennnonnegativeposr4   npnonpositiveevaluate      @皙	333333@333333   )/r   r	   r
   r   r   r   r    absr   r   r   Halfr   r   r3   ZeroOneNegativeOner   r+   funcargsr   r-   r*   r'   knr   intevalfr   is_Relationalr1   rewriter   r   subsr   r   is_negativeis_nonnegativer   r   r   r   r!   )erN   rQ   rT   rU   s        /var/www/development/aibuddy-work/election-extract/venv/lib/python3.11/site-packages/sympy/functions/elementary/tests/test_integers.py
test_floorrq      s>   ::99????"::"::88q====88q====99????3tAwws477||+,,,--2222!CQDGG,---.."444488q====!99????1::????A;;"99>>>>"::==A"a!!R''''!Q  A%%%%"a!!R''''(1a..!!R''''t####%++#%%%%t""""%++"$$$$AaC>>QV####!A#!&&&&QqS??am++++!A#1'"++----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 !HHqL''''!HHMd""""!HHqLU""""!HHM((((!HHM((((!HHqL''''!HHM((((!HHqL''''!HHNt####!HHrMd""""!HHO$$$$!HHsNt####!HHqLT!!!!!HHMd""""!HHqLU""""!HHMe####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          t          t          d          t          t          d                    z            z            dk    sJ t          t           t          t          d          t          t          d                    z            z            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          dt          dz   z            t          j        k    sJ t          t          dz   t          dz   z            t!          d          k    sJ t          dt          dz   z            t          j        k    sJ t          t          dz   t           dz
  z            t          j        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          t0                              t          t0                    k    sJ t3          t           t0                    sJ t3          t           dt0          z            sJ t3          t           t4          t0          z            sJ t          t4                    t4          k    sJ t          dt4          z            dt4          z  k    sJ t          t4          t6          z            t4          t6          z  k    sJ t3          t           t4          dz            sJ t3          t           t0          t.          z             sJ t          t0          dz             t          t0                    dz   k    sJ t          t0          dz             t          t0                    dz   k    sJ t          t0          dt          z  z             t          t0                    dt          z  z   k    sJ t          t0          t4          z             t          t0                    t4          z   k    sJ t          t.          dz             t          t.                    dz   k    sJ t          t.          t4          z             t          t.                    t4          z   k    sJ t          dt          z   t.          t          z  z             dt          t.                    t          z  z   k    sJ t          t4          t6          z             t4          t6          z   k    sJ t3          t           t0          t          z            sJ t          t4          t          z            t4          t          z  k    sJ t          t          dd          t          t          z  z
            ddt          z  z
  k    sJ t          t9          d                    dk    sJ t          t9          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          t?          d          t-          d          z            dk    sJ t          t.                    t.          k    dk    sJ t          t.                    t.          k    j         sJ t          t.                    t.          k     dk    sJ t          t.                    t.          k    j         sJ t          t0                    t0          k    j         sJ t          t0                    t0          k     j         sJ t          t0                    t.          k    j         sJ t          t0                    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          tB                    tB          k     dk    sJ t          tB                    tB          k    dk    sJ t          tB                    tB          k    dk    sJ t          tB                    tB          k    dk    sJ t          t.                    "                    tF                    tG          t.                      k    sJ t          t.                    "                    tH                    t.          tI          t.                     z   k    sJ t          t.                    "                    tF                    %                    t.          t                     tG          t                     k    sJ t          t.                    "                    tF                    %                    t.          t                    tG          t                      k    sJ t          t.                    "                    tH                    %                    t.          t                    t          t                    k    sJ t          t.                    "                    tH                    %                    t.          t                     t          t                     k    sJ tM          t          t.                    t.          tI          t.                     z             sJ tM          t          t.                    tG          t.                                sJ tO          dd          }tO          dd          }tO          d d!          }tO          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          t0                    d%k    tU          t          t0                    d%d$          k    sJ t          t0                    d&k    tW          t          t0                    d&d$          k    sJ t          t0                    d'k     tY          t          t0                    d'd$          k    sJ t          t0                    d(k    t[          t          t0                    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.                    t6          k    t.          t6          k    k    sJ t          t.                    t6          k    t.          t6          dz
  k    k    sJ t          t.                    t6          k     t.          t6          dz
  k    k    sJ t          t.                    t6          k    t.          t6          k    k    sJ t          t]          t0          dz  d*t0          z  z
  d                    d	k    sJ t_          ta          t6          t6          tc          t0          dz  t0          dz  z
  dz   d          z             td                    }tc          t0          dz  t0          dz  z
  dz   d          t_          ta          t6          t6          z             td                    }|3                    ti          d+d                    fd,tk          d-d.          D             k    sJ d S )/Nr   r7   r8   r9   r:   r>   r;   r<   rG   rE   r=   rA   rB   rC   rD   rJ   r@      g      @rH   rI   TrK   rM   l   '~$DA7YD3':^Xf FrN   rO   rQ   rR   rT   r4   rU   rV   rX   rZ   r[   r\   r]   r?   r^   ic                     h | ]}|z   S  rw   ).0r+   fs     rp   	<setcomp>ztest_ceiling.<locals>.<setcomp>  s    -K-K-Ka!e-K-K-Krr   i   )6r   r	   r
   r   r   r   r    r_   r   r   r   r`   r   r   r3   rb   r   ra   rc   r+   rd   re   r   r-   r*   r'   rf   rg   r   rh   ri   r   rj   r1   rk   r   r   rl   r   r   is_positiveis_nonpositiver   r   r   r   r!   r%   r&   r"   r#   	intersectr$   range)ro   rN   rQ   rT   rU   sry   s         @rp   test_ceilingr      sq   3<<32;;"B3<<B33<<31::????1::????2;;"1SaT!WW-...//14444A2c$q''#d1gg,,.///00B6666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&&&&1ac7qu$$$$AaC!A#;71::----2qs8&&&&AaC1"Q$<  AM1111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N))))AJJNu$$$$AJJ!O****AJJ!O****AJJN))))AJJ!O****AJJN))))AJJ2#$&&&&AJJ"%%%%AJJ"%%%%AJJO$$$$AJJNu$$$$AJJ!O%%%%AJJNt####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Krr   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   r7   rE   r>   r<   r?   rTr.   g      ?p_i)r0   r5   )r0   rP   np_i)r0   rW   nn_i)r0   rS   p_rr4   n_rrO   np_r)r/   rW   nn_r)r/   rS   FrX   ) 
isinstancer   r*   r
   r   r   r	   rg   r   r   r   rf   r'   rk   r   r   r-   rl   r   r   r   hasr   r   r   r   r   r   is_zero	is_finite
is_integeris_real)	r   r   n_ir   r   r   r   r   r   s	            rp   	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rr   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   r>   rE   r   r7   r8   )r   r   nseriesr   r   )r*   r-   s     rp   test_seriesr   D  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......rr   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 )	Nr>   r<   r7   cdirr;   r8   r   r   )r   r*   as_leading_termr   r   r   r   seriesrw   rr   rp   test_issue_14355r   P  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Krr   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 )Nr7   r   r8   r;   r9   r<   )r   r*   r   r   r`   rb   r   rw   rr   rp   test_frac_leading_termr   r  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Drr   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 )Nr>   r9   )r   r   r   r-   r   rw   rr   rp   test_issue_4149r     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(;;;;;;;rr   c                      t          ddd          } dd|  z  z  }t          t          |          t                    sJ d S )Nrf   T)r5   r0   r<   )r   r   r   )rf   r   s     rp   test_issue_21651r     sG    sT4000A
AG)CeCjj%(((((((rr   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   rw   rr   rp   test_issue_11207r     s    q??eAhh&&&&

****588a((((71::'!**,,,,,,rr   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 )Nr>   r:   r<   )r   r   r*   r-   r   rw   rr   rp   test_nested_floor_ceilingr     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-@-@@@@@@@rr   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 )Nr>   r7   r   rw   rr   rp   test_issue_18689r     s    uQxx1$%%qA5555771::&&*++wqzzA~====7588$$q())U1XX\999999rr   c                      t          t          d                    t          j        u sJ t	          t          d                    t          j        u sJ d S )Nr   )r   floatr   ra   r   rw   rr   rp   test_issue_18421r     sH    q??af$$$$588&&&&&&rr   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.   r1   r4   crO   c                  f    t          t           z                                t          d          S Nr7   r   )r   r*   r   r   s   rp   <lambda>z"test_issue_25230.<locals>.<lambda>  s$    ac

(B(B1Q(B(O(O rr   c                  f    t          t           z                                t          d          S r   )r   r*   r   r   s   rp   r   z"test_issue_25230.<locals>.<lambda>  s$    !(D(DQq(D(Q(Q rr   r7   r   r   r8   )r   r)   NotImplementedErrorr   r*   r   r   )r1   r   r   s     @rp   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::::::rr   N)L!sympy.calculus.accumulationboundsr   sympy.core.numbersr   r   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   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-   rf   rg   r1   r3   rq   r   r   r   r   r   r   r   r   r   r   r   r   rw   rr   rp   <module>r      s$   9 9 9 9 9 9 Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q : : : : : : : : : : : : : : : : " " " " " " / / / / / / / / > > > > > > = = = = = = = = F F F F F F F F F F 9 9 9 9 9 9 H H H H H H H H H H H H 3 3 3 3 3 3 3 3       $ $ $ $ $ $ ) ) ) ) ) ) & & & & & & % % % % % % . . . . . . . .
F3KK
F3$
F3Twud###1
F3Td+++
F3E. E. E.PJL JL JLZP P Pf	/ 	/ 	/L L LDE E E < < <) ) )- - -A A A: : :
' ' '; ; ; ; ;rr   