
    sgV                        d dl mZ d dlmZmZmZmZ d dlmZm	Z	m
Z
mZmZmZmZmZ d dlmZ d dlmZ d dlmZmZ d dlmZmZmZmZmZmZmZmZ d dl m!Z!m"Z"m#Z# d d	l$m%Z% d d
l&m'Z' d dl(m)Z)m*Z*m+Z+m,Z,m-Z- d dl.m/Z/ d dl0m1Z1m2Z2 d dl3m4Z4 d dl5m6Z6 d dl7m8Z8 d dl9m:Z: d dl;m<Z<m=Z= d dl>m?Z? d dl@mAZA d dl mBZB d dlmCZC d dlDmEZEmFZFmGZG d ZHd ZId ZJd ZKd ZLeEd        ZMd ZNd ZOd  ZPd! ZQd" ZRd# ZSd$ ZTd% ZUd& ZVd' ZWd( ZXeGd)        ZYd* ZZd+ Z[d, Z\d- Z]d. Z^d/ Z_d0 Z`eEd1        Zad2 ZbeEd3        Zcd4 Zdd5 Zed6 Zfd7 ZgeGd8        Zhy9):    )Expr)
DerivativeFunctionLambdaexpand)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)XFAILraises_both_exp_powc                 T    t        | j                         |j                         d      S )z7Check whether two complex numbers are numerically closegư>)r   n)abs     b/var/www/html/venv/lib/python3.12/site-packages/sympy/functions/elementary/tests/test_complexes.pyN_equalsr;      s    qssue$$    c                     t        d      \  } }t        dd      \  }}t        dd      }t        dd      }t        t              t        u sJ t        t              t        u sJ t        t               t         u sJ t        d      dk(  sJ t        d	      d	k(  sJ t        d
      d
k(  sJ t        t
              t
        k(  sJ t        t
               t
         k(  sJ t        t        |       sJ t        | t        z        t        |        k(  sJ t        |t        z        dk(  sJ t        |      |k(  sJ t        |t        z        t        |z  k(  sJ t        |      dk(  sJ t        | |z         t        |       t        |      z   k(  sJ t        | |z         t        |       |z   k(  sJ t        t        |             t        |       k(  sJ t        dt        z         dk(  sJ t        | t        z         t        |       k(  sJ t        | |t        z  z         t        |       t        |      z
  k(  sJ t        | |t        z  z         t        |       k(  sJ t        t        dt        z              t        d      k(  sJ t        dt        z   dz        j                  d      dk(  sJ t        t        |             t        |       k(  sJ t        t        |             t        |       k(  sJ t        |       j                         t        |       dfk(  sJ t        ||z  | z        j                  |      t        || z        k(  sJ t        ||z  | z        j                  |      t        |z  t        |       z  k(  sJ t        t        ||t        z  z               |dz  |dz  z   t        d	d      z  t!        t#        ||      dz        z  k(  sJ t        |d|t        z  z   z        d|z  k(  sJ t        d	t        ||t        z  z         z   dz        |dz  |dz  z   t        d	d      z  t!        t#        ||      dz        z  dz  t$        j&                  z   k(  sJ t        |       j)                  t              | t$        j*                  t        |       z  z
  k(  sJ | t        |      z   j)                  t        t              | |z   t$        j*                  t        |      z  z
  k(  sJ t        dd      }t        dd      }t        d      } t        |      j,                  sJ t        |       j,                  J t        |      j,                  du sJ t        t$        j.                        t$        j0                  u sJ t        d      \  }}}	t3        d||      }
t        |
      t$        j&                  |
t        |
      z   z  k(  sJ t5        d	dt        z  z   dgddt        z  gg      }
t        |
      t5        d	dgddgg      k(  sJ t7        d	dt        z  z   ddt        z  z
  gddt        z  gg      }
t        |
      t7        d	dgddgg      k(  sJ t9        t;        d      D cg c](  }t;        d      D cg c]  }d|z  |t        z  z    c}* c}}      }t        |      t5        g dg dg dg dg dg      z
  t5        j<                  d      k(  sJ t        |      t5        g dg dg dg dg dg      z
  t5        j<                  d      k(  sJ t?        ddtA        ||f||t        z  z               }t        |      t5        g dg d g d!g      k(  sJ y c c}w c c}}w )"Nx,ya,bTrealri	imaginaryr         complex      r8   	algebraicttranscendentalxFn m lA   )r   r   r   r   r   )rH   rH   rH   rH   rH   )rL   rL   rL   rL   rL   )   rW   rW   rW   rW   )   rX   rX   rX   rX   )r   rF   rH   rK   rL   )r   r   r   )rF   rF   rF   )rH   rH   rH   )!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   )rR   yr8   r9   rB   rC   rO   r7   mlrT   jXs                r:   test_rerh      s   5>DAq5t$DAqsAsd#Ac7c>>b6R<<rc7rc>>a5A::a5A::b6R<<a5A::qb6aR<<Rac7r!ufac7a<<a5A::ac7a!ea5A::a!e911%%%a!e91	!!!be91a!e9>>a!e91a!A#g;"Q%"Q%-'''a!A#g;"Q%c!A#h<3q6!!!q1uqj>   .!333ilr!u$$$RUr!u$$$a5BqE1:---ac!e9>>!1Q3'''ac!e9>>!!BqE	)))Q1Wa4!Q$;!Q7E!QKM8JJK K Ka1qs7m!###q4AaC= !#$	
A1x1~%c%1+a-&88:QVVCD D D a5==AOOBqE$9 99991Ir2&!a%!//"Q%2G*GGGGsd#As4(AsAa5a5%%%a5&&&a AEE)))gGAq!S1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F%(3QqsQqSy3FGAa56?****	, - - 17Q	@ @ @ a56?****	, - - 17Q	@ @ @ 	q!VQFA!G45Aa5FIy)<==== 4Fs   -])
?]$])
$])
c            
         t        d      \  } }t        dd      \  }}t        dd      }t        dd      }t        t              t        u sJ t        t        t
        z        t        u sJ t        t         t
        z        t         u sJ t        d      dk(  sJ t        d	      dk(  sJ t        d
      dk(  sJ t        t        t
        z        t        k(  sJ t        t         t
        z        t         k(  sJ t        t        |       sJ t        | t
        z        t        |       k(  sJ t        |t
        z        |k(  sJ t        |      dk(  sJ t        |t
        z        dk(  sJ t        |      t
         |z  k(  sJ t        | |z         t        |       t        |      z   k(  sJ t        | |z         t        |       k(  sJ t        | |t
        z  z         t        |       |z   k(  sJ t        t        |       t
        z        t        |       k(  sJ t        dt
        z         d	k(  sJ t        | t
        z         t        |       d	z   k(  sJ t        | |t
        z  z         t        |       t        |      z   k(  sJ t        | |t
        z  z         t        |       |z   k(  sJ t        t        dt
        z              t        dz  k(  sJ t        dt
        z   dz        j                  d      dk(  sJ t        t        |             t        |        k(  sJ t        t        |             t        |       k(  sJ t        |       j                         t        |       dfk(  sJ t        ||z  | z        j                  |      t        || z        k(  sJ t        ||z  | z        j                  |      t
         t        || z        z  k(  sJ t        t        ||t
        z  z               |dz  |dz  z   t!        d	d      z  t#        t%        ||      dz        z  k(  sJ t        |d|t
        z  z   z        ||z  k(  sJ t        d	t        ||t
        z  z         z   dz        |dz  |dz  z   t!        d	d      z  t#        t%        ||      dz        z  dz  k(  sJ t        |       j'                  t              t(        j*                   | t        |       z
  z  k(  sJ | t        |      z   j'                  t        t              | t(        j*                  |t        |      z
  z  z
  k(  sJ t        dd      }t        dd      }t        d      } t        |      j,                  sJ t        |       j,                  J t        |      j,                  du sJ t        t(        j.                        t(        j0                  u sJ t        d      \  }}}	t3        d||      }
t        |
      t(        j4                  dt
        z  z  |
t        |
      z
  z  k(  sJ t7        d	dt
        z  z   dgddt
        z  gg      }
t        |
      t7        ddgddgg      k(  sJ t9        d	dt
        z  z   ddt
        z  z
  gddt
        z  gg      }
t        |
      t9        ddgddgg      k(  sJ t;        t=        d      D cg c]%  }t=        d      D cg c]  }|t
        z  |z    c}' c}      }t?        t=        d      D cg c]  }tA        t=        d             c}      }t        |      jC                         |k(  sJ tE        ddtG        ||f||t
        z  z               }t        |      t7        g dg dg dg      k(  sJ y c c}w c c}w c c}w )Nr>   r?   Tr@   rB   rC   rD   r   rF   rG   rH   rI   rL   r8   rM   rO   rP   rR   FrS   rT   rU   rK   rV   )r   rF   rH   )$r   r   r   r   r   r	   r   r1   r   r   r   r   r   rY   rZ   r   r
   r%   r#   r\   r   r]   r^   r_   r`   r,   Oner*   r-   r.   ra   r/   listas_immutabler+   r   )rR   rc   r8   r9   rB   rC   rO   r7   rd   re   rT   rg   Ys                r:   test_imro      s   5>DAq5t$DAq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??a!e911%%%a!e91a!A#g;"Q%!)###beAg;"Q%a!e9>>a!e91	!!!a!A#g;"Q%"Q%-'''a!A#g;"Q%!)###c!A#h<2a4q1uqj>   .!333il1v%%%RUr!u$$$a5BqE1:---ac!e9>>!1Q3'''ac!e9>>!R!W,,,Q1Wa4!Q$;!Q7E!QKM8JJK K Ka1qs7m!###q4AaC= !#$	
A1x1~%c%1+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GAq!S1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(!acAg(;	=AeAh7d58n78Aa51$$$q!VQFA!G45Aa5FIy)<==== );7s   2^ ];^ 5^;^ c            
         t        d      dk(  sJ t        d      dk(  sJ t        dt        z        t        k(  sJ t        dt        z        t         k(  sJ t        d      dk(  sJ t        dd	      j                         dk(  sJ t        t        d	      j                         dk(  sJ t        t              t        u sJ t        d
d
t        z  z         j                         t        d
      d
d
t        z  z   z  dz  k(  sJ t        d
dt        z  z         j                         t        d
dt        z  z         k(  sJ t        d
d
t        z  z         j                         t        dt        z         k(  sJ t        t        t        dt        d      z
                    dk(  sJ t        t        dt        d      z
              t        k(  sJ t        d      } t        |       j                  du sJ t        |       j                  du sJ t        |       j                  J t        |       j                  J t        |       j                  J t        |       j                  J t        |       j                         t        |       k(  sJ t        d| z        t        |       k(  sJ t        d
| z        t        |       k(  sJ t        t        | z        t        t        |       z  k(  sJ t        dt        z  | z        t         t        |       z  k(  sJ t        t        |             t        t        |             k(  sJ t        dd      }t        dd      }t        dd      }t        d
|z  | z        t        |       k(  sJ t        || z        t        |        k(  sJ t        ||z  | z        t        |       k(  sJ t        dd      } t        |       j                  du sJ t        |       j                  du sJ t        |       j                  du sJ t        |       j                  du sJ t        |       j!                  |       d
t#        t         | z        z  k(  sJ t        |       j                         | t%        |       z  k(  sJ t        t        |             t        |        k(  sJ t        dd      } t        |       j                  du sJ t        |       j                  du sJ t        |       j                  du sJ t        |       j                  J t        |       j!                  |       d
t#        |       z  k(  sJ t        |       j                         t        |       k(  sJ t        t        |             t        |       k(  sJ t        dd      } t        |       j                  du sJ t        |       j                  du sJ t        |       j                  du sJ t        |       j                  du sJ t        |       j                         | t%        |       z  k(  sJ t        t%        |             dk(  sJ t%        t        |             dk(  sJ t        dd      } t        |       j                  du sJ t        |       j                  du sJ t        |       j                  du sJ t        |       j                  du sJ t        |       j                         | t%        |       z  k(  sJ t        t%        |             dk(  sJ t%        t        |             dk(  sJ d} t        |       j                  du sJ t        |       j                  du sJ t        |       j                  du sJ t        |       j                  du sJ t        |       j                         dk(  sJ t        t%        |             dk(  sJ t%        t        |             dk(  sJ t        ddd      }t        |      j                  du sJ t        |      j                  du sJ t        |      j                  du sJ t        |      j                  du sJ t        |      d
z  dk(  sJ t        |      dz  j&                  t        |      dfk(  sJ t        t        dd            j(                  sJ t        t        dd            j*                  J t        t        dd            j(                  J t        t        dd            j*                  sJ t        t        dd            j(                  J t        t        dd            j*                  J t        t        ddd            j*                  J t        dd      t        d      }} t-        d      }t        |       j/                  t0              t1        d| dkD  fd| dk  fd      k(  sJ t        |      j/                  t0              t        |      k(  sJ t        |       j/                  t2              d
t3        | t5        d      d
z        z  dz
  k(  sJ t        |      j/                  t2              t        |      k(  sJ t        |      j/                  t$              t1        dt7        |d      f|t%        |      z  df      k(  sJ t         ||            j/                  t$              t1        dt7         ||      d      f ||      t%         ||            z  df      k(  sJ t        t9        t        t:        z        t:        z        t4        j<                  u sJ t        d d!t        d      z  z          t        dt        d      z         z   t        ddt        d      z  z         z   }t        |      j>                  t         u st        |      dk(  sJ dt        d
      z   d
t        d      z  z
  d"t        d!      z  z   }tA        |dz        tC        dd      z  }||z
  }	t        |	      j>                  t         u st        |	      dk(  sJ y y )#Ng333333?rF   g333333rG   rK   rU   r   F)evaluaterH   rL   rR   Trj   ppositiver7   negativerd   rD   r@   )nonzeronz)rw   integer)nonnegative)nonpositive)rA   zerorc   f)r   T)H0
   rW   3  )"r   r	   doitr   r   r   simplifyr   r   	is_finite
is_complexis_imaginary
is_integeris_realis_zeror   rZ   r'   r   argsis_nonnegativeis_nonpositiver   r\   r    r(   r   r   r   r   NegativeOnefuncr   r
   )
rR   rr   r7   rd   rx   rc   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#;qA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A7<<447a<//<r<   c                     t         dz  } | j                         | dfk(  sJ t        d      }t        |      j                         t	        |      dz  t        |      dz  z   t        dd      z  t        t        t        |      t	        |            dz        z  t	        |      dz  t        |      dz  z   t        dd      z  t        t        t        |      t	        |            dz        z  fk(  sJ t        dd	      \  }}dt        ||t        z  z         z   dz  j                         |dz  |dz  z   t        dd      z  t        t        ||      dz        z  dz  t        j                  z   |dz  |dz  z   t        dd      z  t        t        ||      dz        z  dz  fk(  sJ t        |dz        j                         t        |dz        dfk(  sJ t        d
d      }t        |dz        j                         dt        |      fk(  sJ dt        z   dt        z
  z  j                         dk(  sJ dt        z   dz  dt        z
  z  j                         dk(  sJ y )N  r   rR   rH   rF   rL   r?   Tr@   rC   rD   )r   rF   rK   )rj   r   )r   rY   r   r   r   r   r
   r$   r#   r%   r   r	   r   r[   abs)r7   rR   r8   r9   rC   s        r:   test_as_real_imagr   R  sP   
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$DAqa!A#g!//11q!tha U1a[]+,,-.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                     t         dz  } t        |       }t        d      }| |z
  j                         dk(  sJ t	        | |z
        dk(  sJ | |z
  j                  d||i      dkD  sJ | |z
  j                  d||i      dkD  sJ y )Nr   rR   rF   subsr   rH   )r   intr   roundr   r7   )r7   rC   rR   s      r:   test_sign_issue_3068r   p  s    
DAAAsAE==?aA;! E99QaV9$q(((E99QaV9$q(((r<   c                     t        t        d        t        d      \  } t        t                    t              k(  sJ t        | z        j                  t        u sJ t        d      dk(  sJ t        d      dk(  sJ t        d      dk(  sJ t        t              dk(  sJ t        t               dk(  sJ t        t              t        u sJ t        t              t        u sJ t        t        t        z        t        k(  sJ t        t         t        z        t        k(  sJ t        t        z        t              k(  sJ t        t         z        t              k(  sJ t        dz        dt              z  k(  sJ t        dz        d	t              z  k(  sJ t        dt        z  z  | z        dt        z  t        | z        z  k(  sJ t        t                    t              k(  sJ t        t                    t              k(  sJ t              j                  d
      t        t              dz  t              dz  z         k(  sJ t!        dd
      }t        dt        z  z  |z        dt        z  |z  t              z  k(  sJ t        dt        z  t        z  z  |z        dt        z  |z  t              z  k(  sJ t!        dd
      t!        dd
      }t        d|z        dk(  sJ d|z  z  t              d|z  z  k(  sJ t              j#                        t              k(  sJ t%              t              k(  sJ t              dz  dz  t              z  k(  sJ t              dz  dz  k(  sJ t              d|z  z  j&                  t              d|z  fk(  sJ dt              z  j&                  t              dfk(  sJ dt              dz  z  ddz  t              z  z  k(  sJ t              dz  t              dz  z  k(  sJ t        dz        dz  t              z  k(  sJ t        t        t        z        t)        t         dz        k(  sJ t        ddt        z  z   ddt        z  z   z        dt)        dt+        t-        dd            z        z  k(  sJ t!        dd
      } t        t        | z        dk(  sJ t!        d      } t        t        | z        t)        t         t        |       z  dz        k(  sJ t!        dd
      t              j#                        t               k(  sJ t        ddt        d      z  z          t        dt        d      z         z   t        ddt        d      z  z         z   }t%        |      j                  t
        u st%        |      dk(  sJ dt        d      z   dt        d      z  z
  dt        d      z  z   }t        |dz        t-        dd      z  }||z
  }t%        |      j                  t
        u st%        |      dk(  sJ t        dt)        t        t        z  dz        z        dk(  sJ t        ddt        z   z        dk(  sJ t        ddt        z
  z        dt)        t              z  k(  sJ t        t              t        u sJ t        t               t        u sJ t        t        t        z         t        u sJ t        t        t        t        z  z         t        u sJ t!        dd
      }t!        d d
!      }t!        d      t        |      j.                  sJ t              j.                  J t        |      j.                  d"u sJ t              j1                         t              k(  sJ t        t2        fd#       t        t5        dt        z
        t5        dt        z         z        }t%        |      |k(  sJ t%        dz        dt              z  k(  sJ t%        ddz  z        }	|	j6                  r|	dt        dz        z  k(  sJ t9        t
        | z        sJ t9        t
        dz   z        sJ t9        t
        | z        sJ t!        d$d
      }t%        |z        t%              |z  k(  sJ t9        t
        t!        dd
      | z        sJ t;        d%d
      }
t         |
      dz         |
      k(  sJ t9        t
        t=        d&            sJ y )'Nc                  ,    t        t        dd            S )NrH   rK   )r   r0    r<   r:   <lambda>ztest_Abs.<locals>.<lambda>  s    c(1a.1 r<   r>   r   rF   rG   rj   rH   g       g       @TrI   r8   rs   rR   r@   r7   ry   rK   rL   rU   rV   rW      i9 rc   rD   r   r   	   rM   rO   rP   Fc                  8    t               j                  d      S )NrH   )r   fdiffrR   s   r:   r   ztest_Abs.<locals>.<lambda>  s    s1v||A r<   rr   r}   zim(acos(-i + acosh(-g + i))))r4   	TypeErrorr   r   r   r   r	   r   r   r   r   r   r   r   r   r   r   rZ   r   r   r   r"   r
   r^   r   r2   r!   is_Mulr1   r   r   )rc   r8   r7   r   r   rr   r   rO   r   er}   rR   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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t$A!a=AaD   S!:;<<<r<   c                     t        dd      } t        |       j                  t              j	                         }|| t        |       z  | t        |        z  z
  k(  sJ dD ]"  }|j                  | |      t        |      k(  r"J  t        d      }t        |      j                  t              t        |      k(  sJ t        dd      t        d      }} t        |       j                  t              t        | | dk\  f|  df      k(  sJ t        |      j                  t              t        |      k(  sJ t        |      j                  t              |t        |      z  k(  sJ t        dd      }t        |      j                  t              t        t        |z  t        |z  dk\  ft         |z  df      k(  sJ t        |      j                  t              t        |t        |      z        k(  sJ t        |      j                  t              t        |d	z         k(  sJ t        dd
      }t        t        t         | z        t        t         |z        z
        d	z  j                  t              t        t        | z         t        t         |z        z  d	z   t        t         | z        t        t        |z        z  z
  k(  sJ y )NrR   Tr@   )rj   rG   r   rF   rH   rc   r   rC   rD   rH   extended_real)r   r   r\   r(   r   r   r   r    r   r	   r   r   r   )rR   r8   rC   rc   s       r:   test_Abs_rewriter     sG   sAAy!((*A)A,9aR=0000 &vva|s1v%%%&sAq6>>)$A...#D!6#;qAq6>>)$	1a1f+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                  z   t        dd      } t        | dz        t        |       k7  sJ t        | dz        | dz  k7  sJ t        dd      } t        | dz        t        |       k(  sJ t        | dz        | dz  k(  sJ t        ddd      }t        ddd	      }t        |      |k(  sJ t        |      | k(  sJ y )
NrR   TrI   rH   r@   nn)rz   rA   np)r{   rA   r   r   r   )rR   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                     t        d      } t        |       j                  J t        |       j                  du sJ t        |       j                  J t        |       j
                  J t        |       j                  J t        |       j                  J t        |       j                  du sJ t        dd      }t        |      j                  du sJ t        |      j                  du sJ t        |      j                  J t        |      j
                  J t        |      j                  du sJ t        |      j                  J t        |      j                  du sJ t        ddd      }t        |      j                  du sJ t        |      j                  du sJ t        |      j                  J t        |      j
                  du sJ t        |      j                  du sJ t        |      j                  du sJ t        dd      }t        |      j                  du sJ t        |      j                  du sJ t        |      j                  J t        |      j
                  du sJ t        |      j                  du sJ t        d	d
      }t        |      j                  du sJ t        |      j                  du sJ t        |      j                  J t        |      j
                  J t        |      j                  du sJ t        dd      }t        |      j                  du sJ t        |      j                  du sJ t        |      j
                  J t        |      j                  du sJ t        dd      }t        ddd      }t        |      j                  du sJ t        |      j                  du sJ t        |      j                  J t        dd      }t        ddd      }	t        |      j                  du sJ t        |	      j                  du sJ t        |      j                  J y )NrR   T)finitezF)rJ   r|   rr   rs   r   )rationalrC   r   r7   )evenne)rA   r   )oddno)rA   r   )r   r   r   is_extended_realis_rationalis_positiver   is_extended_positiveis_extended_nonnegativer   r   is_evenis_odd)
rR   r}   r   rr   r   rC   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                  d    t        dd      } t        t        d| z   dz  z        d| z   dz  k(  sJ y )Nr8   Trs   rF   rH   )r   r   r	   )r8   s    r:   test_absr   N  s7     	sT"Aq!a%!|Q
***r<   c            	         t        d      t        u sJ t        d      dk(  sJ t        d      t        k(  sJ t        t              t        dz  k(  sJ t        t               t         dz  k(  sJ t        dt        z         t        dz  k(  sJ t        dt        z         t        t	        dd      z  k(  sJ t        dt        z
        t         dz  k(  sJ t        t        dt        z  t        z              dt        z  k(  sJ t        t        dt        z  t        z              dt        z  k(  sJ t        t        ddt        z  t        z  dz  z
              t        t	        d	d      z  k(  sJ t        t        t        t        z  d
z              t        d
z  k(  sJ t        t        dt        z              ddt        z  z
  k(  sJ t        t        dt        z  t        z  dz              dt        z  dz  k(  sJ t        t        ddt        z  z
              ddt        z  z   k(  sJ t        t        t        ddt        z  z                     dt        z  t        d      t        d      z  z   k(  sJ t        dd      } t        t        | dt        z  z
              dk(  sJ t        d      }t         |d      t         |d      z  z         j                  t              rJ t        d      }t        t        t        |                  t        j                  usJ t        t        t        t        |                        t        j                  u sJ t        dd      } t        t        |             t        j                  usJ t        t        t        |                   t        j                  u sJ t        dd      }t         ||            dk(  sJ t        dt        z    ||      z        t        dt        z         k(  sJ t        dd      }t        |      dk(  sJ t        |t        z        t        dz  k(  sJ t        dd      }t        |      t        k(  sJ t        |t        z        t         dz  k(  sJ t        d      }t!        t        |            t        |      k(  sJ |t        |dz  z  z   }t        |      t        d|t        z  z         k(  sJ d|z  dt        z  |dz  z  z   }t        |      t        dd|z  t        z  z         k(  sJ t#        dd      }|t        |z  z   }t        |      t        |dt        z   z        k(  sJ t        ||z        t        |dt        z   z        k(  sJ |t        |      z  t        t%        |      z  t        |      z  z   }t        |      j&                  d   |k(  sJ |dz   t        |dz  dz
  z  z   }t        |      j&                  d   |k(  sJ t        d      }d|z   |d      dz
  z  d|z   |d      z  z
  }t        |      t        d|z        k(  sJ t         |d            j(                  t         k(  r%t         |d            j&                   |d      fk(  sJ y )Nr   rF   rG   rH   rL   rK   r   rV   rU   r      rW         i{   rj   rB   Tr@   r}   rR   r   rr   )extended_positivers   r7   ru   )r   r   r   r	   r
   r   r   r%   r$   r&   r   r   atomsr   r   r`   r   r   r   r   r   )rB   r}   rR   rr   r7   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^###qs8s1a!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                      t        dt        z         t        dd      k(  sJ t        dd      } t        dd      }t        | t        |z  z         j	                  t              t        ||       k(  sJ y )NrF   rR   Tr@   rc   )r   r	   r#   r   r\   )rR   rc   s     r:   test_arg_rewriter     sa    q1u:q!$$$sAsAq1Q3w<&%1+555r<   c                     t        dd      } t        dd      }t        |       |  k(  sJ t        t        | z        t        | z  k(  sJ t        |      |k(  sJ t        t        |z        t         |z  k(  sJ t        | |z        | | z  k(  sJ t        t        | z  |z        t        |z  | z  k(  sJ t        d      \  }}t        t        |            |k(  sJ t        ||z         t        |      t        |      z   k(  sJ t        ||z
        t        |      t        |      z
  k(  sJ t        ||z        t        |      t        |      z  k(  sJ t        ||z        t        |      t        |      z  k(  sJ t        |       t        |       k(  sJ t        dd      \  }}t        t        |            |k(  sJ t        ||z         t        |      t        |      z   k(  sJ t        ||z
        t        |      t        |      z
  k(  sJ t        ||z        t        |      t        |      z  k(  sJ t        ||z        d	t        |      z  t        |      z  k(  sJ t        |       t        |       k(  sJ y )
Nr8   T)antihermitianr9   )	hermitianx yFcommutativerF   )r   r   r	   r   )r8   r9   rR   rc   s       r:   test_adjointr     sM   s$'Asd#A1:!1Q3<1Q31:??1Q3<A2a41Q3<A2a41Q3q5>QqSU"""5>DAq71:!###1q5>WQZ'!*44441q5>WQZ'!*44441q5>WQZ'!*44441q5>WQZ'!*4444A2;71:+%%%5e,DAq71:!###1q5>WQZ'!*44441q5>WQZ'!*44441q5>WQZ'!*44441q5>Q^gaj8888A2;71:+%%%r<   c                  4   t        dd      } t        dd      }t        |       | k(  sJ t        t        | z        t         | z  k(  sJ t        |      | k(  sJ t        t        |z        t        |z  k(  sJ t        | |z        |  |z  k(  sJ t        t        | z  |z        t        | z  |z  k(  sJ t        d      \  }}t        t        |            |k(  sJ t        |      j	                         t        k(  sJ t        ||z         t        |      t        |      z   k(  sJ t        ||z
        t        |      t        |      z
  k(  sJ t        ||z        t        |      t        |      z  k(  sJ t        ||z        t        |      t        |      z  k(  sJ t        |       t        |       k(  sJ t        dd      } t        dd	      }t        |       j                  sJ t        |      j                  J t        |      j                  d
u sJ y )Nr8   Tr@   r9   rD   r   rM   rO   rP   F)r   r   r	   r   inverser   r^   )r8   r9   rR   rc   rO   s        r:   test_conjugater     s   sAsd#AQ<1QqS>aRT!!!Q<A2QqS>QqS   QqS>aRT!!!QqSUqs1u$$$5>DAqYq\"a'''Q<!Y...QUy|il::::QUy|il::::QUy|il::::QUy|il::::aR=Yq\M)))sd#As4(Aa5a5%%%a5&&&r<   c                  0   t        d      } t        t        |             t        |       k(  sJ t        t        |             t        |       k(  sJ t        t        |             t        |       k(  sJ t        t        |             t        |       k(  sJ t        t        |             t        |       k(  sJ t        t        |             t        |       k(  sJ  G d dt              } |       } t        |       t        |       k(  sJ t        |       | k(  sJ y )NrR   c                       e Zd Zd Zd Zd Zy)+test_conjugate_transpose.<locals>.Symmetricc                      y Nr   selfs    r:   _eval_adjointz9test_conjugate_transpose.<locals>.Symmetric._eval_adjoint      r<   c                      y r   r   r   s    r:   _eval_conjugatez;test_conjugate_transpose.<locals>.Symmetric._eval_conjugate  r   r<   c                     | S r   r   r   s    r:   _eval_transposez;test_conjugate_transpose.<locals>.Symmetric._eval_transpose  s    Kr<   N)__name__
__module____qualname__r   r   r   r   r<   r:   	Symmetricr     s    			r<   r   )r   r   r   r   r   )rR   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D  	AQ<71:%%%Q<1r<   c                     t        dd      } t        |       | k(  sJ t        t        | z        t        | z  k(  sJ t        d      \  }}t        t        |            |k(  sJ t        ||z         t        |      t        |      z   k(  sJ t        ||z
        t        |      t        |      z
  k(  sJ t        ||z        t        |      t        |      z  k(  sJ t        ||z        t        |      t        |      z  k(  sJ t        |       t        |       k(  sJ t        dd      \  }}t        t        |            |k(  sJ t        ||z         t        |      t        |      z   k(  sJ t        ||z
        t        |      t        |      z
  k(  sJ t        ||z        t        |      t        |      z  k(  sJ t        ||z        dt        |      z  t        |      z  k(  sJ t        |       t        |       k(  sJ y )Nr8   TrI   r   Fr   rF   )r   r   r	   r   )r8   rR   rc   s      r:   test_transposer     s   sD!AQ<1QqS>QqS   5>DAqYq\"a'''QUy|il::::QUy|il::::QUy|il::::QUy|il::::aR=Yq\M)))5e,DAqYq\"a'''QUy|il::::QUy|il::::QUy|il::::QUq9Q</)A,>>>>aR=Yq\M)))r<   c                     ddl m} m} t        d      }t        dd      }t	        d      }i } |d       | d      |fk(  sJ  |d	t
        z          | d	t
        z         |fk(  sJ  |t        |      d
      t        |      k(  sJ  |d	|z   d
      d	|z   k(  sJ  | |t
              |z   d
       | | t
                    |z   k(  sJ  ||d       | |      k(  sJ  ||d      |k(  sJ  | ||      d       | | |            k(  sJ  |d	|z   d       | d	|z         k(  sJ  |d	 ||      z   d       | d	 | | |            z         k(  sJ  | ||      |z         \  }}|j                  |       ||      |z   k(  sJ t        d      }t        dd      }	 |t        t        d      |z  t        | |z   dz   d|	dz  z  z        z  dt        t              z  |	z  z  |t         t        f      d      t        t        d      |	t        d      z  t        t
        t        z        z  z  t        |	t        d      z  dt        t
        t        z        z  z  t        t
        t        z        z   | | |z         dt        d      z  z  z  dz        z  t        d      z   | |      z  dt        t              z  z  |t         t        f      k(  sJ y )Nr   )
polar_liftpolarifyrR   r   T)polarr}   rG   rF   Fr   )liftmusigmars   rH   )$sympy.functions.elementary.complexesr   r   r   r   r	   r   r   r)   r   r   r   r   )
r   r   rR   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$KE4::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                     ddl m} m}m} ddlm} ddlm} ddlm	} ddl
m}m} ddlm} t        dt         z        d	z   }	t#        dt         z        d	z   }
 |d	      d	k(  sJ  ||	      |
k(  sJ  ||	d
z        |
d
z  k(  sJ  ||	|z        |	|z  k(  sJ  ||	|z        |
|z  k(  sJ  ||	|z         |
|z   k(  sJ  |t%        t'        |	                  t%        t'        |
            k(  sJ  ||d
t(        z        } ||      |k(  sJ  |t%        |            t%        |      k(  sJ  ||	|	z  d      |	|
z  k(  sJ  | |||	|	z               |||	|
z        k(  sJ  |t'        |	            t'        |
      k(  sJ  | ||	             ||
      k(  sJ  | ||	             ||
      k(  sJ  | ||	             ||
      k(  sJ  | |||	             |||	      k(  sJ  | |t'        |	      t'        |	t        d      z                      |t'        |
      t'        |
d	z               k(  sJ  | | | d      d
t        d      z               |dd
      k(  sJ  |t+        |	d            t+        |
d      k(  sJ  | ||	d             ||
d      k(  sJ  | | |      dkD        |dkD  k(  sJ  |d      du sJ y )Nr   )r   principal_branch
unpolarify)Ne)tanh)erf)gamma
uppergammar   r   rF   rH   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.abcrR   r   r	   r   r   r%   r   r   )r   r   r   r   r   r   r  r  rR   rr   urO   s               r:   test_unpolarifyr
  (  s   __(:;K!A#AAaC1Aa=Aa=Aadq!t###adq!t###ac?ac!!!a!eA%%%d3q6l#tCF|333 	AbD!Aa=Ad1g$q'))) ad40AqD888jAqD)*jAqD.AAAA c!fQ'''d1g$q')))eAh58+++c!fQ'''jA&':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                     t        d      } t        |       j                  d      t        |       k(  sJ t        |       j                  d      t        |       k(  sJ t	        |       j                  d      t	        |       k(  sJ y )NrR   T)trig)r   r   r   r   r   r   s    r:   test_issue_4035r  W  sn    sAq6==d=#s1v---7>>t>$Q///q6==d=#s1v---r<   c                  ^    t        d      } t        t        |             t        |       k(  sJ y )NrR   )r   r   r   s    r:   test_issue_3206r  ^  s%    sAs1v;#a&   r<   c                     t        dd      } t        dd      }t        d      } ||       j                         j                  |        ||       j                  |       j                         k(  sJ  ||      j                         j                  |       ||      j                  |      j                          k(  sJ y )NrR   Tr@   rc   rD   r}   )r   r   r   rZ   rR   rc   r}   s      r:   $test_issue_4754_derivative_conjugater  c  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                     t        dd      } t        dd      }t        d      }t         ||             j                  |       t         ||       j                  |             k(  sJ t	         ||             j                  |       t	         ||       j                  |             k(  sJ t         ||            j                  |      t
         t	         ||      j                  |            z  k(  sJ t	         ||            j                  |      t
         t         ||      j                  |            z  k(  sJ t         ||             j                  |       j                   ||       dt
        | z  z         j                         | t        d| dz  z         z  k(  sJ t         ||             j                  |       j                   ||       dt
        | dz  z  z         j                         d| z  d| d	z  z   z  k(  sJ t         ||            j                  |      j                   ||      d|z         j                         | t        d|dz  z
        z  k(  sJ t         ||            j                  |      j                   ||      t
        |dz  z         j                         d|z  d|d	z  z   z  k(  sJ y )
NrR   Tr@   rc   rD   r}   rF   rH   rL   )r   r   r   rZ   r   r	   r   r   r   r   r   r  s      r:   test_derivatives_issue_4757r  k  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                     ddl m}  t        d      }t        d      }t        d      }t        |g|g|gg      }|j	                         }|t        |t        t        |      dz  t        |      dz  z   t        |      dz  z         z  g|t        t        |      dz  t        |      dz  z   t        |      dz  z         z  g|t        t        |      dz  t        |      dz  z   t        |      dz  z         z  gg      k(  sJ t        |dz  |dz  |dz  z   |dz  z   z  |dz  |dz  |dz  z   |dz  z   z  z   |dz  |dz  |dz  z   |dz  z   z  z         |_         | |j                        dk(  sJ y )Nr   r   v0v1v2rH   rF   )sympy.simplify.simplifyr   r   r*   
normalizedr   r   norm)r   r  r  r  VUs         r:   test_issue_11413r  y  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                     ddl m} m}m}m} t        d      }t        dd      } |dt        z          | dt        z   t              k(  sJ  |d|z          | d|z   t              k(  sJ t         |dt        z   dz        t        dz        sJ t         |dt        z
  dz        t         dz        sJ t         | dt        z   dz  d	t        z        t        dz        sJ t         | dt        z
  dz  d	t        z        t         dz        sJ  | ||t                     | |t              k(  sJ  | |dt        z                |dt        z         k(  sJ  |  |dt        z         dt        z         | dt        z   dt        z        k(  sJ  |  |dt        z         d	t        z         | dt        z   d	t        z        k(  sJ  |  |dt        z         t               |  |dt        z         t              k(  sJ  | |dt        z               t        d
z  k(  sJ  | d|z  |       | ||      k(  sJ  | t        |z  |       | ||      k(  sJ t         |dt        z               t        dt        z         k(  sJ y )Nr   )periodic_argumentr   r   unbranched_argumentrR   rr   Trs   rH   rF   rK   rL   )r   r!  r   r   r"  r   r	   r   r;   r   r   )r!  r   r   r"  rR   rr   s         r:   test_periodic_argumentr#    sy   {{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!Q(????RT1%):1a)@@@@z!a% !SQZ///r<   c                  \    ddl m}  t         | dt        z   dz  t        dz        d      sJ y )Nr   r   rF   rH   )r   r   r;   r	   r   r%  s    r:   test_principal_branch_failr&    s,     F$a!eaZA6:::r<   c                     ddl m} m} t        dd      }t        d      }t        dd      } | | |      |       |||      k(  sJ  | | dt        z         |       |dt        z   |      k(  sJ  |d|z  |      d |||      z  k(  sJ  |d	t
              t        d      k(  sJ  |d
dt
        z        t        t        t
        z        k(  sJ  |d
t
              t        d      k(  sJ  |t        dt
        z  t        z        |z  dt
        z         |t        t        t
        z        |z  dt
        z        k(  sJ  ||t        t
        t        z        z  dt
        z        |t        t         t
        z        z  k(  sJ  |t        t         t
        z  dz         | |      z  dt
        z        t        t         t
        z  dz        |z  k(  sJ t         |d	t        z   dz  dt
        z        dt        z        sJ t         |d	t        z   dz  dt
        z        dt        z        sJ t         |d	t        z   dz  d	t
        z        dt        z        sJ  ||t              j                  |u sJ  ||d      j                  |u sJ  ||t               j                  |u sJ  ||t              j                  |u sJ y )Nr   )r   r   rr   Trs   rR   ru   rH   rF   rG   rK   )r   r   r   r   r	   r   r   r;   r   r   r   )r   r   rr   rR   negs        r:   test_principal_branchr*    s   SsT"AsA
t
$CJqM1-1A!Q1GGGGJq1u-q15Ea!eQ5OOOOAaC#q)9!Q)?'????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                     t         dz  } t        |       }t        | |z
        dk(  sJ t        | |z
        | |z
  k(  sJ t	        d      }t         dz  }t         dz  }t        |      dz  t        |      dz  z   }||z  |z
  |z   }ddlm} t         ||            dk(  sJ dd	dt        dd
      fD ]"  }t        |j                  ||            dk(  r"J  y )Nr   rF   rR   i$rH   r   r  o      r   )r   r   r   r   r   r$   r%   r  r   r
   r   )	r7   rC   rR   epsbigoner   r   xis	            r:   test_issue_6167_6151r2    s    
DAAAA;!q1u:QsA
e)C
d(C
a&!)c!fai
CC#A0!!!B8Ar?+ (AFF1bM"a'''(r<   c                      ddl m}  t        ddd      } | |d         |d   k(  sJ  | |d   |d   z        |d   |d   z  k(  sJ y )Nr   )r   rT   rH   )r   r   )rF   r   )r   r   r,   )r   rT   s     r:   test_issue_14216r4    sY    ?S!QAag!D')))agago&!D'!D'/999r<   c                  f    t        dd      } t        | t        d| dkD  fd| z
  df      z         sJ y )NrB   Tr@   r   rF   )r   r   r    )rB   s    r:   test_issue_14238r6    s8    sAq9aQZ!a%77888r<   c                      t        d      } t        dd| z  z
        dz
  d| z
  fD ]$  }t        |      t        |       z
  dk(  rJ |        y )NrR   r   rH   rF   r   r   )rR   r8   s     r:   test_issue_22189r8    sV    sA1qs7maQ' (1vQB1$'a'$(r<   c                  r   t        ddd      } t        dd      }t        ddd      }t        |       j                  J t        |       j                  du sJ t        |      j                  J t        |      j                  J t        |      j                  du sJ t        |      j                  J y )	NnonrealFT)rA   r   nonimaginaryrD   nonzerononimaginary)r|   rE   )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                      t        dd      } t        dd      }t        t         | |             | |            }|j	                         t         | |            k(  sJ y )Nr}   Tr@   rR   )r   r   r   r   r   r   )r}   rR   r   s      r:   test_issue_15893rB    sN    4 AsA	C!Iqt	$B779QqT
"""r<   N)isympy.core.exprr   sympy.core.functionr   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   r1   r2   sympy.testing.pytestr3   r4   r5   r;   rh   ro   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r
  r  r  r  r  r  r#  r&  r*  r2  r4  r6  r8  r@  rB  r   r<   r:   <module>rU     sc     F F 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<   