
    \hZ                        S SK Jr  S SKJrJrJrJrJrJrJ	r	J
r
Jr  S SKJrJrJrJrJrJr  S SKJr  S SKJrJr  S SKJr  S SKJrJr  S SKJrJrJ r   S S	K!J"r"  S S
K#J$r$J%r%J&r&J'r'  S SK(J)r)J*r*  S SK+J,r,  S SK-J.r.  S SK/J0r0  S SK1J2r2  S SK3J4r4  S SK5J6r6J7r7  \" S5      r8\" SSS9r9\" SSS9r:\" SSS9u  r;r<\" SSSS9r=\" SSS9r>S r?S r@S  rAS! rBS" rCS# rD\6S$ 5       rES% rFS& rGS' rHS( rIS) rJS* rKg+),    )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                  $   [        [        5      [        L d   e[        [        5      [        L d   e[        [        * 5      [        * L d   e[        [        5      [        L d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        [        [        [        S5      [        [        S5      5      -  5      -  5      S:X  d   e[        [        * [        [        S5      [        [        S5      5      -  5      -  5      S:X  d   e[        [        5      S:X  d   e[        [        * 5      S:X  d   e[        S[        -  5      S:X  d   e[        S[        -  5      S	:X  d   e[        [        5      S
:X  d   e[        [        * 5      S:X  d   e[        [        R                  5      S:X  d   e[        [        SS5      5      S:X  d   e[        [        SS
5      5      S:X  d   e[        [        SS
5      5      S:X  d   e[        [        SS
5      * 5      S:X  d   e[        [        S5      5      S:X  d   e[        [        S5      * 5      S:X  d   e[        [        S5      5      S:X  d   e[        [        S5      * 5      S:X  d   e[        S[        S-   -  5      [        R                  :X  d   e[        [        S-   [        S-   -  5      [        R                   :X  d   e[        S[        S-   -  5      [        R"                  :X  d   e[        [        S-   [        * S-
  -  5      [%        S5      :X  d   e[        [        5      [        :X  d   e[        [        * 5      [        * :X  d   e[        [&        5      n U R(                  [         L a  U R*                  S   [&        :X  d   e[        [        [        -  5      [        [        -  :X  d   e[        [        * [        -  5      [        * [        -  :X  d   e[        [-        [        [        -  S-  5      [        -  5      [-        [        [        -  S-  5      [        -  :X  d   e[        S[        -  5      S[        -  :X  d   e[        S[        -  5      S[        -  :X  d   e[        [        S-  5      S:X  d   e[        [        * S-  5      [        * :X  d   e[        [        S-   5      S:X  d   e[        [        S-   5      S:X  d   e[        [        [        -   5      S:X  d   e[        [        [        -   5      S
[        -   :X  d   e[        [        [        5      5      S
:X  d   e[        [        [.        5      5      [        [.        5      :X  d   e[        [        [0        5      5      [        [0        5      :X  d   e[3        [         [0        5      (       d   e[3        [         S[0        -  5      (       d   e[3        [         [4        [0        -  5      (       d   e[        [4        5      [4        :X  d   e[        S[4        -  5      S[4        -  :X  d   e[        [4        [6        -  5      [4        [6        -  :X  d   e[3        [         [4        S-  5      (       d   e[3        [         [0        [.        -   5      (       d   e[        [0        S
-   5      [        [0        5      S
-   :X  d   e[        [0        [4        -   5      [        [0        5      [4        -   :X  d   e[        [.        S
-   5      [        [.        5      S
-   :X  d   e[        [.        [4        -   5      [        [.        5      [4        -   :X  d   e[        S
[        [.        -  -   [        -   5      S[        [.        5      [        -  -   :X  d   e[        [4        [6        -   5      [4        [6        -   :X  d   e[3        [         [0        [        -  5      (       d   e[        [4        [        -  5      [4        [        -  :X  d   e[        [        SS5      [        [        -  -
  5      SS
[        -  -
  :X  d   e[        [9        S5      5      S:X  d   e[        [9        S5      5      S:X  d   e[        [-        S5      5      S:X  d   e[        [        S5      [        S5      -  5      S:w  d   e[;        [        [        S5      [        S5      -  5      R=                  SS95      S
:X  d   e[        [?        S5      [-        S5      -  5      S:X  d   e[        [.        5      [.        :  R@                  (       d   e[        [.        5      [.        :*  S:X  d   e[        [.        5      [.        :  S:X  d   e[        [.        5      [.        :  R@                  (       d   e[        [0        5      [0        :*  R@                  (       d   e[        [0        5      [0        :  R@                  (       d   e[        [0        5      [.        :*  R@                  (       d   e[        [0        5      [.        :  R@                  (       d   e[        [.        5      [        :*  S:X  d   e[        [.        5      [        :  S:X  d   e[        [.        5      [        * :  S:X  d   e[        [.        5      [        * :  S:X  d   e[        [B        5      [B        :  S:X  d   e[        [B        5      [B        :*  S:X  d   e[        [B        5      [B        :  S:X  d   e[        [B        5      [B        :  S:X  d   e[        [.        5      RE                  [F        5      [.        [G        [.        5      -
  :X  d   e[        [.        5      RE                  [H        5      [I        [.        * 5      * :X  d   e[        [.        5      RE                  [F        5      RK                  [.        [        * 5      [        [        * 5      :X  d   e[        [.        5      RE                  [F        5      RK                  [.        [        5      [        [        5      :X  d   e[        [.        5      RE                  [H        5      RK                  [.        [        5      [I        [        * 5      * :X  d   e[        [.        5      RE                  [H        5      RK                  [.        [        * 5      [I        [        5      * :X  d   e[M        [        [.        5      [.        [G        [.        5      -
  5      (       d   e[M        [        [.        5      [I        [.        * 5      * 5      (       d   e[O        SSS9n[O        SSS 9n[O        S!SS"9n[O        S#SS$9n[        U5      S:  S:X  d   e[        U5      S:*  S:X  d   e[        U5      S:  S:X  d   e[        U5      S:  S:X  d   e[        U5      S:*  S:X  d   e[        U5      S:  US:  :X  d   e[        U5      S:  US:  :X  d   e[        U5      S:  S:X  d   e[        U5      S:  S:X  d   e[        U5      S:  S:X  d   e[        U5      S:*  US:  :X  d   e[        U5      S:  US:  :X  d   e[        U5      S:  S:X  d   e[        U5      S
:  US
:  :X  d   e[        U5      S:*  S:X  d   e[        U5      S:  S:X  d   e[        U5      RP                  S:X  d   e[        U5      RR                  S:X  d   e[        U5      RP                  S:X  d   e[        U5      RR                  S:X  d   e[        U5      RP                  S:X  d   e[        U5      RR                  S:X  d   e[        U5      RP                  b   e[        U5      RR                  b   e[        SSS%9S:  S:X  d   e[        SSS%9S:  S:X  d   e[        SSS%9S:*  S:X  d   e[        SSS%9S:  S:X  d   e[        SSS%9S:  S:X  d   e[        SSS%9S:  S:X  d   e[        SSS%9S:*  S:X  d   e[        SSS%9S:  S:X  d   e[        SSS%9S:  S:X  d   e[        SSS%9S:  S:X  d   e[        SSS%9S:*  S:X  d   e[        SSS%9S:  S:X  d   e[        [0        5      S&:*  [U        [        [0        5      S&SS%9:X  d   e[        [0        5      S':  [W        [        [0        5      S'SS%9:X  d   e[        [0        5      S(:  [Y        [        [0        5      S(SS%9:X  d   e[        [0        5      S):  [[        [        [0        5      S)SS%9:X  d   e[        [.        5      S&:*  [.        S:  :X  d   e[        [.        5      S':  [.        S:  :X  d   e[        [.        5      S(:  [.        S
:  :X  d   e[        [.        5      S):  [.        S:  :X  d   e[        [.        5      [6        :*  [.        [6        S-   :  :X  d   e[        [.        5      [6        :  [.        [6        :  :X  d   e[        [.        5      [6        :  [.        [6        :  :X  d   e[        [.        5      [6        :  [.        [6        S-   :  :X  d   e[        []        [0        S
-  S*[0        -  -
  S5      5      S:X  d   eg )+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        f/var/www/auris/envauris/lib/python3.13/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                  &   [        [        5      [        L d   e[        [        5      [        L d   e[        [        * 5      [        * L d   e[        [        5      [        L d   e[        S5      S:X  d   e[        S5      S:X  d   e[        S5      S:X  d   e[        [        [        [        S5      [        [        S5      5      -  5      -  5      S:X  d   e[        [        * [        [        S5      [        [        S5      5      -  5      -  5      S:X  d   e[        [        5      S:X  d   e[        [        * 5      S:X  d   e[        S[        -  5      S	:X  d   e[        S[        -  5      S
:X  d   e[        [        5      S:X  d   e[        [        * 5      S:X  d   e[        [        R                  5      S:X  d   e[        [        SS5      5      S:X  d   e[        [        SS5      5      S:X  d   e[        [        SS5      * 5      S:X  d   e[        [        S5      5      S:X  d   e[        [        S5      * 5      S:X  d   e[        [        S5      5      S:X  d   e[        [        S5      * 5      S:X  d   e[        S[        S-   -  5      [        R                  :X  d   e[        [        S-   [        S-   -  5      [!        S5      :X  d   e[        S[        S-   -  5      [        R"                  :X  d   e[        [        S-   [        * S-
  -  5      [        R$                  :X  d   e[        [        5      [        :X  d   e[        [        * 5      [        * :X  d   e[        [&        5      n U R(                  [         L a  U R*                  S   [&        :X  d   e[        [        [        -  5      [        [        -  :X  d   e[        [        * [        -  5      [        * [        -  :X  d   e[        [-        [        [        -  S-  5      [        -  5      [-        [        [        -  S-  5      [        -  :X  d   e[        S[        -  5      S[        -  :X  d   e[        S[        -  5      S[        -  :X  d   e[        [        S-  5      [        :X  d   e[        [        * S-  5      S:X  d   e[        [        S-   5      S:X  d   e[        [        S-   5      S	:X  d   e[        [        [        -   5      S	:X  d   e[        [        [        -   5      [        S-   :X  d   e[        [        [        5      5      S:X  d   e[        [        [.        5      5      [        [.        5      :X  d   e[        [        [0        5      5      [        [0        5      :X  d   e[3        [         [0        5      (       d   e[3        [         S[0        -  5      (       d   e[3        [         [4        [0        -  5      (       d   e[        [4        5      [4        :X  d   e[        S[4        -  5      S[4        -  :X  d   e[        [4        [6        -  5      [4        [6        -  :X  d   e[3        [         [4        S-  5      (       d   e[3        [         [0        [.        -   5      (       d   e[        [0        S-   5      [        [0        5      S-   :X  d   e[        [0        S-   5      [        [0        5      S-   :X  d   e[        [0        S[        -  -   5      [        [0        5      S[        -  -   :X  d   e[        [0        [4        -   5      [        [0        5      [4        -   :X  d   e[        [.        S-   5      [        [.        5      S-   :X  d   e[        [.        [4        -   5      [        [.        5      [4        -   :X  d   e[        S[        -   [.        [        -  -   5      S[        [.        5      [        -  -   :X  d   e[        [4        [6        -   5      [4        [6        -   :X  d   e[3        [         [0        [        -  5      (       d   e[        [4        [        -  5      [4        [        -  :X  d   e[        [        SS5      [        [        -  -
  5      SS[        -  -
  :X  d   e[        [9        S5      5      S:X  d   e[        [9        S5      5      S:X  d   e[        [-        S5      5      S:X  d   e[        [        S5      * [        S5      -  5      S:w  d   e[;        [        [        S5      * [        S5      -  5      R=                  SS95      S:X  d   e[        [?        S5      [-        S5      -  5      S:X  d   e[        [.        5      [.        :  S:X  d   e[        [.        5      [.        :  R@                  (       d   e[        [.        5      [.        :  S:X  d   e[        [.        5      [.        :*  R@                  (       d   e[        [0        5      [0        :  R@                  (       d   e[        [0        5      [0        :  R@                  (       d   e[        [0        5      [.        :  R@                  (       d   e[        [0        5      [.        :  R@                  (       d   e[        [.        5      [        * :  S:X  d   e[        [.        5      [        * :  S:X  d   e[        [.        5      [        :*  S:X  d   e[        [.        5      [        :  S:X  d   e[        [B        5      [B        :  S:X  d   e[        [B        5      [B        :*  S:X  d   e[        [B        5      [B        :  S:X  d   e[        [B        5      [B        :  S:X  d   e[        [.        5      RE                  [F        5      [G        [.        * 5      * :X  d   e[        [.        5      RE                  [H        5      [.        [I        [.        * 5      -   :X  d   e[        [.        5      RE                  [F        5      RK                  [.        [        * 5      [G        [        5      * :X  d   e[        [.        5      RE                  [F        5      RK                  [.        [        5      [G        [        * 5      * :X  d   e[        [.        5      RE                  [H        5      RK                  [.        [        5      [        [        5      :X  d   e[        [.        5      RE                  [H        5      RK                  [.        [        * 5      [        [        * 5      :X  d   e[M        [        [.        5      [.        [I        [.        * 5      -   5      (       d   e[M        [        [.        5      [G        [.        * 5      * 5      (       d   e[O        SSS9n[O        SSS9n[O        S SS!9n[O        S"SS#9n[        U5      S:*  S:X  d   e[        U5      S:  US:*  :X  d   e[        U5      S:  S:X  d   e[        U5      S:  US:  :X  d   e[        U5      S:  US:  :X  d   e[        U5      S:*  US:*  :X  d   e[        U5      S:  S:X  d   e[        U5      S:  S:X  d   e[        U5      S:  S:X  d   e[        U5      S:*  S:X  d   e[        U5      S:  S:X  d   e[        U5      S:  S:X  d   e[        U5      S:  S:X  d   e[        U5      S:  US:  :X  d   e[        U5      S:*  S:X  d   e[        U5      S:  S:X  d   e[        U5      RP                  S:X  d   e[        U5      RR                  S:X  d   e[        U5      RP                  b   e[        U5      RR                  b   e[        U5      RP                  S:X  d   e[        U5      RR                  S:X  d   e[        U5      RP                  S:X  d   e[        U5      RR                  S:X  d   e[        SSS$9S:  S:X  d   e[        SSS$9S:  S:X  d   e[        SSS$9S:*  S:X  d   e[        SSS$9S:  S:X  d   e[        SSS$9S	:  S:X  d   e[        SSS$9S	:  S:X  d   e[        SSS$9S	:*  S:X  d   e[        SSS$9S	:  S:X  d   e[        SSS$9S:  S:X  d   e[        SSS$9S:  S:X  d   e[        SSS$9S:*  S:X  d   e[        SSS$9S:  S:X  d   e[        [0        5      S%:*  [U        [        [0        5      S%SS$9:X  d   e[        [0        5      S&:  [W        [        [0        5      S&SS$9:X  d   e[        [0        5      S':  [Y        [        [0        5      S'SS$9:X  d   e[        [0        5      S(:  [[        [        [0        5      S(SS$9:X  d   e[        [.        5      S%:*  [.        S:*  :X  d   e[        [.        5      S&:  [.        S):  :X  d   e[        [.        5      S':  [.        S:*  :X  d   e[        [.        5      S(:  [.        S:  :X  d   e[        [.        5      [6        :*  [.        [6        :*  :X  d   e[        [.        5      [6        :  [.        [6        S-
  :  :X  d   e[        [.        5      [6        :  [.        [6        S-
  :*  :X  d   e[        [.        5      [6        :  [.        [6        :  :X  d   e[        []        [0        S-  S*[0        -  -
  S5      5      S	:X  d   e[_        [a        [6        [6        [c        [0        S-  [0        S-  -
  S-   S5      -   5      [d        5      n[c        [0        S-  [0        S-  -
  S-   S5      n[_        [a        [6        [6        U-   5      [d        5      nURg                  [i        S+S5      5      [k        S,S-5       Vs1 s H  owU-   iM	     sn:X  d   eg s  snf ).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]!e]-KKKK-Ks   L;AMc                     [        [        [        5      [        5      (       d   e[        [        5      [	        SS5      :X  d   e[        [        * 5      [	        SS5      :X  d   e[        [
        5      [        L d   e[        [        5      S:X  d   e[        [        5      [        L d   e[        [        SS5      5      [        SS5      :X  d   e[        [        SS5      * 5      [        SS5      :X  d   e[        [        SS5      5      [        SS5      :X  d   e[        SSS	9n [        [        U -  5      [        [        U 5      -  :X  d   e[        S[        U -  -   5      [        [        U 5      -  :X  d   e[        S
[        U -  -   5      S
[        [        U 5      -  -   :X  d   e[        [        [        U -  -   5      [        [        U 5      -  :X  d   e[        [        [        [        -  -   5      S:X  d   e[        [        [        [        [        -  -   5      (       d   e[        [        [        [        -  -   5      [        [        5      :X  d   e[        [        5      R                  [        5      [        [        [        5      -
  :X  d   e[        [        5      R                  [        5      [        [        [        * 5      -   :X  d   e[        [         5      R                  [        5      R#                  [         [$        5      [        [$        5      :X  d   e[        [         5      R                  [        5      R#                  [         [&        * 5      [        [&        * 5      :X  d   e[        [         5      R                  [        5      R#                  [         [$        * 5      [        [$        * 5      :X  d   e[        [         5      R                  [        5      R#                  [         [&        5      [        [&        5      :X  d   e[)        [        [         5      [         [        [         5      -
  5      (       d   e[)        [        [         5      [         [        [         * 5      -   5      (       d   e[        SSS	9n [        SSSS9n[        SSSS9n[        SSSS9n[        SSSS9n[        SSS9n[        SSS9n[        SSSS9n[        SSSS9n[        U 5      U::  d   e[        U 5      U::  a   e[        U 5      U:*  R+                  [,        5      (       d   e[        U 5      U:*  R+                  [,        5      (       d   e[        U 5      U:  d   e[        U 5      U:  a   e[        U 5      U:  a   e[        U 5      U:  R+                  [.        5      (       d   e[        U 5      U:  a   e[        U 5      U:  d   e[        U 5      U:  d   e[        U 5      U:  R+                  [0        5      (       d   e[        U 5      U:  a   e[        U 5      U:  d   e[        U 5      U:  R+                  [2        5      (       d   e[        U 5      U:  R+                  [2        5      (       d   e[)        [        U 5      U5      (       a   e[)        [        U 5      U5      (       a   e[)        [        U 5      U5      R+                  [(        5      (       d   e[)        [        U 5      U5      R+                  [(        5      (       d   e[5        [        U 5      U5      (       d   e[5        [        U 5      U5      (       d   e[5        [        U 5      U5      R+                  [4        5      (       d   e[5        [        U 5      U5      R+                  [4        5      (       d   e[        U 5      U:*  R+                  [,        5      (       d   e[        U 5      U::  a   e[        U 5      U:*  R+                  [,        5      (       d   e[        U 5      U:*  R+                  [,        5      (       d   e[        U 5      U:  R+                  [.        5      (       d   e[        U 5      U:  a   e[        U 5      U:  a   e[        U 5      U:  R+                  [.        5      (       d   e[        U 5      U:  R+                  [0        5      (       d   e[        U 5      U:  d   e[        U 5      U:  d   e[        U 5      U:  R+                  [0        5      (       d   e[        U 5      U:  R+                  [2        5      (       d   e[        U 5      U:  d   e[        U 5      U:  R+                  [2        5      (       d   e[        U 5      U:  R+                  [2        5      (       d   e[)        [        U 5      U5      (       a   e[)        [        U 5      U5      R+                  [(        5      (       d   e[)        [        U 5      U5      R+                  [(        5      (       d   e[)        [        U 5      U5      R+                  [(        5      (       d   e[5        [        U 5      U5      R+                  [4        5      (       d   e[5        [        U 5      U5      (       d   e[5        [        U 5      U5      R+                  [4        5      (       d   e[5        [        U 5      U5      R+                  [4        5      (       d   e[        U 5      [        :  d   e[        U 5      [        ::  d   e[        U 5      [        :  a   e[        U 5      [        :  a   e[        U 5      [        * :  a   e[        U 5      [        * ::  a   e[        U 5      [        * :  d   e[        U 5      [        * :  d   e[        U 5      S:  d   e[        U 5      S::  d   e[        U 5      S:  a   e[        U 5      S:  a   e[        U 5      S:  a   e[        U 5      S:*  R+                  [,        5      (       d   e[        U 5      S:  R+                  [2        5      (       d   e[        U 5      S:  d   e[        U 5      [7        S5      ::  d   e[        U 5      [7        S5      [7        S5      -
  :*  R+                  [,        5      (       d   e[        U 5      [7        S5      [7        S5      -
  ::  a   e[        U 5      [7        S5      :  a   e[        U 5      [7        S5      [7        S5      -
  :  R+                  [0        5      (       d   e[        U 5      [7        S5      [7        S5      -
  :  d   e[)        [        U 5      [7        S5      5      (       a   e[)        [        U 5      [7        S5      [7        S5      -
  5      R+                  [(        5      (       d   e[)        [        U 5      [7        S5      [7        S5      -
  5      (       a   e[5        [        U 5      [7        S5      5      (       d   e[5        [        U 5      [7        S5      [7        S5      -
  5      R+                  [4        5      (       d   e[5        [        U 5      [7        S5      [7        S5      -
  5      (       d   e[        USS9R8                  (       d   e[        USS9R:                  (       d   e[        USS9R<                  (       d   e[        USS9R>                  (       d   e[        U 5      R:                  (       d   e[        U 5      R>                  (       d   e[        U 5      R8                  b   e[        U 5      R<                  b   e[        [        5      R:                  (       d   e[        [        5      R>                  (       d   eg )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   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1Aw$q'DG++++Aw$q'!!!GtAwa((--b11117d1gQ''''$q'47####d1gtAwa()--b1111$q'47T!W,----d1gtAwd1gtAwa()--b1111d1gtAwa())))e$,,,,e$....e$////e$,,,,77???7??"""7%%%88rr   c                  r   [        S5      u  p[        U 5      R                  XS5      [        U5      :X  d   e[        U 5      R                  XS5      [        U5      :X  d   e[        U 5      R                  U [        S5      S:X  d   e[        U 5      R                  U [        S5      S:X  d   e[        U 5      R                  U SS5      S:X  d   e[        U 5      R                  U SS5      S:X  d   e[        U * 5      R                  U SS5      S:X  d   e[        U * 5      R                  U SS5      S:X  d   eg )Nzx,yd   r>   rE   r   r7   r8   )r   r   nseriesr   r   )r*   r-   s     rp   test_seriesr   D  s   5>DA8A#&%(2221:aC(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                     [        [        S-  [        -   [        S-  [        -
  -  5      R                  [        SS9S:X  d   e[        [        S-  [        -   [        S-  [        -
  -  5      R                  [        SS9S:X  d   e[        [        [        5      S-
  [        -  5      R                  [        SS9S:X  d   e[        [        [        5      S-
  [        -  5      R                  [        SS9S:X  d   e[        [	        [        5      [        -  5      R                  [        SS9S:X  d   e[        [	        [        5      [        -  5      R                  [        SS9S:X  d   e[        [        [        5      * [        -  5      R                  [        SS9S:X  d   e[        [        [        5      * [        -  5      R                  [        SS9S:X  d   e[        [	        [        5      [        -  S-  5      R                  [        SS9S:X  d   e[        [	        [        5      [        -  S-  5      R                  [        SS9S:X  d   e[        [        S-  [        -   [        S-  [        -
  -  5      R                  [        SS9S:X  d   e[        [        S-  [        -   [        S-  [        -
  -  5      R                  [        SS9S:X  d   e[        [        [        5      S-
  [        -  5      R                  [        SS9S:X  d   e[        [        [        5      S-
  [        -  5      R                  [        SS9S:X  d   e[        [	        [        5      [        -  5      R                  [        SS9S:X  d   e[        [	        [        5      [        -  5      R                  [        SS9S:X  d   e[        [        [        5      * [        -  5      R                  [        SS9S:X  d   e[        [        [        5      * [        -  5      R                  [        SS9S:X  d   e[        [	        [        5      [        -  S-  5      R                  [        SS9S:X  d   e[        [	        [        5      [        -  S-  5      R                  [        SS9S:X  d   e[        [	        [        5      [        -  5      R                  [        SSSS9S:X  d   e[        [	        [        5      [        -  5      R                  [        SSSS9S:X  d   e[        [        S-  [        -   [        S-  [        -
  -  5      R                  [        SSSS9S:X  d   e[        [        S-  [        -   [        S-  [        -
  -  5      R                  [        SSSS9S:X  d   e[        [	        [        5      [        -  5      R                  [        SSSS9S:X  d   e[        [	        [        5      [        -  5      R                  [        SSSS9S:X  d   e[        [        S-  [        -   [        S-  [        -
  -  5      R                  [        SSSS9S:X  d   e[        [        S-  [        -   [        S-  [        -
  -  5      R                  [        SSSS9S:X  d   eg )	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                     [        [        5      R                  [        5      [        :X  d   e[        [        5      R                  [        SS9[        :X  d   e[        [        5      R                  [        SS9S:X  d   e[        [        [        R                  -   5      R                  [        SS9[        R                  :X  d   e[        [        [        R                  -   5      R                  [        SS9[        R                  :X  d   e[        S[        -  S-   5      R                  [        SS9[        R
                  :X  d   e[        S[        -  S-   5      R                  [        SS9S[        -  :X  d   e[        [        [        5      S-   5      R                  [        SS9[        :X  d   e[        [        [        5      S-   5      R                  [        SS9[        R
                  :X  d   e[        [        [        S-  5      S-   5      R                  [        SS9[        S-  :X  d   e[        [        [        S-  5      S-   5      R                  [        SS9[        S-  :X  d   eg )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                     [        S[        [        -  -   [        [        -  -   5      S[        [        [        -   5      [        -  -   :X  d   e[        S[        -  [        [        -  -   [        [        -  -   5      [        S[        -   [        -   5      [        -  :X  d   e[        S[        -   [        [        -  -   [        [        -  -   5      S[        [        [        -   5      [        -  -   :X  d   eg )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                  l    [        SSSS9n SSU * -  -  n[        [        U5      [        5      (       d   eg )Nrf   T)r5   r0   r<   )r   r   r   )rf   r   s     rp   test_issue_21651r     s6    sT40A
AG)CeCj%((((rr   c                  \   [        [        [        5      5      [        [        5      :X  d   e[        [        [        5      5      [        [        5      :X  d   e[        [        [        5      5      [        [        5      :X  d   e[        [        [        5      5      [        [        5      :X  d   eg )Nr   r*   r   r   rr   rp   test_issue_11207r     sm    q?eAh&&&
***58a(((71:'!*,,,rr   c                     [        [        [        [        S-  5      [        -  5      * 5      [        [        [        S-  5      [        -  5      * :X  d   e[        [        [        [        S-  5      [        -  5      * 5      [        [        [        S-  5      [        -  5      * :X  d   e[        [        [        [        [	        SS5      -  [        -  5      * 5      5      [        [        [	        SS5      -  [        -  5      * :X  d   e[        [        [        [        5      [        -  5      * 5      * [        [        [        5      [        -  5      :X  d   eg )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                  `   [        [        [        [        5      5      S-   5      [        [        5      S-   :X  d   e[        [        [        [        5      5      S-   5      [        [        5      S-   :X  d   e[        [        [        [        5      5      S-   5      [        [        5      S-   :X  d   eg )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                      [        [        S5      5      [        R                  L d   e[	        [        S5      5      [        R                  L d   eg )Nr   )r   floatr   ra   r   r   rr   rp   test_issue_18421r     s7    q?aff$$$58&&&rr   c                  2  ^ [        SSS9m[        SSS9n [        SSS9n[        [        U4S j5        [        [        U4S	 j5        [        [        U -  5      R                  [        S
S9S:X  d   e[        [        U -  5      R                  [        SS9S:X  d   e[        [        U-  5      R                  [        S
S9S:X  d   e[        [        U-  5      R                  [        SS9S:X  d   e[        [        U -  5      R                  [        S
S9S
:X  d   e[        [        U -  5      R                  [        SS9S:X  d   e[        [        U-  5      R                  [        S
S9S:X  d   e[        [        U-  5      R                  [        SS9S
:X  d   eg )NaTr.   r1   r4   crO   c                  L   > [        [        T -  5      R                  [        SS9$ Nr7   r   )r   r*   r   r   s   rp   <lambda>"test_issue_25230.<locals>.<lambda>  s    ac
(B(B1Q(B(Orr   c                  L   > [        [        T -  5      R                  [        SS9$ r   )r   r*   r   r   s   rp   r   r     s    !(D(DQq(D(Qrr   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   