
    \h                         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
  S SKJrJrJrJrJrJrJrJrJrJrJr  S SKJr  S rS rS	 rS
 rS rS rS rS r S r!S r"g)    )Rationalpi)S)Symbolsymbols)explog)expm1log1pexp2log2fmalog10SqrtCbrthypotisnanisinf)
expand_logc                  `   [        S5      S:X  d   e[        SSS9n [        U 5      R                  SS9[        U 5      -
  S:X  d   e[        U 5      R	                  S5      [        U 5      -
  S:X  d   e[        U 5      R	                  S5      [        U 5      -
  S:X  d   e[        S	5      R                  5       S
-
  S	-
  S-
  S:  a   e[        [        S	5      R                  5       S	-
  S-
  5      S:  d   e[        U 5      R                  (       d   e[        U 5      R                  (       d   e[        SU -  5      R                  U 5      S[        SU -  5      -  -
  S:X  d   e[        SU -  5      R                  U 5      [        SU -  5      R                  SS9R                  U 5      -
  S:X  d   eg )Nr   xTrealfunc	tractabler   g|=   g#B;g^ 9^;*   )
r
   r   expandr   rewriteevalfabsis_real	is_finitediffr   s    [/var/www/auris/envauris/lib/python3.13/site-packages/sympy/codegen/tests/test_cfunctions.py
test_expm1r)      s   8q==sA 8???%A."4448K(3q61R7778E"SV+r111 U!!#a'5058EAAAuU|!!#e+e34u<<< 88 A;AC1I-222A;Ar!t!3!3!3!>!C!CA!FF!KKK    c                     [        S5      S:X  d   e[        S5      n [        [        U S-  5      [        U S-  S-   5      -
  [        U S-  5      -   5      S:X  d   e[	        SSS9n[        U5      R                  SS	9[        US-   5      -
  S:X  d   e[        U5      R                  S
5      [        US-   5      -
  S:X  d   e[        U5      R                  S5      [        US-   5      -
  S:X  d   e[        [        S5      R                  5       S-
  5      S:  a   e[        [        [        S5      5      R                  5       S-
  5      S:  d   e[        S[        SS5      -  * 5      R                  (       d   e[        S5      R                  (       a   e[        [        5      R                  (       d   e[        U5      R                  (       a   e[        [	        SSS95      R                  (       d   e[        U5      R                  (       a   e[        [	        SSS95      R                  (       d   e[        U5      R                  (       a   e[        [	        SSS95      R                  (       d   e[        SU-  5      R!                  U5      SSU-  S-   -  -
  S:X  d   e[        SU-  5      R!                  U5      [        SU-  5      R                  SS	9R!                  U5      -
  S:X  d   eg )Nr   
   ii  r   r   Tr   r   r   r	   g      ?g>N}a+g0.++   r   y)positivez)zeroo)nonnegativer   )r   r   r   r	   r   r    r!   r#   r"   r   r$   r%   r   is_positiveis_zerois_nonnegativer&   )dr   s     r(   
test_log1pr8   #   s   8q==	"AeAuHoAtGaK(883q$w<GHAMMMsA 8???%AE
2a7778K(3q1u:5:::8E"SQZ/1444 3y>'')E12V;;;z%,'--/%786AAA !Xb!_$$%----Ry""""9Qx####d+,8888Qx$'(0000Qx&&&&./>>>> A;ARTAX.!333A;Ar!t!3!3!3!>!C!CA!FF!KKKr*   c                     [        S5      S:X  d   e[        SSS9n [        U 5      R                  SS9SU -  -
  S:X  d   e[        SU -  5      R                  U 5      S[        SU -  5      -  [	        S5      -  -
  S:X  d   e[        SU -  5      R                  U 5      [        SU -  5      R                  U 5      -
  S:X  d   eg )	Nr-      r   Tr   r   r   r   )r   r   r    r&   r	   r'   s    r(   	test_exp2r;   H   s    7a<<sA 7>>t>$q!t+q000 1:??141:c!f 449991:??1RT
 22a777r*   c                  x   [        S5      S:X  d   e[        [        5      [        [        5      [        S5      -  :w  d   e[        SSS9n [        U 5      [        U 5      [        S5      -  :w  d   e[        SU -  5      U :X  d   e[        U 5      R	                  SS9[        U 5      [        S5      -  -
  S:X  d   e[        S	U -  5      R                  5       S
[        S5      U -  -  -
  S:X  d   e[        S	U -  5      R                  5       [        S	U -  5      R	                  SS9R                  U 5      -
  S:X  d   eg )N      r-   r   Tr   r   r   r   r   )r   r   r	   r   r    r&   r'   s    r(   	test_log2r?   V   s   7a<<8s2ws1v~%%%sA7c!fSVm###1:?? 7>>t>$s1vc!f}4999 1:??q#a&(|+q0001:??tBqDz00d0;@@CCqHHHr*   c                     [        S5      u  pn[        XU5      R                  SS9X-  -
  U-
  S:X  d   e[        SU -  SU-  SU-  5      nUR                  U 5      UR                  SS9R                  U 5      -
  S:X  d   eUR                  U5      UR                  SS9R                  U5      -
  S:X  d   eUR                  U5      UR                  SS9R                  U5      -
  S:X  d   eUR                  U 5      SU-  -
  S:X  d   eUR                  U5      SU -  -
  S:X  d   eUR                  U5      S-
  S:X  d   eg )	Nzx y zTr   r      r   e   i  )r   r   r    r&   )r   r.   r0   exprs       r(   test_fmarD   g   sH   gGA! qQ<D)AC/!3q888r!tRT3q5!D 99Q<$++4+055a88A===99Q<$++4+055a88A===99Q<$++4+055a88A===99Q<%'!Q&&&99Q<%'!Q&&&99Q<#"""r*   c                     [        S5      n [        U 5      R                  SS9[        U 5      [        S5      -  -
  S:X  d   e[        SU -  5      R	                  U 5      S[        S5      U -  -  -
  S:X  d   e[        SU -  5      R	                  U 5      [        SU -  5      R                  SS9R	                  U 5      -
  S:X  d   eg )Nr   Tr   r,   r   r   r   )r   r   r    r	   r&   r'   s    r(   
test_log10rF   y   s    sA 8???%As2w6!;;; A;ACGAI.!333A;Ar!t!3!3!3!>!C!CA!FF!KKKr*   c                     [        S5      n [        U 5      R                  SS9U [        SS5      -  -
  S:X  d   e[        SU -  5      R	                  U 5      SSU -  [        SS5      S-
  -  -  S-  -
  S:X  d   e[        SU -  5      R	                  U 5      [        SU -  5      R                  SS9R	                  U 5      -
  S:X  d   eg )Nr   Tr   r   r>   r   r   )r   r   r    r   r&   r'   s    r(   	test_CbrtrH      s    sA 7>>t>$q(1a.'88A=== 1:??1BqDHQNQ,>#? ? AAQFFF1:??1RT
 1 1t 1 < A A! DDIIIr*   c                     [        S5      n [        U 5      R                  SS9U [        R                  -  -
  S:X  d   e[        SU -  5      R                  U 5      SSU -  [        R                  S-
  -  -  S-  -
  S:X  d   e[        SU -  5      R                  U 5      [        SU -  5      R                  SS9R                  U 5      -
  S:X  d   eg )Nr   Tr   r   r   r   r-   )r   r   r    r   Halfr&   r'   s    r(   	test_SqrtrK      s    sA 7>>t>$q!&&y0A555 1:??1BqDAFFQJ#7 7 99Q>>>1:??1RT
 1 1t 1 < A A! DDIIIr*   c                     [        S5      u  p[        X5      R                  SS9U S-  US-  -   [        R                  -  -
  S:X  d   e[        SU -  SU-  5      R                  U 5      R                  SS9[        SU -  SU-  5      R                  SS9R                  U 5      -
  S:X  d   e[        SU -  SU-  5      R                  U5      R                  SS9[        SU -  SU-  5      R                  SS9R                  U5      -
  S:X  d   e[        SU -  SU-  5      R                  U 5      R                  SS9SU -  SU -  S-  SU-  S-  -   [        S	S5      -  -  S-  -
  S:X  d   e[        SU -  SU-  5      R                  U5      R                  SS9S
U-  SU -  S-  SU-  S-  -   [        S	S5      -  -  S-  -
  S:X  d   eg )Nzx yTr   r-   r   rA   r   iB  r   i  )r   r   r    r   rJ   r&   r   )r   r.   s     r(   
test_hypotrM      s   5>DA ;4(AqD1a4K!&&+@@AEEE Ar!t!!!$+++6r!tRT9J9Q9QW[9Q9\9a9abc9ddhiiiiAr!t!!!$+++6r!tRT9J9Q9QW[9Q9\9a9abc9ddhiiiiAr!t!!!$+++6RTAIQSTUQUXYPYDY\degij\kCk9klm9mmqrrrrAr!t!!!$+++6RTAIQSTUQUXYPYDY\degij\kCk9klm9mmqrrrrr*   c                  @   [        S5      n [        [        R                  75      S:X  d   e[        [        R                  * 5      S:X  d   e[        [        R                  5      S:X  d   e[        U 5      nUS;  d   eUR
                  [        L d   eUR                  U 4:X  d   e[        [        R                  5      S:X  d   e[        [        R                  5      S:X  d   e[        U 5      nUS;  d   eUR
                  [        L d   eUR                  U 4:X  d   eg )Nr   TF)FT)	r   r   r   InfinityPir   argsr   NaN)r   isinfxisnanxs      r(   test_isnan_isinfrU      s    sA !**%%%!**%%%;%1XF&&&;;%;;1$ <4;%1XF&&&;;%;;1$r*   N)#sympy.core.numbersr   r   sympy.core.singletonr   sympy.core.symbolr   r   &sympy.functions.elementary.exponentialr   r	   sympy.codegen.cfunctionsr
   r   r   r   r   r   r   r   r   r   r   sympy.core.functionr   r)   r8   r;   r?   rD   rF   rH   rK   rM   rU    r*   r(   <module>r]      sd    - " / =    +L0"LJ8I"#$LJJsr*   