
    khZ                        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* ZKy+),    )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k7  sJ t;        t        t        d      t        d      z        j=                  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.        kD  dk(  sJ t        t.              t.        k\  j@                  sJ t        t0              t0        k  j@                  sJ t        t0              t0        kD  j@                  sJ t        t0              t.        k  j@                  sJ t        t0              t.        kD  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         kD  dk(  sJ t        tB              tB        k  dk(  sJ t        tB              tB        k  dk(  sJ t        tB              tB        kD  dk(  sJ t        tB              tB        k\  dk(  sJ t        t.              jE                  tF              t.        tG        t.              z
  k(  sJ t        t.              jE                  tH              tI        t.                k(  sJ t        t.              jE                  tF              jK                  t.        t               t        t               k(  sJ t        t.              jE                  tF              jK                  t.        t              t        t              k(  sJ t        t.              jE                  tH              jK                  t.        t              tI        t                k(  sJ t        t.              jE                  tH              jK                  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kD  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kD  |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kD  dk(  sJ t        |      jP                  dk(  sJ t        |      jR                  dk(  sJ t        |      jP                  dk(  sJ t        |      jR                  dk(  sJ t        |      jP                  dk(  sJ t        |      jR                  dk(  sJ t        |      jP                  J t        |      jR                  J t        dd%      dk\  dk(  sJ t        dd%      dkD  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kD  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kD  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)kD  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)kD  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        kD  t.        t6        dz   k\  k(  sJ t        t]        t0        d
z  d*t0        z  z
  d            dk(  sJ y )+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        j/var/www/teggl/fontify/venv/lib/python3.12/site-packages/sympy/functions/elementary/tests/test_integers.py
test_floorrq      s   :9??":":8q==8q==9??3tAws47|+,,-222!CQDG,--."4448q==!9??1:??A;"9>>":=A"a!R'''!Q A%%%"a!R'''(1a.!R'''t###%+#%%%t"""%+"$$$AaC>QVV###!A#!&&&QqS?amm+++!A#1'"+---8q==!9??aA66U?qvvayA~--A;"Q$"Q<B3q5   QrT!VR C"QKN2221:1A;"Q$1:??!A;1"R=Ba=AR=AR=AE!!!rq   q?eAh&&&q?eAh&&&UAUAaC   UAaC   8q==1:11:1UAaC   UAE"""Q<58a<'''Q<58a<'''Q<58a<'''Q<58a<'''QqS2!eAhqj.000Q<1q5   UAaC   1:1"b!AaC'(A!G333Q=AR>RQ=AQA1$$$uSVCF]#))t)45:::2s1v%&IJ J J !HqL''''!HMd"""!HqLU"""!HM((((!HM((((!HqL''''!HM((((!HqL''''!HNt###!HrMd"""!HO$$$!HsNt###!HqLT!!!!HMd"""!HqLU"""!HMe###8D!Qa[0008G$!4448D!&&q2#.%*<<<8D!&&q!,a8888G$))!Q/GQBK<???8G$))!bS1gbk\AAAeAhDG$$$eAh!%%%

&C	$	'B

&C	$	'B#JNt####J!O$$$#JNu$$$#J!O%%%#J"%%%#J"#),,,#JNa((("IMe###"INt####JNu$$$#J!Oq)))#JNq)))#J!O$$$#J!O***"INt###"IMe###:!!T))):$$---9  E)))9##t+++:!!U***:$$,,,9  (((9##+++!e$)d222!e$q(U222!e$)d222!e$q(U222!e$)d222!e$q(T111!e$)e333!e$q(U222!e$)e333!e$q(U222!e$)d222!e$q(T111!HO58S5 AAAA!HE!HdU!CCCC!HsNr%(C%@@@@!HtO58TE BBBB!HOQ'''!H!r'***!HsNA&&&!HtOb)))!HMq1q5y)))!HMqAv&&&!HqLa!e$$$!HqLa1q5j)))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k7  sJ t;        t        t        d       t        d      z        j=                  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.        kD  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         kD  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        kD  dk(  sJ t        tB              tB        k\  dk(  sJ t        t.              jE                  tF              tG        t.                k(  sJ t        t.              jE                  tH              t.        tI        t.               z   k(  sJ t        t.              jE                  tF              jK                  t.        t               tG        t               k(  sJ t        t.              jE                  tF              jK                  t.        t              tG        t                k(  sJ t        t.              jE                  tH              jK                  t.        t              t        t              k(  sJ t        t.              jE                  tH              jK                  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kD  dk(  sJ t        |      dk\  |dkD  k(  sJ t        |      dkD  |dkD  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kD  dk(  sJ t        |      dk\  dk(  sJ t        |      dk\  dk(  sJ t        |      dkD  |dkD  k(  sJ t        |      dk  dk(  sJ t        |      dkD  dk(  sJ t        |      jP                  dk(  sJ t        |      jR                  dk(  sJ t        |      jP                  J t        |      jR                  J t        |      jP                  dk(  sJ t        |      jR                  dk(  sJ t        |      jP                  dk(  sJ t        |      jR                  dk(  sJ t        dd$      dk\  dk(  sJ t        dd$      dkD  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	kD  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kD  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(kD  t[        t        t0              d(d$      k(  sJ t        t.              d%k  t.        dk  k(  sJ t        t.              d&k\  t.        d)kD  k(  sJ t        t.              d'k  t.        dk  k(  sJ t        t.              d(kD  t.        dkD  k(  sJ t        t.              t6        k  t.        t6        k  k(  sJ t        t.              t6        k\  t.        t6        dz
  kD  k(  sJ t        t.              t6        k  t.        t6        dz
  k  k(  sJ t        t.              t6        kD  t.        t6        kD  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              }|jg                  ti        d+d            tk        d,d-      D ch c]  }||z   	 c}k(  sJ y c c}w ).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^   ii   )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   sfr+   s           rp   test_ceilingr}      s   3<32;"B3<B33<31:??1:??2;"1SaT!W-../1444A2c$q'#d1g,.//0B6661:??A2;"1Q3<12a4=B2;!B3<2166?a8B?#q(((8Aq>"a'''HQN?#r)))5;2%%%E$K< C'''5;1$$$E$K< B&&&1ac7quu$$$AaC!A#;71:---2qs8&&&AaC1"Q$< AMM1111:??A2;1"
A66Wa//2a4=BqD   B3q5>bSU"""3qtAv;r>"c!B$q&k"n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>WQZ!^+++1s7wqzA~---1s1u9ac!11111q5>WQZ!^+++1q5>WQZ!^+++1q5>WQZ!^+++1r6AaC< A
1$44441q5>QU"""Wac"""1Q3<1Q38B#ac)*a!A#g5553q6?a3r7q   3q6?aCF73q6>"b(((wAws1v~&,,$,78B>>>9R=Q'(IJ J J AJ!O$$$AJN))))AJNu$$$AJ!O****AJ!O****AJN))))AJ!O****AJN))))AJ2#$&&&AJ"%%%AJ"%%%AJO$$$AJNu$$$AJ!O%%%AJNt###AJ!O$$$1:e$r
2221:d#q48|3331:e$))!bS1eBiZ???1:e$))!Q/E1"I:===1:d#((B/72;>>>1:d#((QB/7A2;>>>gaj!dA2h,'''gaj5!9*%%%

&C	$	'B

&C	$	'BCLA$&&&CL1#),,,CL1&&&CLA38,,,CL238,,,CLBC2I...BK!O%%%BK1%%%CL1&&&CLA%'''CL1%%%CLA$&&&CLA$&&&CL1#'***BK1%%%BK!O%%%3<##u,,,3<&&$...2;""***2;%%---3<##t+++3<&&%///2;""e+++2;%%---A&!+444A&*u444A&!+444A&*u444A&!+444A&*t333A&!+555A&*u444A&!+555A&*u444A&!+444A&*t333AJ#"WQZu"EEEEAJ$2gaj$#GGGGAJGAJe!DDDDAJ"WQZ"FFFFAJ#16***AJ$AF+++AJ!q&)))AJ1r6***AJ!Oa(((AJ!OQU+++AJNQU
+++AJNA&&&6!Q$A+q)*a///11q!ta ;<=xHA1q!ta#A1q5!8,A;;xR()U2r]-Ka!e-KKKK-Ks   J3AK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              j                  t              t        t        t              z
  k(  sJ t        t              j                  t              t        t        t               z   k(  sJ t        t               j                  t              j#                  t         t$              t        t$              k(  sJ t        t               j                  t              j#                  t         t&               t        t&               k(  sJ t        t               j                  t              j#                  t         t$               t        t$               k(  sJ t        t               j                  t              j#                  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  j+                  t,              sJ t        |       |k  j+                  t,              sJ t        |       |k  sJ t        |       |k  rJ t        |       |k  rJ t        |       |k  j+                  t.              sJ t        |       |k\  rJ t        |       |k\  sJ t        |       |k\  sJ t        |       |k\  j+                  t0              sJ t        |       |kD  rJ t        |       |kD  sJ t        |       |kD  j+                  t2              sJ t        |       |kD  j+                  t2              sJ t)        t        |       |      rJ t)        t        |       |      rJ t)        t        |       |      j+                  t(              sJ t)        t        |       |      j+                  t(              sJ t5        t        |       |      sJ t5        t        |       |      sJ t5        t        |       |      j+                  t4              sJ t5        t        |       |      j+                  t4              sJ t        |       |k  j+                  t,              sJ t        |       |k  rJ t        |       |k  j+                  t,              sJ t        |       |k  j+                  t,              sJ t        |       |k  j+                  t.              sJ t        |       |k  rJ t        |       |k  rJ t        |       |k  j+                  t.              sJ t        |       |k\  j+                  t0              sJ t        |       |k\  sJ t        |       |k\  sJ t        |       |k\  j+                  t0              sJ t        |       |kD  j+                  t2              sJ t        |       |kD  sJ t        |       |kD  j+                  t2              sJ t        |       |kD  j+                  t2              sJ t)        t        |       |      rJ t)        t        |       |      j+                  t(              sJ t)        t        |       |      j+                  t(              sJ t)        t        |       |      j+                  t(              sJ t5        t        |       |      j+                  t4              sJ t5        t        |       |      sJ t5        t        |       |      j+                  t4              sJ t5        t        |       |      j+                  t4              sJ t        |       t        k  sJ t        |       t        k  sJ t        |       t        kD  rJ t        |       t        k\  rJ t        |       t         k  rJ t        |       t         k  rJ t        |       t         kD  sJ t        |       t         k\  sJ t        |       dk  sJ t        |       dk  sJ t        |       dkD  rJ t        |       dk\  rJ t        |       dk  rJ t        |       dk  j+                  t,              sJ t        |       dkD  j+                  t2              sJ t        |       dk\  sJ t        |       t7        d      k  sJ t        |       t7        d      t7        d      z
  k  j+                  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\  j+                  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
        j+                  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
        j+                  t4              sJ t5        t        |       t7        d      t7        d      z
        sJ t        |d      j8                  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        |       j8                  J t        |       j<                  J t        t              j:                  sJ t        t              j>                  sJ y )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     si   d1gt$$$8{1a((((9Aq))))97a<<9A8Aq>111!Q HQN222Q HQN222sA!9$q'	!!!AaC=Ad1gI%%%ac	?cAd1gIo---AaC=Ad1gI%%%AaC=AT1qs7###AaC=DG###7??5!Qq\1117??7#q7A2;6667??5!&&q"-b9997??5!&&q1"-qb9997??7#((RC0D"I===7??7#((A.$q'999d1gq58|$$$d1gq7A2;'''sA
t
4C
t
4C&$D9D&$D9D

&C

&C&t6D&t6D 7c>>Aw#~GtO  $$$GtO  $$$7S==Aw}Aw~GdN###Aw#~7c>>7d??GtO  $$$Aw}7S==GdN###GdN###$q'3$q'3d1gt  $$$d1gt  $$$d1gsd1gsd1gt  $$$d1gt  $$$ GsN###Aw#~GtO  $$$GtO  $$$GcMr"""Aw}Aw~GdN###GsN###7c>>7d??GtO  $$$GcMr"""7S==GdN###GdN###$q'3d1gs###d1gt  $$$d1gt  $$$d1gs###d1gsd1gt  $$$d1gt  $$$ 7R<<7b==Aw|Aw"}Aw"}Aw2#~7bS==7rc>>7Q;;7a<<Aw{?Aw!|Aw{?GqLb!!!GaKR   7a<< 7d1gGtAwa((--b111Aw$q'DG++++Aw$q'!!!GtAwa((--b1117d1gQ''''$q'47###d1gtAwa()--b111$q'47T!W,---d1gtAwd1gtAwa()--b111d1gtAwa()))e$,,,,e$....e$////e$,,,,77???7??"""7%%%88rr   c                  h   t        d      \  } }t        |       j                  | |d      t        |      k(  sJ t        |       j                  | |d      t        |      k(  sJ t        |       j                  | t        d      dk(  sJ t        |       j                  | t        d      dk(  sJ t        |       j                  | dd      dk(  sJ t        |       j                  | dd      dk(  sJ t        |        j                  | dd      dk(  sJ t        |        j                  | dd      dk(  sJ y )Nzx,yd   r>   rE   r   r7   r8   )r   r   nseriesr   r   )r*   r-   s     rp   test_seriesr   D  s#   5>DAq8Aq#&%(2221:aC(GAJ6668Ar3'1,,,1:aS)Q...8Aq#&!+++1:aC(A---!9Q3'2---A2;q!S)Q...rr   c                     t        t        dz  t        z   t        dz  t        z
  z        j                  t        d      dk(  sJ t        t        dz  t        z   t        dz  t        z
  z        j                  t        d      dk(  sJ t        t        t              dz
  t        z        j                  t        d      dk(  sJ t        t        t              dz
  t        z        j                  t        d      dk(  sJ t        t	        t              t        z        j                  t        d      dk(  sJ t        t	        t              t        z        j                  t        d      dk(  sJ t        t        t               t        z        j                  t        d      dk(  sJ t        t        t               t        z        j                  t        d      dk(  sJ t        t	        t              t        z  dz        j                  t        d      dk(  sJ t        t	        t              t        z  dz        j                  t        d      dk(  sJ t        t        dz  t        z   t        dz  t        z
  z        j                  t        d      dk(  sJ t        t        dz  t        z   t        dz  t        z
  z        j                  t        d      dk(  sJ t        t        t              dz
  t        z        j                  t        d      dk(  sJ t        t        t              dz
  t        z        j                  t        d      dk(  sJ t        t	        t              t        z        j                  t        d      dk(  sJ t        t	        t              t        z        j                  t        d      dk(  sJ t        t        t               t        z        j                  t        d      dk(  sJ t        t        t               t        z        j                  t        d      dk(  sJ t        t	        t              t        z  dz        j                  t        d      dk(  sJ t        t	        t              t        z  dz        j                  t        d      dk(  sJ t        t	        t              t        z        j                  t        ddd      dk(  sJ t        t	        t              t        z        j                  t        ddd      dk(  sJ t        t        dz  t        z   t        dz  t        z
  z        j                  t        ddd      dk(  sJ t        t        dz  t        z   t        dz  t        z
  z        j                  t        ddd      dk(  sJ t        t	        t              t        z        j                  t        ddd      dk(  sJ t        t	        t              t        z        j                  t        ddd      dk(  sJ t        t        dz  t        z   t        dz  t        z
  z        j                  t        ddd      dk(  sJ t        t        dz  t        z   t        dz  t        z
  z        j                  t        ddd      dk(  sJ y )	Nr>   r<   r7   cdirr;   r8   r   r   )r   r*   as_leading_termr   r   r   r   series rr   rp   test_issue_14355r   P  sd    !Q$(QTAX&'77!7DJJJ!Q$(QTAX&'77"7EKKK#a&1*a 0010=CCC#a&1*a 0020>!CCCQ?**1Q*71<<<Q?**1R*8A===#a&++Aa+8B>>>#a&++Ab+9R???Q!,,Qq,9Q>>>Q!,,Qr,:a???AqD1Hq!tax()99!A9F"LLLAqD1Hq!tax()99!B9G1LLLCFQJ>"221Q2?1DDDCFQJ>"221R2@AEEE3q6!8,,Qq,9Q>>>3q6!8,,Qr,:a???CF719--a-:b@@@CF719--a-:b@@@3q6!8A:..q.;q@@@3q6!8A:..q.<AAAQ?!!!QA!6!;;;Q?!!!QA!6!;;;!Q$(QTAX&'..q!S.CrIII!Q$(QTAX&'..q!S.DJJJ3q6!8##Aq#a#8A===3q6!8##Aq#b#9Q>>>AqD1Hq!tax()00As10EKKKAqD1Hq!tax()00As20F!KKKrr   c                      t        t              j                  t              t        k(  sJ t        t              j                  t        d      t        k(  sJ t        t              j                  t        d      dk(  sJ t        t        t        j                  z         j                  t        d      t        j                  k(  sJ t        t        t        j                  z         j                  t        d      t        j                  k(  sJ t        dt        z  dz         j                  t        d      t        j
                  k(  sJ t        dt        z  dz         j                  t        d      dt        z  k(  sJ t        t        t              dz         j                  t        d      t        k(  sJ t        t        t              dz         j                  t        d      t        j
                  k(  sJ t        t        t        dz        dz         j                  t        d      t        dz  k(  sJ t        t        t        dz        dz         j                  t        d      t        dz  k(  sJ y )Nr7   r   r8   r;   r9   r<   )r   r*   r   r   r`   rb   r   r   rr   rp   test_frac_leading_termr   r  s   7""1%***7""1Q"/14447""1R"0A555AFF
++Aa+8AFFBBBAFF
++Ab+9QVVCCC1q>))!A)6!%%???1q>))!B)72a4???A
++Aa+8A===A
++Ab+9QUUBBBAqD	A..q.;q!tCCCAqD	A..q.<1DDDrr   c                     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 y )Nr>   r9   )r   r   r   r-   r   r   rr   rp   test_issue_4149r     s    RTAaC Ab1fa$77771r!tac!"eAFQJ&7&9999QA!#$E"q&M!O(;;;;rr   c                  h    t        ddd      } dd|  z  z  }t        t        |      t              sJ y )Nrf   T)r5   r0   r<   )r   r   r   )rf   r   s     rp   test_issue_21651r     s3    sT40A
AG)CeCj%(((rr   c                  T   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 y )Nr   r*   r   r   rr   rp   test_issue_11207r     sm    q?eAh&&&
***58a(((71:'!*,,,rr   c                     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 y )Nr>   r:   r<   )r   r   r*   r-   r   r   rr   rp   test_nested_floor_ceilingr     s    %1a(()eGAqDM!O.D-DDDDE'!Q$-/**+gadmAo0F/FFFF%8Aq> 1! 344565HQPQNARSTAT;U:UUUUWU1XaZ(())WU1XaZ-@@@@rr   c                  Z   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 y )Nr>   r7   r   r   rr   rp   test_issue_18689r     s|    uQx1$%qA555771:&*+wqzA~===758$q()U1X\999rr   c                      t        t        d            t        j                  u sJ t	        t        d            t        j                  u sJ y )Nr   )r   floatr   ra   r   r   rr   rp   test_issue_18421r     s7    q?aff$$$58&&&rr   c                  `   t        dd      t        dd      } t        dd      }t        t        fd       t        t        fd	       t        t        | z        j                  t        d
      dk(  sJ t        t        | z        j                  t        d      dk(  sJ t        t        |z        j                  t        d
      dk(  sJ t        t        |z        j                  t        d      dk(  sJ t        t        | z        j                  t        d
      d
k(  sJ t        t        | z        j                  t        d      dk(  sJ t        t        |z        j                  t        d
      dk(  sJ t        t        |z        j                  t        d      d
k(  sJ y )NaTr.   r1   r4   crO   c                  R    t        t         z        j                  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 rr   c                  R    t        t         z        j                  t        d      S r   )r   r*   r   r   s   rp   r   z"test_issue_25230.<locals>.<lambda>  s    !(D(DQq(D(Q rr   r7   r   r   r8   )r   r)   NotImplementedErrorr   r*   r   r   )r1   r   r   s     @rp   test_issue_25230r     so   s4 Ast$Ast$A
 OP
 QR1:%%a%2a7771:%%a%3r9991:%%a%2b8881:%%a%3q8881Q3<''!'49991Q3<''"'5:::1Q3<''!'49991Q3<''"'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   r   rr   rp   <module>r      s    9 Q Q Q : : " / > = F F 9 H H 3  $ ) & % .
3K
3$
3Tud#1
3Td+
3E.PJLZPf	/LDE < <)-A:
';rr   