
    sg7                     \   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lmZmZmZ d dlmZmZ d dlmZmZ d dlmZ d d	l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# d dlm$Z$ d dl%m&Z&m'Z'm(Z(m)Z)m*Z* d Z+d Z,d Z-d Z.d Z/d Z0d Z1d Z2d Z3d Z4d Z5d Z6d Z7d Z8d Z9d Z:d  Z;d! Z<y")#    )Function)Mul)EIRationaloopi)S)DummySymbolsymbols)explog)rootsqrt)sin)gamma)hyper)MatrixSymbol)	powdenestpowsimp)signsimpsimplify)Str)xyzabc                     t        d      \  } }}}t        d      }t        d| z  d|  z  z  d|  z  z        dk(  sJ t        d| z  d|  z  z  d|  z  z        dk(  sJ t         |d| z  d|  z  z  d|  z  z               |d| z  d|  z  z  d|  z  z        k(  sJ t         |d| z  d|  z  z  d|  z  z        d	       |d      k(  sJ t        |       t        |      z  t        |       t        |      z  k(  sJ t        t        |       t        |      z        t        | |z         k(  sJ t        t        |       t        |      z  d| z  z  d|z  z        dt        z  | |z   z  k(  sJ t        t        |       t        |      z  d| z  z  d|z  z  d
      t        | |z         d| |z   z  z  k(  sJ t        t        |       t        |      z  t        d      z  t        |       z  t        |      z   d| z  d|z  z  z         t        d| z   |z         t        |       z  t        |      z   d| |z   z  z   k(  sJ t        t        t        |       t        |      z              t        t        |       t        |      z        k(  sJ t        t        t        |       t        |      z        d	      t        t        | |z               k(  sJ t        | dz  | |z  z        | d|z   z  k(  sJ t        dt        t        t              z  z   t        t               z  d
d      dt        dt        z         z   t        t               z  k(  sJ t        dt        t        t              z  z   t        t               z  d	      dt        dt        z         z   t        t               z  k(  sJ t        dt        t        t              z  z   t        t               z        dt        dt        z         z   t        t               z  k(  sJ t        dt        t        t              z  z   t        t               z  d
      dt        dt        z         z   t        t               z  k(  sJ t        dt        t        t              z  z   t        t               z  d      dt        t        t              z  z   t        t               z  k(  sJ t        dd      \  } }t        dd      }t        ||z  || z  | z  z        | |z  k(  sJ t        | | | |z  z  || |z  z  z  z  || | |z  z  || |z  z  z  z  z  d	      | |z  | |z  | |z  z  z  k(  sJ t        ddd| z  z  | z  z  d	      ddd| z  z  | z  z  k(  sJ t        ddd| z  z  | z  z  d	      d| d| z  z  z  k(  sJ t        t        |  t        |        t        |  t        |       z        z  z         dd
      t        |  t        |        t        |  t        |       z        z  z         k(  sJ t        t        |  t        |        t        |  t        |       z        z  z         dd
      t        |  t        |        t        |  t        |       z        z  z         k(  sJ t        | |z   d|z  z  dd
      | |z   d|z  z  k(  sJ t        | dz  |dz  z   |z  dd
      | dz  |dz  z   |z  k(  sJ t        t        |       dt        |       t        |      z  z   z  d	      t        |       dt        | |z         z   z  k(  sJ t        | ||| z  ||z  z  z  z  d	      | ||| |z   z  z  z  k(  sJ t        || z  ||z  z  | z  d	      || |z   z  | z  k(  sJ t        | || z  ||z  z  | z  z  d	      | || |z   z  | z  z  k(  sJ t        dd      }t        d| z  t        d      z  | z        d| z  dt        d      z   z  k(  sJ t        d|z  t        d      z  |z        |dt        d      z
  z  k(  sJ t        dd| z  z        d| z  k(  sJ t        dd| z  z        dd| z  z  k(  sJ t        dd      }t        dd|z  z        dk(  sJ t        d|  z        d| z  k7  sJ t        dd| z  z  d      dk(  sJ t        dd      \  }}}|t        z  }	||	z  ||	z  z  ||	z  z  }
t        |
      ||t        z  z  ||t        z  z  z  ||t        z  z  z  k(  sJ |dz  }	||	z  ||	z  z  ||	z  z  }
t        |
      d|z  | |z  |z  |dz  z  z  k(  sJ d|z   |z  }	||	z  ||	z  z  ||	z  z  }
t        |
      dd|	z  z  | |z  |z  |	z  z  k(  sJ | t        t        dd      z  z  }t        |      j                  |j                  cxk(  rt        t        dd      z  k(  sJ  J t        dd| z  z        d| z  k(  sJ t        t        |dz              t        |dz        k(  sJ t        t        d      D cg c]  }t        t        d             c} }t        |      |k(  r|j                  sJ t        d t        | t        z        t        | dz        fD              sJ t!        t        t        t"        t$        z  dz        t'        dd      z              dk(  sJ t        d | z         d | z   k(  sJ t        ddt        z  z  t(        z        t        d      dz  t(        z  k(  sJ t        d| z        dz  t        d!| z        dz  z  }t        |      |k(  sJ t        | dz  |dz  z  | |dz  z  t        dd      z  z        | |z  | |dz  z  t        d"d      z  z  k(  sJ y c c}w )#Nzx,y,z,nf         Tdeepr   combine)r*   r(   basex,y)nonnegativenrealF)r(   r*      ppositiveiintegerforcezw n mnegative)	imaginaryc              3   8   K   | ]  }t        |      |k(    y w)N)r   ).0es     T/var/www/html/venv/lib/python3.12/site-packages/sympy/simplify/tests/test_powsimp.py	<genexpr>ztest_powsimp.<locals>.<genexpr>j   s     A1wqzQAs   z(-1)**(2/3)g?g       @   )r   r   r   r   r   r   r   r   r   r   r   ranger   r   is_Mulallstrr   r	   r   r   )r   r   r   r.   r!   r2   r6   wmr@   exeqs               rA   test_powsimprL      s   #JAq!QAAqD1r7NQ!W,.!333R!GraRj(1r724999	!Q$aR.1r7
"#&)*1a4!qb'>AG+C)DE E EAadQ!WnqA2w./d<!DDDq6#a&=CF3q6M)))3q6#a&=!SQZ///3q6#a&=A%ad*+!q1u~===3q6#a&=A%ad*E:AE
1q1u:  3q6#a&=Q'A.Q7!Q$q!t)CDAEAIs1vA&QU34 4 43s1vc!f}%&#c!fSVm*<<<<3s1vc!f}%D1SQU_DDD1a419QU+++ A#a&L#qb')5tD	
SQZaR ! ! !A#a&L#qb')5	
SQZaR ! ! !A#a&L#qb')*q3q1u:~sA2w.FFFFA#a&L#qb')59	
SQZaR ! ! !A#a&L#qb')6:	
Qs1vXsA2w  5d+DAqsA1a41Q31"+%&!Q$...1q1Q3xAaC()!a!A#hq1Q3x.?*@@tLaC1Q3!A#,  1q1Q3xz?/1q1Q3xz?BBB1q1Q3xz?.!a1f+===QBaRaRAY''(ueEQBaRaRAY''() ) ) QBaRaRAY''(ueEQBaRaRAY''() ) ) AEAaC=ue<Q1MMMAaC!A#Iq=tU;!ac	1}LLL3q61s1vc!f},-D9ACAJ     1QAad^#$/1QQU_3DDDDAqDAI>-!a!e*q@@@1ad1a4i!^#$/1a!a%j1_3DDDDd#AAaC#a&=?#!q3q6z'::::AaC#a&=?#q2A;'7777 1qs81$$$B!A#;B!A#;...T"AB!A#;1$$$B1":2')))B!A#;d+q000 g-GAq!	!A	
Aad1a4B2;!ac(1qs8+A!H4444	!A	
Aad1a4B2;2'A2a46QqS/1111	
Q	A	
Aad1a4B2;21+r!tAvk1111	
Qx1~	B2;??bff8(1a.(8888881qs81$$$3qs8AaC((( 
E!H=qtED)*=	>B2;"**AadT!Q$Z(@AAAA AbDFDAJ./1]BBB CF7Qw&&& AqsGb=!c"gai"_444 
QqS1SQZ]	"B2;" 1a419a1fx1~55 
qS!AqD&8Aq>))* * *' >s   nc                     t        t         t        z   t        t        t        z
        z        t        t        t        z
         k(  sJ t        t         t        z   t         t        z   z  t        t        t        z
        z  t        t        t        z
        z        t        t        t        z
        t        t        t        z
        z  k(  sJ t        dd      } | dt        t        j                  i}t        |  t        z  | t        z  z        j                  |      dt        z  j                  |      k(  sJ t        |  t        z  | t        z  z        j                  |      | dz   t        z  j                  |      k(  sJ t        dd      }| dt        t        j                  i}t        | t        z  |t        z  z        j                  |      dt         j                  t        t        j                        z  k(  sJ t        | t        z  |t        z  z        j                  |      |dz   t        z  j                  |      k(  sJ t         t        z  t        t        z  z  }t        |      |k(  sJ y )	Nr2   Tr3   r#   r5   r.   r;   r&   )
r   r   r   r   r   r   r   r
   Halfsubs)r2   repsr.   rK   s       rA   test_powsimp_negated_baserQ   ~   s   QBFDQK'(T!a%[L888QBFaR!V$T!a%[0a!e<=a!eTRSVWRW[AXXXXd#Aq!QVVDQB71a4< %%d+a~~d/CCCCQB71a4< %%d+!Q$
/@/@/FFFFd#Ar1affDQB71a4< %%d+qbYYq!&&5I/IIIIQB71a4< %%d+!Q$
/@/@/FFFF"qAB2;"    c                     t        d      \  } }}t        dd      \  }}}t        || z  ||z  z  d      || |z   z  k(  sJ t        || z  ||z  z  d      || z  ||z  z  k(  sJ t        || z  ||z  z  d      || |z   z  k(  sJ t        || z  || z  z  d      || z  || z  z  k(  sJ t        || z  || z  z  d      || z  || z  z  k(  sJ t        || z  || z  z  d      || z  || z  z  k(  sJ t        || z  || z  z  d      || z  || z  z  k(  sJ t        || z  || z  z  d      || z  || z  z  k(  sJ t        || z  || z  z  d      || z  || z  z  k(  sJ t        || z  ||z  z  ||z  z  d      || |z   |z   z  k(  sJ t        || z  ||z  z  ||z  z  d      || z  ||z  z  ||z  z  k(  sJ t        || z  ||z  z  ||z  z  d      || |z   |z   z  k(  sJ t        || z  || z  z  || z  z  d      || z  || z  z  || z  z  k(  sJ t        || z  || z  z  || z  z  d      || z  || z  z  || z  z  k(  sJ t        || z  || z  z  || z  z  d      || z  || z  z  || z  z  k(  sJ t        || z  || z  z  || z  z  d      || z  || z  z  || z  z  k(  sJ t        || z  || z  z  || z  z  d      || z  || z  z  || z  z  k(  sJ t        || z  || z  z  || z  z  d      || z  || z  z  || z  z  k(  sJ y )	Nzx,y,zzA B CFcommutativerF   r)   r+   r   r   r   )r   r   r   ABCs         rA   test_powsimp_ncrZ      s   gGAq!g51GAq!1a419e,AE
:::1a419f-Aad:::1a419e,AE
:::1a419e,1QT	9991a419f-Aad:::1a419e,1QT	9991a419e,1QT	9991a419f-Aad:::1a419e,1QT	9991a419QT>51QQ^CCC1a419QT>62ad1a4i1nDDD1a419QT>51QQ^CCC1a419QT>51QT!Q$Yq!t^CCC1a419QT>62ad1a4i1nDDD1a419QT>51QT!Q$Yq!t^CCC1a419QT>51QT!Q$Yq!t^CCC1a419QT>62ad1a4i1nDDD1a419QT>51QT!Q$Yq!t^CCCrR   c                  t    t        ddt        z  z  dt        z  z        dt        dt        z  z   dz   z  k(  sJ y )N   r#      r1   r"   )r   r   r    rR   rA   test_issue_6440r_      s6    2ad71a4< AAaC!$4444rR   c            
      B   t        d      \  } }t        dd      \  }}t        dd      \  }}t        |       | k(  sJ t        | d| t        t        dd      z  z  d| z  z  z  z         | d| t        t        dd      z  z  d| z  z  z  z   k(  sJ t        t	        t        t        dd      z        d| z  z        sJ t        | t        t        dd      z  z  d| z  z        | t        t        dd      z  z  d| z  z  k(  sJ t        t	        d| z  t        d      z              dd| z  z  k(  sJ t        t        |dz              |k(  sJ |d|z  z  |d	|z  z  z  }t        |      ||dz  z  d|z  z  k(  sJ t        | | z  ||z   z        sJ t        t	        d|z  t        |       z              | d|z  z  k(  sJ t        t	        |t        t              t        t              z   z              t        t        z  |z  k(  sJ t        t	        dt        t              t        t              z   z              t        dz  t        dz  z  k(  sJ t        | d|z  z  d|z  z  | z        | d|z  z  d|z  z  | z  k(  sJ t        | d|z  z  d|z  z  | z  d
      | d|z  | z  |z  z  k(  sJ t        | t        t        dd      z  z  d|z  |z  z  | z        | t        t        dd      z  z  d|z  |z  z  | z  k(  sJ t        | d|z  z  |d	|z  z  z  t        z  d
      | |dz  z  d|z  t        z  z  k(  sJ t        |d|z  z  |d	|z  z  z  |z        ||dz  z  d|z  |z  z  k(  sJ |dt        z  z  d|z  z  | z  }t        |      |k(  sJ | dz  |d	z  z  t        z  | |z  z  }t        |      |k(  sJ | dz  |d	z  z  t        z  | |z  z  dz  }t        |      | dz  |d	z  z  t        z  d| z  |z  z  k(  sJ t        | dz  |d	z  z  t        z  | |z  z  d
      | |dz  z  dt        z  | z  |z  z  k(  sJ t        | dz  |d	z  z  t        z  | |z  z  dz  d
      | |dz  z  dt        z  | z  |z  z  k(  sJ t        | dz  |dz  z  |z        | |dz  z  d|z  z  k7  sJ t        dd      \  } }t        | dz  |dz  z  |z        | |dz  z  d|z  z  k(  sJ t        | |t        dd      z  z  ||dz  z  z  d|z  z        | t        d	d      z  |z  |dz  z  k(  sJ t        t        | d|z  z  |d|z  z  z              | |dz  z  |z  k(  sJ t        d	| z        dd| z  z  k(  sJ t        d	| z  |z        dd| z  |z  z  k(  sJ t        d	| z  |z        dd| z  z  |z  k(  sJ y )Nr,   zp qTr3   zi,jr7   r#   r1   r"   r9      )	r   r   r   r   r   r   r   r   r   )r   r   r2   qr6   jrK   r@   s           rA   test_powdenestrd      s[   5>DAq54(DAq5$'DAqQ<1QA(1a. 01QqS999:q1a!HUVXYNJZF[_`ab_bEcCc?cdddc!HQN*+qs3444a!HQN*+qs34!aA>N:OSTUVSV9WXXXS1SV_%QqS111T!Q$Z A%%%	
QqS!ac(	BR=Qq!tVqsO+++ada!e_%%%S1SV_%QqS111SCFSVO,-.1Q3(:::SCFSVO,-.!Q$q!t);;;q1Q3x1Q3'!+,!ac(ac1BQ0FFFFq1Q3x1Q3'!+48A!AaLHHHq1Xa^+,!A6:;q!Q AaCE
*Q	.0 0 0a!A#hq1Q3x'!+48Qq!tVqs1u<MMMMa!A#hq1Q3x'!+,1a41Q3q50AAAA
ac(ac	QAQ<1
Q$q!t)a1Q3AQ<1a419q.AaC	 1$AQ<QT!Q$YNac!e44441QT	A~1-d;	
1a41Q3q57  1QT	A~1-1>	
1a41Q3q57  ad1a4i!^$1a41Q377754(DAqad1a4i!^$1a41Q3777a!HQN*+A!H4!<=!XaQR^BSTUBUYZ\]Y]A^^^^T!ac(1qs8+,-!AqD&1<<<QT?a!A#h&&&adQY1qs1u:---QT!VAaC
***rR   c                  L   t        dd      \  } }}t        d      \  }}}t        | |z  |z  |z        | |z  ||z  z  ||z  z  k(  sJ t        | |z  ||z  z  |z        | ||z  z  |||z  z  z  k(  sJ t        | |z  |z  ||z  z  |z        | ||z  |z  z  ||dz  z  z  k(  sJ y )Nx y zTpolarza b cr#   )r   r   )r   r   r   r   r   cs         rA   test_powdenest_polarrj      s    gT*GAq!gGAq!ac!eaZ AqDAIadN222ad1a4i!^$AaCQqS(9999q!tai1nq()Q1QZAqD	-AAAArR   c                      t        t              t        ddt              z  t        z  dz  } t	        |       t        t        t              z  t        ddt              z  dz  k(  sJ | j
                  J y )Nr^   r#   )r   r   r   r	   r   is_positive)args    rA   test_issue_5805rn      s`    !HU2r1%%r)A
-CS>bqk%B*::Q>>>>??"""rR   c                      t        ddd      } t        | d      }|| k(  sJ |j                  d   t        d      k(  sJ y )NM
   Tr'   r   )r   r   argsr   )rp   exprs     rA   (test_issue_9324_powsimp_on_matrix_symbolrt      sB    S"b!A14 D19999Q<3s8###rR   c            	      D   dt        d      z  dt        dt        d      z  dz         z  z  t        t        d       dz  t        j                  z         z   } t        t        j                   | j
                               D cg c]  }t        |       c} dk(  sJ t         | j
                               dk(  sJ t        |       dk(  sJ t        t        dt        d      z         t        dt        d      z
        z  dz         dk(  sJ t        |       dk7  sJ y c c}w )Nr#      r   r1   r$   )r   r
   rN   r   	make_argsnormalr   r   )r   r   s     rA   test_issue_6367rz      s    
47
Ad1T"X:?++,tT"XIbL1664I/JJAS]]8188:%>??@AEEE8188:!###A;!4DG$T!d1g+%66:;q@@@1:??	 @s   Dc                     ddl m}  ddlm} t	        d      \  }}}t	        dd      \  }}} | d      d	|z  z   |d	t
        z  t        z  |z        k(  sJ t        ||z  ||z  z        ||z  |z  k(  sJ ||z  d
|z  |z  z  d
k(  sJ d
|z  |z  || z  k(  sJ  ||       ||      z   ||       ||      z  k(  sJ t         ||       ||      z         |||z         k(  sJ t         ||       ||      z  ||z  z  ||z  z        | |d
      z  ||z   z  k(  sJ t         ||       ||      z  ||z  z  ||z  z  d       |||z         |||z   z  z  k(  sJ t         ||       ||      z   |d	      z  t        |      z  t        |      z   ||z  ||z  z  z         |||z   z  t        |       |d	|z   |z         z  z   t        |      z   k(  sJ t        t         ||       ||      z              t         ||       ||      z        k(  sJ t        t         ||       ||      z        d      t         |||z               k(  sJ y )Nr   )
polar_lift)	exp_polarrf   zp q rTrg   r5   r#   r$   r   r)   r'   )	$sympy.functions.elementary.complexesr|   &sympy.functions.elementary.exponentialr}   r   r	   r   r   r   )r|   r}   r   r   r   r2   rb   rs           rA   test_powsimp_polarr      s   ?@gGAq!gT*GAq!rNac"i"Qq&99991a4!Q$;AaC!8+++a41Q3(?aaC!8qA2wQ<	!$	!Yq\(AAAA9Q<	!,-1q51AAAA9Q<	!,QT1!Q$67	
9Q<1q5!" " "9Q<	!,QT1!Q$6F!a%QU#$ $ $!Yq\!)A,.s1v5A>AadJLq1u:AyQ333c!f<= = = 3y|IaL012IaL1%&' ' '3y|IaL01=Ia!e  rR   c                     t         t        t              z  } t        |       }t        t        t               t        z        }t        || z        t        |       dz  k(  sJ t        || dz  z  t        t              z        t        t              |dz  z  k(  sJ t        |t         dz  z  |dz  z  t        z        |dz  |dz  z  k(  sJ t        |t         z  |dz  z  t        dz  z        |dz  |z  k(  sJ t        t         |dz  z  t        dz  z        |dz  k(  sJ t        t         |dz  z  t        z        t         t        z  |dz  z  k(  sJ t        t        t               |dz  z  t        z        |dz  k(  sJ t        t        t               |dz  z  t        t              z        t        t               t        t              z  |dz  z  k(  sJ t        t	        t        t               |dz  z  t        t              z  t        d            t        t               t        t              dz  z  |dz  z  k(  sJ t        |dz  |z  t         dz  z  t        z        |dz  k(  sJ t         t        z  t        z  } | t        |       z  }|j
                  du sJ t        |      t        |       dz  k(  sJ t         t        t        t        dd      z        z  }t        |t        |      z        t        |      dz  k(  sJ t        |dz  t        |      z        t        |      dz  k(  sJ t        |dz  t        t        |            z        t        t        |            dz  k(  sJ y )	Nr1   r#   rC      F)evaluateT	   )r   r   r   r   r   rE   r   r   )r   r   ri   s      rA   test_issue_5728r     s   	$q'	AQAT!WQYA1Q3<47A:%%%1QT6$q'>"d1gadl2221QT6!Q$;q=!QT!Q$Y...1Q3q!t8AqD=!QT!V+++1QT6!Q$;1a4'''1QT6!8!AqD(((471a4<>"ad***471a4<Q'(DGDGOAqD,@@@@3tAwq!t|DG+Q?@QQ
1a4     1a46!Q$;q=!QT))) 	
1QA	$q'	A88t1:a!### 	
#aA
A1T!W9a!+++1a4Q< DGQJ...1a4T!W%&$tAw-*::::rR   c                     t        dd      \  } }}}t        t        |       t        |      z  t        |      z        t         t        |        z  t        |       z  t        |       z  k(  sJ t        t	        | d      t	        |d      z  t	        |d      z  t	        |d      z        dt        dd      z   |  t        dd      z  z  | t        dd      z  z  | t        dd      z  z  | t        dd      z  z  k(  sJ y )Nzn1 n2 n3 n4Tr;   r1   r5   r$   )r   r   r   r   r   r   )n1n2n3n4s       rA   test_issue_from_PR1599r   2  s   ]T:NBBDHT"X%d2h./	
49T2#YtRCy() * )DQKR+DQK7RCD
x1~	
x1~	 "sXa^3	468S8Aq>4I	JLN3QYZ[]^Q_J_	`` a `rR   c                  x   t        dd      } t        ddd      }t        dd      }d|d	z  t        j                  z
  z  d|t        d
d	      z  t        j                  z
  z  z
  }t	        d|d	z  z        t
        |z  k(  sJ t	        d|d	z  z        t
        |z  k(  sJ t	        d|t        d
d	      z  z        t
        |z   k(  sJ t	        |      d|d	z  t        j                  z
  z  d|t        d
d	      z  t        j                  z   z  z   k(  sJ t	        d| t        d
d	      z  z        t
         | z  k(  sJ y )Nr   Tr7   l)evennonzeror.   )oddr5   r#   r1   )r   r
   rN   r   r   r   )r   r   r.   e_xs       rA   test_issue_10195r   ;  s:   sD!Ast,AsA1qvv
"(1a.(8166(A!B
BCB!A#;1a4'''B!A#;1a4'''B!HQN*+,A5553<B!A#,/28Aq>9IFF: 3    B!HQN*+,!a777rR   c                      t        dt        z  t        dd      z        ddt        dz
  z  z  k(  sJ t        ddt        z  z  dz        ddt        dz
  z  z  k(  sJ y )Nr1   r#   r$   )r   r   r   r^   rR   rA   test_issue_15709r   G  s[    1a4A&'1Q1X:5551QT6!8!ac(
***rR   c                      t        dd      \  } }t        | |z  dz  || z  dz  z        | |z  dz  || z  dz  z  k(  sJ y )Nzx yFrT   r#   rV   )r   r   s     rA   test_issue_11981r   L  sO    5e,DAqAaC!8qsQh&'AaC!8qsQh+>>>>rR   c                      t        dd      } d| dz  z
  t        d| dz  z         z  }t        t        |            t        |      cxk(  r| dz  dz   t	        d      dz  z   k(  sJ  J y )Nr   Tr/   r5   r#   r$   r1   )r   r   r   r   r
   )r   r@   s     rA   test_issue_17524r   Q  sj    $A	adDQTN"AGAJ8A;GAqD1H!Q3G2GGGGGGrR   c                  
   t        t        t        t              dz        d      t        t              k(  sJ t        t        t        j
                  t        z  z  dt        z  z  d      t        k(  sJ ddlm}  dt        z
  }t        t        |z        t        t        |z  z  z  t        dt        z
  |z  z  z  |z  }t         | |d      d      t        t        z  t        dt        z
  z  z  t        t              z  k(  sJ y )Nr#   Tr9   r   )expand_power_baser$   )r   r   r   r   r
   rN   r   sympy.core.functionr   r   r   r   r   )r   r@   rs   s      rA   test_issue_19627r   W  s    T#a&!)_D1SV;;;a!&&(mqs+48A===5	AA!HQ1Xa1q5!)n,q0D&t48 
T!a!e*_SV#$ $ $rR   c                     t        dd      \  } }t        | t        z  |t        z  z        }t        dz   }|j                  t        |      }|j                  sJ t        | |z  ||z  z        |k(  sJ t        dd      }t        t
        |z  t        |z  z        }|dz   }|j                  ||      }|j                  sJ t        t
        |z  t        |z  z        |k(  sJ y )Nzp1, p2Tr3   r$   r6   r7   )r   r   r   rO   is_Powr   r   )p1p2refr@   ansr6   s         rA   test_issue_22546r   b  s    X-FB
"a%A+
C	AA
((1a.C:::2q5Q;3&&&T"A
!Q$q!t)
C	AA
((1a.C:::1a419$$$rR   N)=r   r   sympy.core.mulr   sympy.core.numbersr   r   r   r   r	   sympy.core.singletonr
   sympy.core.symbolr   r   r   r   r   r   (sympy.functions.elementary.miscellaneousr   r   (sympy.functions.elementary.trigonometricr   'sympy.functions.special.gamma_functionsr   sympy.functions.special.hyperr   "sympy.matrices.expressions.matexprr   sympy.simplify.powsimpr   r   sympy.simplify.simplifyr   r   r   	sympy.abcr   r   r   r   r   rL   rQ   rZ   r_   rd   rj   rn   rt   rz   r   r   r   r   r   r   r   r   r   r^   rR   rA   <module>r      s    (  7 7 " 6 6 = A 8 9 / ; 7 8 ! # #h*V D:5++\B#$4;:a
8+
?
H$%rR   