
    \h                        S SK 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JrJr  S SKJr  S SK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  S SKJ r J!r!J"r"  S SK#J$r$  S S	K%J&r&  S S
K'J(r(J)r)J*r*J+r+J,r,  S SK-J.r.  S SK/J0r0J1r1  S SK2J3r3  S SK4J5r5  S SK6J7r7  S SK8J9r9  S SK:J;r;J<r<  S SK=J>r>  S SK?J@r@  S SKAJBrB  S SK JCrC  S SKDJErE  S SKFJGrGJHrHJIrI  S rJS rKS rLS rMS rN\GS 5       rOS rPS rQS  rRS! rSS" rTS# rUS$ rVS% rWS& rXS' rYS( rZS) r[\IS* 5       r\S+ r]S, r^S- r_S. r`S/ raS0 rbS1 rc\GS2 5       rdS3 re\GS4 5       rfS5 rgS6 rhS7 riS8 rj\IS9 5       rkg:);    )
DerivativeFunctionLambdaexpand	PoleError)EIRationalcompnanoopizoo)Eq)S)Symbolsymbols)Absadjointarg	conjugateimresign	transpose)exp	exp_polarlog)sqrt)	Piecewise)acosatanatan2cossin)sinh)
DiracDelta	Heaviside)Integral)Matrix)FunctionMatrix)MatrixSymbol)ImmutableMatrixImmutableSparseMatrix)SparseMatrix)Interval)	unchanged)ArgumentIndexError)Order)XFAILraises_both_exp_powc                 T    [        U R                  5       UR                  5       S5      $ )z7Check whether two complex numbers are numerically closegư>)r   n)abs     g/var/www/auris/envauris/lib/python3.13/site-packages/sympy/functions/elementary/tests/test_complexes.pyN_equalsr<      s    qssue$$    c                     [        S5      u  p[        SSS9u  p#[        SSS9n[        SSS9n[        [        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[        [
        5      [
        :X  d   e[        [
        * 5      [
        * :X  d   e[        [        U 5      (       d   e[        U [        -  5      [        U 5      * :X  d   e[        U[        -  5      S:X  d   e[        U5      U:X  d   e[        U[        -  5      [        U-  :X  d   e[        U5      S:X  d   e[        X-   5      [        U 5      [        U5      -   :X  d   e[        X-   5      [        U 5      U-   :X  d   e[        [        U 5      5      [        U 5      :X  d   e[        S[        -   5      S:X  d   e[        U [        -   5      [        U 5      :X  d   e[        X[        -  -   5      [        U 5      [        U5      -
  :X  d   e[        X[        -  -   5      [        U 5      :X  d   e[        [        S[        -  5      5      [        S5      :X  d   e[        S[        -   S-  5      R                  SS9S:X  d   e[        [        U 5      5      [        U 5      :X  d   e[        [        U 5      5      [        U 5      :X  d   e[        U 5      R                  5       [        U 5      S4:X  d   e[        XT-  U -  5      R                  U5      [        XP-  5      :X  d   e[        XT-  U -  5      R                  U5      [        U-  [        U 5      -  :X  d   e[        [        X#[        -  -   5      5      US-  US-  -   [        S	S5      -  [!        [#        X25      S-  5      -  :X  d   e[        USU[        -  -   -  5      SU-  :X  d   e[        S	[        X#[        -  -   5      -   S-  5      US-  US-  -   [        S	S5      -  [!        [#        X25      S-  5      -  S-  [$        R&                  -   :X  d   e[        U 5      R)                  [        5      U [$        R*                  [        U 5      -  -
  :X  d   eU [        U5      -   R)                  [        [        5      X-   [$        R*                  [        U5      -  -
  :X  d   e[        SSS9n[        SSS9n[        S5      n [        U5      R,                  (       d   e[        U 5      R,                  b   e[        U5      R,                  SL d   e[        [$        R.                  5      [$        R0                  L d   e[        S5      u  pxn	[3        SXx5      n
[        U
5      [$        R&                  U
[        U
5      -   -  :X  d   e[5        S	S[        -  -   S/SS[        -  //5      n
[        U
5      [5        S	S/SS//5      :X  d   e[7        S	S[        -  -   SS[        -  -
  /SS[        -  //5      n
[        U
5      [7        S	S/SS//5      :X  d   e[9        [;        S5       VVs/ s H,  n[;        S5       Vs/ s H  nSU-  U[        -  -   PM     snPM.     snn5      n[        U5      [5        / SQ/ SQ/ SQ/ SQ/ SQ/5      -
  [4        R<                  " S5      :X  d   e[        U5      [5        / SQ/ SQ/ SQ/ SQ/ SQ/5      -
  [4        R<                  " S5      :X  d   e[?        SS[A        Xx4Xx[        -  -   5      5      n[        U5      [5        / SQ/ S Q/ S!Q/5      :X  d   eg s  snf s  snnf )"Nx,ya,bTrealri	imaginaryr         complex      r9   	algebraicttranscendentalxFn m lA   )r   r   r   r   r   )rI   rI   rI   rI   rI   )rM   rM   rM   rM   rM   )   rX   rX   rX   rX   )   rY   rY   rY   rY   )r   rG   rI   rL   rM   )r   r   r   )rG   rG   rG   )rI   rI   rI   )!r   r   r   r   r   r   r1   r	   r   r   r   r   as_real_imagdiffr   r
   r$   r#   r   HalfrewriteImaginaryUnitis_algebraicComplexInfinityNaNr,   r*   r-   r/   rangezerosr+   r   )rS   yr9   r:   rC   rD   rP   r8   mlrU   jXs                r;   test_reri      s   5>DA5t$DAsAsd#Ac7c>>b6R<<rc7rc>>a5A::a5A::b6R<<a5A::qb6aR<<Rac7r!ufac7a<<a5A::ac7a!ea5A::ae911%%%ae91	!!!be91a!e9>>a!e91aA#g;"Q%"Q%-'''aA#g;"Q%c!A#h<3q6!!!q1uqj>   .!333ilr!u$$$RUr!u$$$a5BqE1:---ac!e9>>!13'''ac!e9>>!!BqE	)))Q1Wa4!Q$;!Q7E!KM8JJK K Ka1qs7m!###q4aC= !#$	
A1x1~%c%+a-&88:QVVCD D D a5==AOOBqE$9 99991Ir2&!%!//"Q%2G*GGGGsd#As4(AsAa5a5%%%a5&&&a AEE)))gGA!SAa5QVVIaL 01111QqSQ1I&'Aa5FQFAq6?++++!ac'1QqS5)1ac(34Aa5OaVQFO4444U1XFX%(3(QqsQqSy(3XFGAa56?****	, - - 17Q	@ @ @ a56?****	, - - 17Q	@ @ @ 	q!VQFA!G45Aa5FIy)<==== 4Fs   ;^ 
];'^ 
;^ 
c            
      >   [        S5      u  p[        SSS9u  p#[        SSS9n[        SSS9n[        [        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[        [        [
        -  5      [        :X  d   e[        [        * [
        -  5      [        * :X  d   e[        [        U 5      (       d   e[        U [
        -  5      [        U 5      :X  d   e[        U[
        -  5      U:X  d   e[        U5      S:X  d   e[        U[
        -  5      S:X  d   e[        U5      [
        * U-  :X  d   e[        X-   5      [        U 5      [        U5      -   :X  d   e[        X-   5      [        U 5      :X  d   e[        X[
        -  -   5      [        U 5      U-   :X  d   e[        [        U 5      [
        -  5      [        U 5      :X  d   e[        S[
        -   5      S	:X  d   e[        U [
        -   5      [        U 5      S	-   :X  d   e[        X[
        -  -   5      [        U 5      [        U5      -   :X  d   e[        X[
        -  -   5      [        U 5      U-   :X  d   e[        [        S[
        -  5      5      [        S-  :X  d   e[        S[
        -   S-  5      R                  SS9S:X  d   e[        [        U 5      5      [        U 5      * :X  d   e[        [        U 5      5      [        U 5      :X  d   e[        U 5      R                  5       [        U 5      S4:X  d   e[        XT-  U -  5      R                  U5      [        XP-  5      :X  d   e[        XT-  U -  5      R                  U5      [
        * [        X@-  5      -  :X  d   e[        [        X#[
        -  -   5      5      US-  US-  -   [!        S	S5      -  [#        [%        X25      S-  5      -  :X  d   e[        USU[
        -  -   -  5      X#-  :X  d   e[        S	[        X#[
        -  -   5      -   S-  5      US-  US-  -   [!        S	S5      -  [#        [%        X25      S-  5      -  S-  :X  d   e[        U 5      R'                  [        5      [(        R*                  * U [        U 5      -
  -  :X  d   eU [        U5      -   R'                  [        [        5      U [(        R*                  U[        U5      -
  -  -
  :X  d   e[        SSS9n[        SSS9n[        S5      n [        U5      R,                  (       d   e[        U 5      R,                  b   e[        U5      R,                  SL d   e[        [(        R.                  5      [(        R0                  L d   e[        S5      u  pxn	[3        SXx5      n
[        U
5      [(        R4                  S[
        -  -  U
[        U
5      -
  -  :X  d   e[7        S	S[
        -  -   S/SS[
        -  //5      n
[        U
5      [7        SS/SS//5      :X  d   e[9        S	S[
        -  -   SS[
        -  -
  /SS[
        -  //5      n
[        U
5      [9        SS/SS//5      :X  d   e[;        [=        S5       Vs/ s H(  n[=        S5       Vs/ s H  oU[
        -  U-   PM     snPM*     sn5      n[?        [=        S5       Vs/ s H  n[A        [=        S5      5      PM     sn5      n[        U5      RC                  5       U:X  d   e[E        SS[G        Xx4Xx[
        -  -   5      5      n[        U5      [7        / SQ/ SQ/ SQ/5      :X  d   eg s  snf s  snf s  snf )Nr?   r@   TrA   rC   rD   rE   r   rG   rH   rI   rJ   rM   r9   rN   rP   rQ   rS   FrT   rU   rV   rL   rW   )r   rG   rI   )$r   r   r   r   r   r	   r   r1   r   r   r   r   r   rZ   r[   r   r
   r%   r#   r]   r   r^   r_   r`   ra   r,   Oner*   r-   r.   rb   r/   listas_immutabler+   r   )rS   rd   r9   r:   rC   rD   rP   r8   re   rf   rU   rh   Ys                r;   test_imrp      s~   5>DA5t$DAsAsd#Ac7c>>bd8r>>rc!e9a5A::a5A::b6Q;;ac7a<<qbd8r>>Rac7beac7a<<a5A::ac7a<<a5QBF??ae911%%%ae91aA#g;"Q%!)###beAg;"Q%a!e9>>a!e91	!!!aA#g;"Q%"Q%-'''aA#g;"Q%!)###c!A#h<2a4q1uqj>   .!333il1v%%%RUr!u$$$a5BqE1:---ac!e9>>!13'''ac!e9>>!RW,,,Q1Wa4!Q$;!Q7E!KM8JJK K Ka1qs7m###q4aC= !#$	
A1x1~%c%+a-&88:; ; ; a5== 0A1I >>>>1Ir2&!aooRU.K*KKKKsd#As4(AsAa5a5%%%a5&&&a AEE)))gGA!SAa5QUUAaC[Q1%56666QqS!aAY'(Aa5FQFAr7+,,,,!ac'1QqS5)1ac(34Aa5OaWaV$4555527(;(QuQx(x!cAgx((;	=AeAh7hd58nh78Aa51$$$q!VQFA!G45Aa5FIy)<==== );7s   ?^^'^^^c            
         [        S5      S:X  d   e[        S5      S:X  d   e[        S[        -  5      [        :X  d   e[        S[        -  5      [        * :X  d   e[        S5      S:X  d   e[        SSS	9R                  5       S:X  d   e[        [        SS	9R                  5       S:X  d   e[        [        5      [        L d   e[        S
S
[        -  -   5      R                  5       [        S
5      S
S
[        -  -   -  S-  :X  d   e[        S
S[        -  -   5      R                  5       [        S
S[        -  -   5      :X  d   e[        S
S
[        -  -   5      R                  5       [        S[        -   5      :X  d   e[        [        [        S[        S5      -
  5      5      5      S:X  d   e[        [        S[        S5      -
  5      5      [        :X  d   e[        S5      n [        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  b   e[        U 5      R                  b   e[        U 5      R                  b   e[        U 5      R                  b   e[        U 5      R                  5       [        U 5      :X  d   e[        SU -  5      [        U 5      :X  d   e[        S
U -  5      [        U 5      :X  d   e[        [        U -  5      [        [        U 5      -  :X  d   e[        S[        -  U -  5      [        * [        U 5      -  :X  d   e[        [        U 5      5      [        [        U 5      5      :X  d   e[        SSS9n[        SSS9n[        SSS9n[        S
U-  U -  5      [        U 5      :X  d   e[        X -  5      [        U 5      * :X  d   e[        X#-  U -  5      [        U 5      :X  d   e[        SSS9n [        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R!                  U 5      S
[#        [        * U -  5      -  :X  d   e[        U 5      R                  5       U [%        U 5      -  :X  d   e[        [        U 5      5      [        U 5      * :X  d   e[        SSS9n [        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  b   e[        U 5      R!                  U 5      S
[#        U 5      -  :X  d   e[        U 5      R                  5       [        U 5      :X  d   e[        [        U 5      5      [        U 5      :X  d   e[        SSS9n [        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  5       U [%        U 5      -  :X  d   e[        [%        U 5      5      S:X  d   e[%        [        U 5      5      S:X  d   e[        SSS9n [        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  5       U [%        U 5      -  :X  d   e[        [%        U 5      5      S:X  d   e[%        [        U 5      5      S:X  d   eSn [        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  SL d   e[        U 5      R                  5       S:X  d   e[        [%        U 5      5      S:X  d   e[%        [        U 5      5      S:X  d   e[        SSSS9n[        U5      R                  SL d   e[        U5      R                  SL d   e[        U5      R                  SL d   e[        U5      R                  SL d   e[        U5      S
-  S:X  d   e[        U5      S-  R&                  [        U5      S4:X  d   e[        [        SSS95      R(                  (       d   e[        [        SSS95      R*                  b   e[        [        SSS95      R(                  b   e[        [        SSS95      R*                  (       d   e[        [        SSS95      R(                  b   e[        [        SSS95      R*                  b   e[        [        SSSS95      R*                  b   e[        SSS9[        S5      pP[-        S5      n[        U 5      R/                  [0        5      [1        SU S:  4SU S:  4S5      :X  d   e[        U5      R/                  [0        5      [        U5      :X  d   e[        U 5      R/                  [2        5      S
[3        U [5        S5      S
-  S9-  S-
  :X  d   e[        U5      R/                  [2        5      [        U5      :X  d   e[        U5      R/                  [$        5      [1        S[7        US5      4U[%        U5      -  S45      :X  d   e[        U" U5      5      R/                  [$        5      [1        S[7        U" U5      S5      4U" U5      [%        U" U5      5      -  S45      :X  d   e[        [9        [        [:        -  5      [:        -  5      [4        R<                  L d   e[        S S![        S5      -  -   5      * [        S[        S5      -   5      -   [        SS[        S5      -  -   5      -   n[        U5      R>                  [         L d  [        U5      S:X  d   eS[        S
5      -   S
[        S5      -  -
  S"[        S!5      -  -   n[A        US-  5      [C        SS5      -  nX-
  n	[        U	5      R>                  [         L d  [        U	5      S:X  d   eg g )#Ng333333?rG   g333333rH   rL   rV   r   F)evaluaterI   rM   rS   Trk   ppositiver8   negativere   rE   rA   )nonzeronz)rx   integer)nonnegative)nonpositive)rB   zerord   f)r   T)H0
   rX   3  )"r   r	   doitr   r   r   simplifyr   r   	is_finite
is_complexis_imaginary
is_integeris_realis_zeror   r[   r'   r   argsis_nonnegativeis_nonpositiver   r]   r    r(   r   r   r   r   NegativeOnefuncr   r
   )
rS   rs   r8   re   ry   rd   r~   eqqds
             r;   	test_signr      s
   9>>:!9>>1:!7a<<E"'')Q...U#((*a///9AaC=47A!G#4Q#6666AaC=!!#tA!G}444AaC=!!#tAE{2224DG$%&!+++Qa[!"a'''sA7$$$7%%%7'''7%%%7??"""7??"""7<<>T!W$$$A;$q'!!!!9Q!9$q'	!!!1Q<A2d1g:%%%	!47!3333sT"AsT"AsT"A!A;$q'!!!9a   A;$q'!!!sd#A74'''7&&&7??e###7??e###7<<?a
A2a4 000007<<>QQZ'''T!W$q')))sA75(((7%%%7??d"""7??"""7<<?a
1o---7<<>T!W$$$T!Wa(((sD!A75(((7%%%7??d"""7??e###7<<>QQZ'''A<1tAw<1sT"A75(((7%%%7??d"""7??e###7<<>QQZ'''A<1tAw<1	A75(((7%%%7??d"""7??d"""7<<>QA<1tAw<1	dD	1B8  E)))8$&&&8t###8u$$$8Q;!HaK$r(A...s-.====s-.==EEEs-.==EEEs-.====s&'66>>>s&'66>>>sE23BBJJJ#D!6#;qA7??9%1a!e*r1q5k956 6 67??9%a0007??9%9Q1Q46+B)BQ)FFFF7??9%a0007??39aAq]Qs1vXt<L#MMMM!:c"iBqtQK0@1Q4AaD	>SWBX&YYYY 	!B$"#q}}444
rAd1gI~
	a$q'k!2	2T!aQi-5H	HB 8==D DHM11 	
DGaQi$tAw,.Aq!thq!n$A	A7<<447a<//<r=   c                     [         S-  n U R                  5       U S4:X  d   e[        S5      n[        U5      R                  5       [	        U5      S-  [        U5      S-  -   [        SS5      -  [        [        [        U5      [	        U5      5      S-  5      -  [	        U5      S-  [        U5      S-  -   [        SS5      -  [        [        [        U5      [	        U5      5      S-  5      -  4:X  d   e[        SSS	9u  p#S[        X#[        -  -   5      -   S-  R                  5       US-  US-  -   [        SS5      -  [        [        X25      S-  5      -  S-  [        R                  -   US-  US-  -   [        SS5      -  [        [        X25      S-  5      -  S-  4:X  d   e[        US-  5      R                  5       [        US-  5      S4:X  d   e[        S
SS9n[        US-  5      R                  5       S[        U5      4:X  d   eS[        -   S[        -
  -  R                  5       S:X  d   eS[        -   S-  S[        -
  -  R                  5       S:X  d   eg )N  r   rS   rI   rG   rM   r@   TrA   rD   rE   )r   rG   rL   )rk   r   )r   rZ   r   r   r   r   r
   r$   r#   r%   r   r	   r   r\   abs)r8   rS   r9   r:   rD   s        r;   test_as_real_imagr   R  sH   
DA
 >>1v%%% 	sA7!
Q%(RUAX
A	.s5A13Fq3H/I	IeQhAHQN*3uRUBqE/B1/D+EE	GG G G
 5t$DAaA#g!//11q!tha U1[]+,,-.0171q!thq!n,SqQ-??ACC C C 1:""$adQ777t$A1:""$CF333UQUO))+v555UQJA,,.'999r=   c                      [         S-  n [        U 5      n[        S5      nX-
  R                  5       S:X  d   e[	        X-
  5      S:X  d   eX-
  R                  SX!0S9S:  d   eX-
  R                  SX!0S9S:  d   eg )Nr   rS   rG   subsr   rI   )r   intr   roundr   r8   )r8   rD   rS   s      r;   test_sign_issue_3068r   p  s    
DAAAsAE==?a;! E99QaV9$q(((E99QaV9$q(((r=   c                  
  ^ [        [        S 5        [        S5      u  mn [        [        T5      5      [        T5      :X  d   e[        TU -  5      R                  [        L 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      [        L d   e[        [        5      [        L d   e[        [        [        -  5      [        :X  d   e[        [        * [        -  5      [        :X  d   e[        [        T-  5      [        T5      :X  d   e[        [        * T-  5      [        T5      :X  d   e[        ST-  5      S[        T5      -  :X  d   e[        ST-  5      S	[        T5      -  :X  d   e[        S[        -  T-  U -  5      S[        -  [        TU -  5      -  :X  d   e[        [        T5      5      [        T5      :X  d   e[        [        T5      5      [        T5      :X  d   e[        T5      R                  S
S9[        [        T5      S-  [        T5      S-  -   5      :X  d   e[!        SS
S9n[        S[        -  T-  U-  5      S[        -  U-  [        T5      -  :X  d   e[        S[        -  [        -  T-  U-  5      S[        -  U-  [        T5      -  :X  d   e[!        SS
S9m[!        SS
S9n[        SU-  5      S:X  d   eTSU-  -  [        T5      SU-  -  :X  d   e[        T5      R#                  T5      [        T5      :X  d   e[%        T5      [        T5      :X  d   e[        T5      S-  TS-  [        T5      -  :X  d   e[        T5      S-  TS-  :X  d   e[        T5      SU-  -  R&                  [        T5      SU-  4:X  d   eS[        T5      -  R&                  [        T5      S4:X  d   eS[        T5      S-  -  STS-  [        T5      -  -  :X  d   e[        T5      S-  [        T5      TS-  -  :X  d   e[        TS-  5      TS-  [        T5      -  :X  d   e[        [        [        -  5      [)        [        * S-  5      :X  d   e[        SS[        -  -   SS[        -  -   -  5      S[)        S[+        [-        SS5      5      -  5      -  :X  d   e[!        SS
S9n [        [        U -  5      S:X  d   e[!        S5      n [        [        U -  5      [)        [        * [        U 5      -  S-  5      :X  d   e[!        SS
S9m[        T5      R#                  T5      [        T5      * :X  d   e[        SS[        S5      -  -   5      * [        S[        S5      -   5      -   [        SS[        S5      -  -   5      -   n[%        U5      R                  [
        L d  [%        U5      S:X  d   eS[        S5      -   S[        S5      -  -
  S[        S5      -  -   n[        US-  5      [-        SS5      -  nXT-
  n[%        U5      R                  [
        L d  [%        U5      S:X  d   e[        S[)        [        [        -  S-  5      -  5      S:X  d   e[        SS[        -   -  5      S:X  d   e[        SS[        -
  -  5      S[)        [        5      -  :X  d   e[        [        5      [        L d   e[        [        * 5      [        L d   e[        [        [        -   5      [        L d   e[        [        [        [        -  -   5      [        L d   e[!        SS
S9n[!        S S
S!9n[!        S5      m[        U5      R.                  (       d   e[        T5      R.                  b   e[        U5      R.                  S"L d   e[        T5      R1                  5       [        T5      :X  d   e[        [2        U4S# j5        [        [5        S[        -
  5      [5        S[        -   5      -  5      n[%        U5      U:X  d   e[%        ST-  5      S[        T5      -  :X  d   e[%        STS-  -  5      n	U	R6                  (       a  U	S[        TS-  5      -  :X  d   e[9        [
        U T-  5      (       d   e[9        [
        TTS-   -  5      (       d   e[9        [
        TU -  5      (       d   e[!        S$S
S9n[%        TU-  5      [%        T5      U-  :X  d   e[9        [
        [!        SS
S9U -  5      (       d   e[;        S%S
S9n
[        U
" T5      S-  5      U
" T5      :X  d   e[9        [
        [=        S&5      5      (       d   eg )'Nc                  ,    [        [        SS5      5      $ )NrI   rL   )r   r0    r=   r;   <lambda>test_Abs.<locals>.<lambda>  s    c(1a.1r=   r?   r   rG   rH   rk   rI   g       g       @TrJ   r9   rt   rS   rA   r8   rz   rL   rM   rV   rW   rX      i9 rd   rE   r   r   	   rN   rP   rQ   Fc                  8   > [        T 5      R                  S5      $ )NrI   )r   fdiffrS   s   r;   r   r     s    s1v||Ar=   rs   r~   zim(acos(-i + acosh(-g + i))))r5   	TypeErrorr   r   r   r   r	   r   r   r   r   r   r   r   r   r   r   r[   r   r   r   r"   r
   r_   r   r2   r!   is_Mulr1   r   r   )rd   r9   r8   r   r   rs   r   rP   r   er~   rS   s              @r;   test_Absr   ~  s(   
9125>DAqQ=DG###!9>>T!!!q6Q;;q6Q;;r7a<<q6Q;;r7a<<s8s??s8r>>q2v;"rBw<2q1u:QrAv;#a&   r!t9#a&   tAv;#c!f*$$$qtAvax=AbDQqSM)))y|A&&&SVA&&&q6===&$r!uax"Q%(/B*CCCCsT"AqtAvax=AbDF3q6M)))qtAvaxz?ad1fSVm+++sAsD!AQw<1qs8s1v!}$$$q6;;q>T!W$$$q6SVq6191SV###q6191A1ttA!}- - -c!fH??s1vrl***SVQY;!QT#a&[/)))q62:QA&&&q!t91SV###q!t9RCE
"""AaC1qs7#$c"T(1a.5I2I.J(JJJJsAq!t9>>sAq!t9RC1IaK((((sd#Aq6;;q>d1gX%%%
rAd1gI~
	a$q'k!2	2T!aQi-5H	HB r7<<3#b'Q,.. 	
DGaQi$tAw,.Aq!thq!n$A	Aq6;;#Q1,,qRT!V}"""q1q5z?aa!e}3r7***r7b==s8r>>rAv;"rAbDy>Rsd#As4(AsAa5a5%%%a5&&&q6<<>T!W$$$
67 tAE{4A;&
'Cs8s?? qs8qQxAadFA88Qs1a4y[(((S!A#S!QU)$$$$S!A#sT"Aqs8s1vax S&40!34444t$A!a=AaD   S!:;<<<<r=   c                     [        SSS9n [        U 5      R                  [        5      R	                  5       nX[        U 5      -  U [        U * 5      -  -
  :X  d   eS H#  nUR                  X5      [        U5      :X  a  M#   e   [        S5      n[        U5      R                  [        5      [        U5      :X  d   e[        SSS9[        S5      p0[        U 5      R                  [        5      [        X S:  4U * S45      :X  d   e[        U5      R                  [        5      [        U5      :X  d   e[        U5      R                  [        5      U[        U5      -  :X  d   e[        SSS9n[        U5      R                  [        5      [        [        U-  [        U-  S:  4[        * U-  S45      :X  d   e[        U5      R                  [        5      [        U[        U5      -  5      :X  d   e[        U5      R                  [        5      [        US	-  * 5      :X  d   e[        SSS
9n[        [        [        * U -  5      [        [        * U-  5      -
  5      S	-  R                  [        5      [        [        U -  5      * [        [        * U-  5      -  S	-   [        [        * U -  5      [        [        U-  5      -  -
  :X  d   eg )NrS   TrA   )rk   rH   r   rG   rI   rd   r   rD   rE   rI   extended_real)r   r   r]   r(   r   r   r   r    r   r	   r   r   r   )rS   r9   rD   rd   s       r;   test_Abs_rewriter     s:   sAAy!((*A)A,9aR=0000vva|s1v%%% sAq6>>)$A...#D!6#;qq6>>)$	11f+Dz(JJJJq6>>)$A...q6>>$1T!W9,,,sd#Aq6>>)$	1Q3!q/QBqD$<(PPPP q6>>)$Qy|^(<<<<q6>>)$adU333s$'AaRT3r!t9$%q(11)<	QqS	#qbd)a#qbd)C!H"445 5 5r=   c                  n   [        SSS9n [        U S-  5      [        U 5      :w  d   e[        U S-  5      U S-  :w  d   e[        SSS9n [        U S-  5      [        U 5      :X  d   e[        U S-  5      U S-  :X  d   e[        SSSS9n[        SSSS	9n[        U5      U:X  d   e[        U5      U* :X  d   eg )
NrS   TrJ   rI   rA   nn)r{   rB   np)r|   rB   r   r   r   )rS   r   r   s      r;   test_Abs_realr      s     	sD!A1:Qq!t91sA1:Qq!t91 
$T	2B	$T	2Br7b==r7rc>>r=   c                     [        S5      n [        U 5      R                  b   e[        U 5      R                  SL d   e[        U 5      R                  b   e[        U 5      R
                  b   e[        U 5      R                  b   e[        U 5      R                  b   e[        U 5      R                  SL d   e[        SSS9n[        U5      R                  SL d   e[        U5      R                  SL d   e[        U5      R                  b   e[        U5      R
                  b   e[        U5      R                  SL d   e[        U5      R                  b   e[        U5      R                  SL d   e[        SSSS9n[        U5      R                  SL d   e[        U5      R                  SL d   e[        U5      R                  b   e[        U5      R
                  SL d   e[        U5      R                  SL d   e[        U5      R                  SL d   e[        SSS9n[        U5      R                  SL d   e[        U5      R                  SL d   e[        U5      R                  b   e[        U5      R
                  SL d   e[        U5      R                  SL d   e[        S	SS
9n[        U5      R                  SL d   e[        U5      R                  SL d   e[        U5      R                  b   e[        U5      R
                  b   e[        U5      R                  SL d   e[        SSS9n[        U5      R                  SL d   e[        U5      R                  SL d   e[        U5      R
                  b   e[        U5      R                  SL d   e[        SSS9n[        SSSS9n[        U5      R                  SL d   e[        U5      R                  SL d   e[        U5      R                  b   e[        SSS9n[        SSSS9n	[        U5      R                  SL d   e[        U	5      R                  SL d   e[        U5      R                  b   eg )NrS   T)finitezF)rK   r}   rs   rt   r   )rationalrD   r   r8   )evenne)rB   r   )oddno)rB   r   )r   r   r   is_extended_realis_rationalis_positiver   is_extended_positiveis_extended_nonnegativer   r   is_evenis_odd)
rS   r~   r   rs   r   rD   r   r   or   s
             r;   test_Abs_propertiesr     s   sAq6>>!!!q6""d***q6%%%q6%%%q6  (((q6&&...q6))T111s4 Aq6>>T!!!q6""d***q6%%%q6%%%q6  D(((q6&&...q6))T111sDu-Aq6>>T!!!q6""d***q6%%%q6%%%q6&&$...q6>>U"""sT"Aq6>>T!!!q6""d***q6%%%q6%%%q6>>U"""sT"Aq6>>T!!!q6%%%q6$$$q6%%%q6  D(((sD!Aq6>>T!!!q6$$$q6%%%q6  D(((sA	4e	,Bq6>>T!!!r7??e###q6>>!!!sA	4U	+Bq6==D   r7>>U"""q6==   r=   c                  `    [        SSS9n [        [        SU -   S-  -  5      SU -   S-  :X  d   eg )Nr9   Trt   rG   rI   )r   r   r	   )r9   s    r;   test_absr   N  s7     	sT"Aq!a%!|Q
***r=   c            	      L   [        S5      [        L d   e[        S5      S:X  d   e[        S5      [        :X  d   e[        [        5      [        S-  :X  d   e[        [        * 5      [        * S-  :X  d   e[        S[        -   5      [        S-  :X  d   e[        S[        -   5      [        [	        SS5      -  :X  d   e[        S[        -
  5      [        * S-  :X  d   e[        [        S[        -  [        -  5      5      S[        -  :X  d   e[        [        S[        -  [        -  5      5      S[        -  :X  d   e[        [        SS[        -  [        -  S-  -
  5      5      [        [	        S	S5      -  :X  d   e[        [        [        [        -  S
-  5      5      [        S
-  :X  d   e[        [        S[        -  5      5      SS[        -  -
  :X  d   e[        [        S[        -  [        -  S-  5      5      S[        -  S-  :X  d   e[        [        SS[        -  -
  5      5      SS[        -  -   :X  d   e[        [        [        SS[        -  -   5      5      5      S[        -  [        S5      [        S5      -  -   :X  d   e[        SSS9n [        [        U S[        -  -
  5      5      S:X  d   e[        S5      n[        U" S5      [        U" S5      -  -   5      R                  [        5      (       a   e[        S5      n[        [        [        U5      5      5      [        R                  Ld   e[        [        [        [        U5      5      5      5      [        R                  L d   e[        SSS9n [        [        U 5      5      [        R                  Ld   e[        [        [        U 5      5      5      [        R                  L d   e[        SSS9n[        U" U5      5      S:X  d   e[        S[        -   U" U5      -  5      [        S[        -   5      :X  d   e[        SSS9n[        U5      S:X  d   e[        U[        -  5      [        S-  :X  d   e[        SSS9n[        U5      [        :X  d   e[        U[        -  5      [        * S-  :X  d   e[        S5      n[!        [        U5      5      [        U5      :X  d   eU[        US-  -  -   n[        U5      [        SU[        -  -   5      :X  d   eSU-  S[        -  US-  -  -   n[        U5      [        SSU-  [        -  -   5      :X  d   e[#        SSS9nU[        U-  -   n[        U5      [        US[        -   -  5      :X  d   e[        XS-  5      [        US[        -   -  5      :X  d   eU[        U5      -  [        [%        U5      -  [        U5      -  -   n[        U5      R&                  S   U:X  d   eUS-   [        US-  S-
  -  -   n[        U5      R&                  S   U:X  d   e[        S5      nSU-  U" S5      S-
  -  SU-  U" S5      -  -
  n[        U5      [        SU-  5      :X  d   e[        U" S5      5      R(                  [         :X  a&  [        U" S5      5      R&                  U" S5      4:X  d   eg )Nr   rG   rH   rI   rM   rL   r   rW   rV   r      rX         i{   rk   rC   TrA   r~   rS   r   rs   )extended_positivert   r8   rv   )r   r   r   r	   r
   r   r   r%   r$   r&   r   r   atomsr   r   ra   r   r   r   r   r   )rC   r~   rS   rs   r8   r   s         r;   test_argr   U  s~   q6S==q6Q;;r7b==q6RT>>r7rc!eq1u:ArAv;"Xa^++++q1u:"Qy2a !QrT)))yBq!"be+++yQrT!VAX&'2hr1o+====s1R46{r!t###s2a4y>R!B$Y&&&s2a472:3r6"9,,,s319~"qt)+++s3q1Q3w< !RUSVDG^%;;;;sAs1qs7|"""A1Q4!AaD&=!''++++ 	sAs3q6{155(((s3s1v; AEE)))s$'As1v;aee###s3q6{quu$$$-Aqt9>>Aqt|AF+++sT"Aq6Q;;qs8r!tsT"Aq6R<<qs8s1usASVA&&&	AadF
Aq6SQqS\!!!
1qs1a4xAq6Sac!e_$$$$A	AaCAq6SAE^###qs8s1a!e9~%%%	#a&1SV8CF?"Aq6;;q>Q	
Q!QTAX,Aq6;;q>QA	!QqTAX1QqT!Aq6SAYqt9>>S S1Y^^!w%>>>%>r=   c                      [        S[        -   5      [        SS5      :X  d   e[        SSS9n [        SSS9n[        U [        U-  -   5      R	                  [        5      [        X5      :X  d   eg )NrG   rS   TrA   rd   )r   r	   r#   r   r]   )rS   rd   s     r;   test_arg_rewriter     s_    q1u:q!$$$sAsAq1Q3w<&%+555r=   c                    ^  [        S5      m [        T 5      R                  T SS9S:X  d   e[        T 5      R                  T SS9[        :X  d   e[	        [
        U 4S j5        [	        [
        U 4S j5        [        T 5      R                  T 5      S:X  d   e[        T 5      R                  T SS9[        S5      :X  d   eg )	NrS   rG   cdirr   rH   c                  D   > [        T [        -   5      R                  T SS9$ )NrG   r   )r   r	   as_leading_termr   s   r;   r   2test_arg_leading_term_and_series.<locals>.<lambda>  s    c!a%j8818Er=   c                  D   > [        ST -  5      R                  T [        S9$ )NrI   r   )r   r   r	   r   s   r;   r   r     s    c!A#h66q6Cr=   )r8   )r   r   r   r   r5   r   nseriesr3   r   s   @r;    test_arg_leading_term_and_seriesr     s    sAq6!!!A!.!333q6!!!B!/2555
9EF
9CDq6>>!!!!q6>>!q>!U1X---r=   c                     [        SSS9n [        SSS9n[        U 5      U * :X  d   e[        [        U -  5      [        U -  :X  d   e[        U5      U:X  d   e[        [        U-  5      [        * U-  :X  d   e[        X-  5      U* U -  :X  d   e[        [        U -  U-  5      [        U-  U -  :X  d   e[        S5      u  p#[        [        U5      5      U:X  d   e[        X#-   5      [	        U5      [	        U5      -   :X  d   e[        X#-
  5      [	        U5      [	        U5      -
  :X  d   e[        X#-  5      [	        U5      [	        U5      -  :X  d   e[        X#-  5      [	        U5      [	        U5      -  :X  d   e[        U* 5      [	        U5      * :X  d   e[        SSS9u  p#[        [        U5      5      U:X  d   e[        X#-   5      [        U5      [        U5      -   :X  d   e[        X#-
  5      [        U5      [        U5      -
  :X  d   e[        X#-  5      [        U5      [        U5      -  :X  d   e[        X#-  5      S	[        U5      -  [        U5      -  :X  d   e[        U* 5      [        U5      * :X  d   eg )
Nr9   T)antihermitianr:   )	hermitianx yFcommutativerG   )r   r   r	   r   r   )r9   r:   rS   rd   s       r;   test_adjointr     s7   s$'Asd#A1:!1Q3<1Q31:??1Q3<A2a413<A2a41Q3q5>QqSU"""5>DA71:!###15>Yq\IaL888815>Yq\IaL888815>Yq\IaL888815>Yq\IaL8888A2;9Q<-'''5e,DA71:!###15>WQZ'!*444415>WQZ'!*444415>WQZ'!*444415>Q^gaj8888A2;71:+%%%r=   c                  8   [        SSS9n [        SSS9n[        U 5      U :X  d   e[        [        U -  5      [        * U -  :X  d   e[        U5      U* :X  d   e[        [        U-  5      [        U-  :X  d   e[        X-  5      U * U-  :X  d   e[        [        U -  U-  5      [        U -  U-  :X  d   e[        S5      u  p#[        [        U5      5      U:X  d   e[        U5      R	                  5       [        :X  d   e[        X#-   5      [        U5      [        U5      -   :X  d   e[        X#-
  5      [        U5      [        U5      -
  :X  d   e[        X#-  5      [        U5      [        U5      -  :X  d   e[        X#-  5      [        U5      [        U5      -  :X  d   e[        U* 5      [        U5      * :X  d   e[        SSS9n [        SSS	9n[        U 5      R                  (       d   e[        U5      R                  b   e[        U5      R                  S
L d   eg )Nr9   TrA   r:   rE   r   rN   rP   rQ   F)r   r   r	   r   inverser   r_   )r9   r:   rS   rd   rP   s        r;   test_conjugater     s   sAsd#AQ<1QqS>aRT!!!Q<A2QqS>QqS   QS>aRT!!!QqSUqs1u$$$5>DAYq\"a'''Q<!Y...QUy|il::::QUy|il::::QUy|il::::QUy|il::::aR=Yq\M)))sd#As4(Aa5a5%%%a5&&&r=   c                  (   [        SSS9n [        [        U 5      5      [        U 5      :X  d   e[        [        U 5      5      [        U 5      :X  d   e[        [        U 5      5      [        U 5      :X  d   e[        [        U 5      5      [        U 5      :X  d   e[        [        U 5      5      [        U 5      :X  d   e[        [        U 5      5      [        U 5      :X  d   e[        S5      n [        U 5      [        U 5      :X  d   e[        U 5      U :X  d   eg )NrS   Fr   )r   r   r   r   r   s    r;   test_conjugate_transposer     s    s&AYq\"gaj000Yq\"gaj0009Q< IaL000WQZ IaL0009Q< IaL000WQZ IaL000sAQ<71:%%%Q<1r=   c                  ^   [        SSS9n [        U 5      U :X  d   e[        [        U -  5      [        U -  :X  d   e[        S5      u  p[        [        U5      5      U:X  d   e[        X-   5      X-   :X  d   e[        X-
  5      X-
  :X  d   e[        X-  5      X-  :X  d   e[        X-  5      X-  :X  d   e[        U* 5      U* :X  d   e[        SSS9u  p[        [        U5      5      U:X  d   e[        X-   5      [        U5      [        U5      -   :X  d   e[        X-
  5      [        U5      [        U5      -
  :X  d   e[        X-  5      [        U5      [        U5      -  :X  d   e[        X-  5      S[        U5      -  [        U5      -  :X  d   e[        U* 5      [        U5      * :X  d   eg )Nr9   TrJ   r   Fr   rG   )r   r   r	   r   )r9   rS   rd   s      r;   test_transposer     s   sD!AQ<1QqS>QqS   5>DAYq\"a'''QUqu$$$QUqu$$$QUqu$$$QUqu$$$aR=QB5e,DAYq\"a'''QUy|il::::QUy|il::::QUy|il::::QUq9Q</)A,>>>>aR=Yq\M)))r=   c                     SSK Jn Jn  [        S5      n[        SSS9n[	        S5      n0 nU" S5      U " S5      U4:X  d   eU" S	[
        -   5      U " S	[
        -   5      U4:X  d   eU" [        U5      S
S9[        U5      :X  d   eU" S	U-   S
S9S	U-   :X  d   eU" U" [
        5      U-   S
S9U" U " [
        5      5      U-   :X  d   eU" USS9U " U5      :X  d   eU" USS9U:X  d   eU" U" U5      SS9U" U " U5      5      :X  d   eU" S	U-   SS9U " S	U-   5      :X  d   eU" S	U" U5      -   SS9U " S	U" U " U5      5      -   5      :X  d   eU" U" U5      U-   5      u  pgUR                  U5      U" U5      U-   :X  d   e[        S5      n[        SSS9n	U" [        [        S5      U-  [        U* U-   S-  * SU	S-  -  -  5      -  S[        [        5      -  U	-  -  U[        * [        45      SS9[        [        S5      U	[        S5      -  [        [
        [        -  5      -  -  [        U	[        S5      -  S[        [
        [        -  5      -  -  [        [
        [        -  5      -  U " U* U-   5      S[        S5      -  -  -  S-  5      -  [        S5      -  U " U5      -  S[        [        5      -  -  U[        * [        45      :X  d   eg )Nr   )
polar_liftpolarifyrS   r   T)polarr~   rH   rG   Fr   )liftmusigmart   rI   )$sympy.functions.elementary.complexesr   r   r   r   r	   r   r   r)   r   r   r   r   )
r   r   rS   r   r~   ESnewexr   r   r   s
             r;   test_polarifyr     s   KsAs$AA	BB<JrNB////AE?z!a%0"5555CF'3q6111AE&!a%///AaD1H5)Qz!}-=-AAAAAD!Z]222AD!Q&&&AaDt$*Q-(8888AE%AE)::::A!H4(Jq1Z];K7K,LLLL1Q4!8$KE::dqtax'''	B7T*E a3"q1}aqj9::Ad2hJu<LM	
RC	 "%-d1guYq\7IIVWXZVZO6[.[U9Q<1Yqt_#45i"oEjRTQTWXQXFY	
9Q<G  	/%aL/))3A/789$r(
/DFG"b\&SS S Sr=   c                     SSK Jn JnJn  SSKJn  SSKJn  SSKJ	n  SSK
JnJn  SSKJn  [        S[         -  5      S	-   n	[#        S[         -  5      S	-   n
U" S	5      S	:X  d   eU" U	5      U
:X  d   eU" U	S
-  5      U
S
-  :X  d   eU" X-  5      X-  :X  d   eU" X-  5      X-  :X  d   eU" X-   5      X-   :X  d   eU" [%        ['        U	5      5      5      [%        ['        U
5      5      :X  d   eU" US
[(        -  5      nU" U5      U:X  d   eU" [%        U5      5      [%        U5      :X  d   eU" X-  SS9X-  :X  d   eU" U" XU	-  5      5      U" XU
-  5      :X  d   eU" ['        U	5      5      ['        U
5      :X  d   eU" U" U	5      5      U" U
5      :X  d   eU" U" U	5      5      U" U
5      :X  d   eU" U" U	5      5      U" U
5      :X  d   eU" U" X5      5      U" X5      :X  d   eU" U" ['        U	5      ['        U	[        S5      -   5      5      5      U" ['        U
5      ['        U
S	-   5      5      :X  d   eU" U" U " S5      S
[        S5      -  5      5      U" SS
5      :X  d   eU" [+        U	S5      5      [+        U
S5      :X  d   eU" U" U	S5      5      U" U
S5      :X  d   eU" U " U5      S:  5      US:  :X  d   eU" S5      SL d   eg )Nr   )r   principal_branch
unpolarify)Ne)tanh)erf)gamma
uppergammar   r   rG   rI   T)exponents_only)r   r   r   r   sympy.core.relationalr   %sympy.functions.elementary.hyperbolicr   'sympy.functions.special.error_functionsr   'sympy.functions.special.gamma_functionsr   r   	sympy.abcrS   r   r	   r   r   r%   r   r   )r   r   r   r   r   r   r   r   rS   rs   urP   s               r;   test_unpolarifyr  *  s   __(:;K!A#AAaC1Aa=Aa=Aadq!t###adqt###ac?ac!!!ae%%%d3q6l#tCF|333 	AbD!Aa=Ad1g$q'))) ad40AD888jqD)*jqD.AAAA c!fQ'''d1g$q')))eAh58+++c!fQ'''j&':a+;;;;jQQ1-=)>?@3q63q1u:&' ' 'jA)A,?@1a   bAh2a8+++bAh2a8+++jma'(QU333 dt###r=   c                     [        S5      n [        U 5      R                  SS9[        U 5      :X  d   e[        U 5      R                  SS9[        U 5      :X  d   e[	        U 5      R                  SS9[	        U 5      :X  d   eg )NrS   T)trig)r   r   r   r   r   r   s    r;   test_issue_4035r  Y  sn    sAq6==d=#s1v---7>>t>$Q///q6==d=#s1v---r=   c                  `    [        S5      n [        [        U 5      5      [        U 5      :X  d   eg )NrS   )r   r   r   s    r;   test_issue_3206r
  `  s%    sAs1v;#a&   r=   c                  |   [        SSS9n [        SSS9n[        S5      nU" U 5      R                  5       R                  U 5      U" U 5      R                  U 5      R                  5       :X  d   eU" U5      R                  5       R                  U5      U" U5      R                  U5      R                  5       * :X  d   eg )NrS   TrA   rd   rE   r~   )r   r   r   r[   rS   rd   r~   s      r;   $test_issue_4754_derivative_conjugater  e  s    sAsd#AAaDNN""1%!A$))A,)A)A)CCCCaDNN""1%1Q499Q<*B*B*D)DDDDr=   c                     [        SSS9n [        SSS9n[        S5      n[        U" U 5      5      R                  U 5      [        U" U 5      R                  U 5      5      :X  d   e[	        U" U 5      5      R                  U 5      [	        U" U 5      R                  U 5      5      :X  d   e[        U" U5      5      R                  U5      [
        * [	        U" U5      R                  U5      5      -  :X  d   e[	        U" U5      5      R                  U5      [
        * [        U" U5      R                  U5      5      -  :X  d   e[        U" U 5      5      R                  U 5      R                  U" U 5      S[
        U -  -   5      R                  5       U [        SU S-  -   5      -  :X  d   e[        U" U 5      5      R                  U 5      R                  U" U 5      S[
        U S-  -  -   5      R                  5       SU -  SU S	-  -   -  :X  d   e[        U" U5      5      R                  U5      R                  U" U5      SU-   5      R                  5       U* [        SUS-  -
  5      -  :X  d   e[        U" U5      5      R                  U5      R                  U" U5      [
        US-  -   5      R                  5       SU-  SUS	-  -   -  :X  d   eg )
NrS   TrA   rd   rE   r~   rG   rI   rM   )r   r   r   r[   r   r	   r   r   r   r   r   r  s      r;   test_derivatives_issue_4757r  m  s9   sAsd#AAad8==r!A$))A,////ad8==r!A$))A,////ad8==r"QqTYYq\"22222ad8==r"QqTYYq\"22222qt9>>!!!!A$AaC05571T!ad(^;KKKKqt9>>!!!!A$AadF
388:ac1q!t8nLLLqt9>>!!!!A$A.335!DQTN9JJJJqt9>>!!!!A$AqD1668AaCQTNJJJr=   c                     SSK Jn   [        S5      n[        S5      n[        S5      n[        U/U/U//5      nUR	                  5       nU[        U[        [        U5      S-  [        U5      S-  -   [        U5      S-  -   5      -  /U[        [        U5      S-  [        U5      S-  -   [        U5      S-  -   5      -  /U[        [        U5      S-  [        U5      S-  -   [        U5      S-  -   5      -  //5      :X  d   e[        US-  US-  US-  -   US-  -   -  US-  US-  US-  -   US-  -   -  -   US-  US-  US-  -   US-  -   -  -   5      Ul        U " UR                  5      S:X  d   eg )Nr   r   v0v1v2rI   rG   )sympy.simplify.simplifyr   r   r*   
normalizedr   r   norm)r   r  r  r  VUs         r;   test_issue_11413r  {  s   0	B	B	BbT2$ A	ASWaZ#b'1*$s2wz1223SWaZ#b'1*$s2wz1223SWaZ#b'1*$s2wz12235 6 6 6 6 "a%QQQ./"a%QQQ9N2OORTVWRWY[]^Y^acefafYfikmninYnRoopAFAFFq   r=   c                  6   SSK Jn JnJnJn  [        S5      n[        SSS9nU" S[        -   5      U " S[        -   [        5      :X  d   eU" SU-   5      U " SU-   [        5      :X  d   e[        U" S[        -   S-  5      [        S-  5      (       d   e[        U" S[        -
  S-  5      [        * S-  5      (       d   e[        U " S[        -   S-  S	[        -  5      [        S-  5      (       d   e[        U " S[        -
  S-  S	[        -  5      [        * S-  5      (       d   eU" U" U[        5      5      U " U[        5      :X  d   eU" U" S[        -   5      5      U" S[        -   5      :X  d   eU " U" S[        -   5      S[        -  5      U " S[        -   S[        -  5      :X  d   eU " U" S[        -   5      S	[        -  5      U " S[        -   S	[        -  5      :X  d   eU " U" S[        -   5      [        5      U " U" S[        -   5      [        5      :X  d   eU" U" S[        -   5      5      [        S
-  :X  d   eU " SU-  U5      U " XU5      :X  d   eU " [        U-  U5      U " XU5      :X  d   e[        U" S[        -   5      5      [        S[        -   5      :X  d   eg )Nr   )periodic_argumentr   r   unbranched_argumentrS   rs   Trt   rI   rG   rL   rM   )r   r  r   r   r  r   r	   r   r<   r   r   )r  r   r   r  rS   rs   s         r;   test_periodic_argumentr    s   {{sAsT"Aq1u%):1q5")EEEEq1u%):1q5")EEEE'Q
3RT::::'Q
3bSU;;;;%q1uqj!B$7A>>>>%q1uqj!B$7"Q????/267!R ! ! ! z!a%015HQ5OOOOZA."5!a%2&' ' 'ZA."5!a%2&' ' 'ZA.3*QU+R01 1 1 z!a%01RT999QqS!$(9!(????RT1%):1)@@@@z!a% !SQZ///r=   c                  f    SSK Jn   [        U " S[        -   S-  [        S-  5      S5      (       d   eg )Nr   r   rG   rI   )r   r   r<   r	   r   r   s    r;   test_principal_branch_failr!    s/     F$a!eaZA6::::r=   c                     SSK Jn Jn  [        SSS9n[        S5      n[        SSS9nU" U " U5      U5      U" X25      :X  d   eU" U " S[        -   5      U5      U" S[        -   U5      :X  d   eU" SU-  U5      SU" X25      -  :X  d   eU" S	[
        5      [        S5      :X  d   eU" S
S[
        -  5      [        [        [
        -  5      :X  d   eU" S
[
        5      [        S5      :X  d   eU" [        S[
        -  [        -  5      U-  S[
        -  5      U" [        [        [
        -  5      U-  S[
        -  5      :X  d   eU" U[        [
        [        -  5      -  S[
        -  5      U[        [        * [
        -  5      -  :X  d   eU" [        [        * [
        -  S-  5      U " U5      -  S[
        -  5      [        [        * [
        -  S-  5      U-  :X  d   e[        U" S	[        -   S-  S[
        -  5      S[        -  5      (       d   e[        U" S	[        -   S-  S[
        -  5      S[        -  5      (       d   e[        U" S	[        -   S-  S	[
        -  5      S[        -  5      (       d   eU" U[        5      R                  UL d   eU" US5      R                  UL d   eU" U[        * 5      R                  UL d   eU" U[        5      R                  UL d   eg )Nr   )r   r   rs   Trt   rS   rv   rI   rG   rH   rL   )r   r   r   r   r	   r   r   r<   r   r   r   )r   r   rs   rS   negs        r;   test_principal_branchr%    s   SsT"AsA
t
$CJqM1-1A!1GGGGJq1u-q15Ea!eQ5OOOOAaC#q)9!)?'????Ar"il222B"%1R4888B#y|333Iad1f-a/261R4*AbD12 2 2C	"Q$/26#i2>N:NNNNIqbeAg.z#>"E1"R%'3   $a!eaZ26!<<<<$a!eaZ26!<<<<$a!eaZ26!<<<< Aq!&&*::::Ar"''+;;;;As#((,<<<<As#((,<<<<r=   c                     [         S-  n [        U 5      n[        X-
  5      S:X  d   e[        X-
  5      X-
  :X  d   e[	        S5      n[         S-  n[         S-  n[        U5      S-  [        U5      S-  -   nXE-  U-
  U-   nSSKJn  [        U" U5      5      S:X  d   eSS	S[        SS
5      4 H#  n[        UR                  X(5      5      S:X  a  M#   e   g )Nr   rG   rS   i$rI   r   r  o      r   )r   r   r   r   r   r$   r%   r  r   r
   r   )	r8   rD   rS   epsbigoner   r   xis	            r;   test_issue_6167_6151r-    s    
DAAA;!qu:sA
e)C
d(C
a&!)c!fai
C#A0!!!B8Ar?+AFF1M"a''' ,r=   c                      SSK Jn   [        SSS5      nU " US   5      US   :X  d   eU " US   US   -  5      US   US   -  :X  d   eg )Nr   )r   rU   rI   )r   r   )rG   r   )r   r   r,   )r   rU   s     r;   test_issue_14216r/    sY    ?S!QAag!D')))agago&!D'!D'/999r=   c                  j    [        SSS9n [        U [        SU S:  4SU -
  S45      -   5      (       d   eg )NrC   TrA   r   rG   )r   r   r    )rC   s    r;   test_issue_14238r1    s;    sAq9aQZ!a%778888r=   c                      [        S5      n [        SSU -  -
  5      S-
  SU -
  4 H&  n[        U5      [        U* 5      -
  S:X  a  M!   U5       e   g )NrS   r   rI   rG   r   r   )rS   r9   s     r;   test_issue_22189r3    sQ    sA1qs7maQ'1vQB1$'a'$ (r=   c                  l   [        SSSS9n [        SSS9n[        SSSS9n[        U 5      R                  b   e[        U 5      R                  SL d   e[        U5      R                  b   e[        U5      R                  b   e[        U5      R                  SL d   e[        U5      R                  b   eg )	NnonrealFT)rB   r   nonimaginaryrE   nonzerononimaginary)r}   rF   )r   r   r   r   )nrninznis      r;   test_zero_assumptionsr;    s    		d	3B	%	0B'euEDb6>>!!!b6>>U"""b6>>!!!b6>>!!!d8u$$$d8###r=   c                      [        SSS9n [        SSS9n[        [        U " U5      5      U " U5      5      nUR	                  5       [        U " U5      5      :X  d   eg )Nr~   TrA   rS   )r   r   r   r   r   r   )r~   rS   r   s      r;   test_issue_15893r=    sN    4 AsA	C!Iqt	$B779QqT
"""r=   N)lsympy.core.functionr   r   r   r   r   sympy.core.numbersr   r	   r
   r   r   r   r   r   r   r   sympy.core.singletonr   sympy.core.symbolr   r   r   r   r   r   r   r   r   r   r   &sympy.functions.elementary.exponentialr   r   r   (sympy.functions.elementary.miscellaneousr   $sympy.functions.elementary.piecewiser    (sympy.functions.elementary.trigonometricr!   r"   r#   r$   r%   r   r&   'sympy.functions.special.delta_functionsr'   r(   sympy.integrals.integralsr)   sympy.matrices.denser*   %sympy.matrices.expressions.funcmatrixr+   "sympy.matrices.expressions.matexprr,   sympy.matrices.immutabler-   r.   sympy.matricesr/   sympy.sets.setsr0   sympy.core.exprr1   r2   sympy.series.orderr3   sympy.testing.pytestr4   r5   r6   r<   ri   rp   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r
  r  r  r  r  r!  r%  r-  r/  r1  r3  r;  r=  r   r=   r;   <module>rQ     sh   Q Q G G G $ " / h h h H H 9 : R R 6 K . ' @ ; M ' $ % 2 $ = =%
]>@W>rw0t:< 
) 
)e=P54$9!x+B?J6.&6'4*,  S  SF,$^.!
EK!0< ; ;=< ( ( :9($  # #r=   