
    sg?                     2   d 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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 ddlmZ ddlmZ dd	l m!Z! dd
l"m#Z#m$Z$m%Z%  ed      \  Z&Z'Z(Z)Z*d Z+d Z,d Z-d Z.d Z/d Z0d Z1d Z2d Z3d Z4d Z5d Z6d Z7d Z8d Z9y)z?Most of these tests come from the examples in Bronstein's book.    )DifferentialExtension
derivation)prde_normal_denomprde_special_denomprde_linear_constraintsconstant_system	prde_spdeprde_no_cancel_b_largeprde_no_cancel_b_smalllimited_integrate_reducelimited_integrate
is_deriv_kis_log_deriv_k_t_radicalparametric_log_deriv_heu!is_log_deriv_k_t_radical_in_fieldparam_poly_rischDEparam_rischDEprde_cancel_liouvillian)
PolyMatrix)Rational)S)symbols)QQ)Poly)xtnzt:4 kc                     t        dt        dt              t        dt        dz  z   t              gi      } t        dt              }t        t        t              }t        t        t              t        dt        dz  z   t              ft        dt              t        t        t        t        dz  z  z   t              fg}t	        ||||       t        t        t        d      t        dt        d      t        dt        d      ft        t        t        z  t        d      t        t        dz  dz   t        d      ft        dt        d      t        t        dz  dz   t        d      fgt        dt        d      fk(  sJ t        t        t              t        t        dz  dt        z  z   dz   t              ft        t        t        z  t              t        t        dz  dt        z  z   dz   t              ft        t        t        dz  z  t              t        t        dz  dt        z  z   dz   t              fg}t        dt        dt              t        t        t              gi      } t	        t        t        t              t        dt              ||       t        t        dz   t              t        dt        z   t        z  t        z   t              t        dt        d      ft        t        t              t        dt              ft        t        t        z  t              t        dt        d      ft        t        t        dz  z  t              t        dt        d      fgt        t        dz   t              fk(  sJ y )	ND      	extensionZZ(x)domainZZ[x])r   r   r   r   r   )DEfafdGs       R/var/www/html/venv/lib/python3.12/site-packages/sympy/integrals/tests/test_prde.pytest_prde_normal_denomr.      s   	#Q
DQT1<M/N)O	PB	aB	aB
q!*d1q!t8Q'	(41:tA!Q$J7J*KLARQ+	a7	#d1a&@$q!C & $QqS!G <	adQh'	* ,.21a.H!Q$(Ag..0126q!G2L	NN N N
 q!*d1a4!A#:>1-	.ac1QTAaCZ!^Q1!#'!Q$?DA!a4K"L	NA	#Q
DAJ/G)H	IBT!QZaQ;	a!eQ$QzA~q141W3MNRVWXZ[R\Q
R1Q3lDAg$>?$qAvq/Q'"B$Q%&*1q5!n	66 6 6    c            
         t        t        dz   t              } t        t        dz  t              }t        dt              }t        t        t              t        dt              ft        t        dz  t              t        dt              ft        t        dz  t              t        dt              fg}t        dt        dt              t        t        t              gi      }t	        | ||||      t        t        dz   t              t        t        dz  t              t        t        t              t        dt              ft        t        dz  t              t        dt              ft        t        dz  t              t        dt              fgt        dt              fk(  sJ t        t        t              t        dt              ft        dt              t        t        t              fg}t	        t        dt              t        t        dz  t              t        dt              ||      t        dt              t        t        dz  dz
  t              t        t        dz  t              t        dt              ft        dt              t        dt              fgt        t        t              fk(  sJ t        dt        dt              t        dt        z  t
        z  t
              gi      }|j                          t        t        t              t        t        dz  t              ft        dt        z  t              t        t        t              fg}t	        t        dt        z  t        z  dz   t              t        t        dz  dt        dz  z  t        z  z   t              t        t        dz  dz   t              ||      t        dt        z  t        z  dz   t              t        dt        d	
      t        t        t              t        t        dz  t              ft        dt        z  t              t        t        t              fgt        dt              fk(  sJ t        dt        dt              t        t        dz  dz   dz  t        z  t              gi      }t        t        t        z   t              t        t        t        z  t              ft        dt        z  t              t        t        dz  t              fg}t	        t        dt        z  t        z  dz   t              t        t        dz  dt        dz  z  t        z  z   t              t        t        dz  t              ||      t        dt        z  t        z  dz   t              t        dt        d	
      t        t        t        z   t              t        t        t        z  t              ft        dt        z  t        t              t        t        dz  t        t              fgt        dt              fk(  sJ t	        t        t        dz   t              t        t        dz  t              t        t        dz  t              ||      t        t        dz   t              t        dt        d	
      t        t        t        z   t              t        t        t        z  t              ft        dt        z  t        t              t        t        dz  t        t              fgt        dt              fk(  sJ y )Nr    r!      r   r"      r   r(   r%   )r   r   r   r   r   t0decrement_level)ababdr,   r)   s        r-   test_prde_special_denomr9   )   s   QUAA	adAB	aB
q!*d1aj	!DAqM41:#>adAPTUVXYPZ@[\A	#Q
DAJ/G)H	IBaRB/	a!eQadA$q!*d1aj)A	adAQ
#d1a4mT!QZ%@)BCG1:	OO O O q!*d1aj	!DAJQ
#;<Ad1aj$q!tQ-aQK	aT!Q$(A&$q!tQ-a)D	aT!QZ )"#'1:	// / / 
#Q
DAb"<M/N)O	PB
q!*d1a4m	$tAaC|T!QZ&@AAd1Q3q519a0$q!ta1fQh2JDQRTUQUXYQY[\L]_`bde	ac!eai	T!Qw741:tAqDRS}:U	ac1tAqz":$%)!QZ	11 1 1 
#Q
D!Q$(AaQR<S/T)U	VB
q1ua.$qsA,	'$qsA,QT1)FGAd1Q3q519a0$q!ta1fQh2JDQRTUQUWXM[\^`a	ac!eai	T!Qw74Aq>4PQRSPSUV<:X	ac1a$q!tQ*+:-.21aj	:: : : d1q5!nd1a4mT!Q$]ArR	a!eQa73tAE1~tAaCQR|6TW[\]^_\_abdeWfQT1aW 6 AJ	(( ( (r/   c                     t        dt        dt              gi      } t        dt        dz  z  dt        z  z   dz   t              t        t        dz  dz
  t              ft        dt              t        t        dz
  t              ft        dt              t        t        dz   t              fg}t        t        dt              t        dt              ||       t        dt        z  t        d      t        dt        d      t        dt        d      ft	        g d	g d
gt              fk(  sJ t        t
        t
              t        dt
              ft        t
        dz  t
              t        dt
              ft        t
        dz  t
              t        dt
              fg}t        dt        dt              t        t
        t
              gi      } t        t        t
        dz   t
              t        t
        dz  t
              ||       t        t
        t
        d      t        t
        dz  t
        d      t        t
        dz  t
        d      ft	        ddg t
              fk(  sJ t        dt        z  t
              t        t
        t
              ft        t         t
              t        t
        t
              fg}t        dt        dt              t        dt        z  t
              gi      } t        t        dt
              t        dt
              ||       t        dt
        d      t        dt
        d      ft	        dt        z  t         ggt
              fk(  sJ y )Nr   r    r"   r!   r1   r   r   r%   )r    r    r'   )r3   r    r    QQ[x])r   r   r   r   Matrixr   r)   r,   s     r-   test_prde_linear_constraintsr>   F   s   	#Q
|)<	=B
qAv!|a
#T!Q$(A%6	7$q!*d1q5RSn9U	aT!a%^$	&A"41:tAqz1bA
qsAd
#T!Qt%<d1aPT>U	VJ	*A.	00 0 0 q!*d1aj	!DAqM41:#>adAPTUVXYPZ@[\A	#Q
DAJ/G)H	IB"4Aq>41a=!RH
q!D
!41a#=tAqD!TX?Y	Z1aQ	!! ! ! qsA,Q
	#dA2qk41:%>?A	#Q
D1aL/I)J	KB"41:tAqz1bA
q!G
$d1a&@	A6AaCRSQS9+WXCYZ[ [ [r/   c                     t        t        dz    t        dz
  z  t        dz   t        dz
  z  dgt         dz
  t        dz   t        dz
  gdt        dz   z  t        dz
  z  ddggt              } t        t        dz   t        dz
  z  gt        dz   gdggt              }t        dt	        dt              gi      }t        j                  t              t           }t        | ||      t        g dg dg d	g d
g|      t        g d|      fk(  sJ y )Nr1   r    r!   r   r   r"   )r    r   r   )r   r    r   )r   r   r   )r   r   r    ring)r   r    r   r   )r<   r   r   r   r   r   
frac_fieldr   )Aur)   Rs       r-   test_constant_systemrF   X   s   1q51q5!AEAE?A6aQA&AEAE"Aq)+,-	/A 	!a%!a%!AE7QC0!4A	#Q
|)<	=B
aA1a$	 #$
% '-\&B	DD D Dr/   c            
      T   t        t        t              t        t         t        z  t              g} t        dt        dt              t        dt        z  t              gi      }t	        t        t        t              t        dt        z  t              | t
        |      t        t        t              t        dt        d      t        dt        z  t        d      t        t         t        d      gt        t        dz   t        d      t        dt        d      gt
        dz
  fk(  sJ y )	Nr   r    r"   r'   r   r$   r%   r!   )r   r   r   r   r	   r   )r   r)   s     r-   test_prde_spderH   f   s    	aT1"Q$]#A	#Q
D1aL/I)J	KBT!QZbdA1b9	aT!Qw/	ac1W	%tQB''BC	q!teQw	'a7)CDa!e	MM M Mr/   c                  b   t        dt        dt              gi      } t        t        dt              t        t        dz  t              t        dt              gd|       t        t        dz  dt        z  z
  dz   t              t        dt              gt	        g dg dgt              fk(  sJ t        t        dt              t        t        dz  t              t        dt              gd|       t        t        dz  dt        dz  z  z
  dt        z  z   dz
  t              t        dt              gt	        g dg dgt              fk(  sJ t        t        t        t              t        t        dz  t              t        dt              gd|       t        t        t        d	
      t        dt        d	
      gt	        g dg dg dgt              fk(  sJ t        dt        dt              t        t
        dz  dz   t
              gi      } t        t
        dz  t
              t        t        t
        dz  z  t
              t        t
        dz  t
              t        t        t
        dz  z  t
              t        dt        z   t
              g}t        j                  t              t
           }t        t        t        t
        z  t
              |d|       t        t
        dz  dz  t        dz  t
        dz  z  z
  t        dz  dz  t
        dz  z  z   t        dd      t        dz  dz  z
  t
        z  z   t        dz  z   t
              t        t        dz  t
        dz  z  t        dz  dz  t
        dz  z  z
  t        dd      t        dz  dz  z   t
        z  z   t        dz  z
  t
              t        t
        t
              t        dt
              t        dt
              gt	        g dddt        dd      dddddddg
g dg dg dg dg dg dg dg dg
|      fk(  sJ t        dt        dt              t        dt
        dz  z   t
              gi      } t        dt        dz  z  t
        d      }t        d      D cg c]5  }t        d      D ]%  }t        t        |z  t
        |z  z  t
        d      ' 7 }}}t        ||d|       \  }}|j                         }	t        j                  t              t
           }t        |	      dk(  sJ |	d   t	        t        dd      dddddgdz  |      k(  sJ t	        |g      |	d   dd d d f   z  d   t        t        dz  dz  t
        d
      k(  sJ t	        |g      |	d   d dd d f   z  d   t        t        t        j                  z
  t
        d
      k(  sJ y c c}}w ) Nr   r    r"   r!   )r    r   r'   r   )r   r    r   r'   r1      ZZr%   r   )r    r'   r   r   r3            ir'   )
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   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   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   r   r   r   r    r   r   r   r   r'   r@   TfieldQQ(x))r   r   r   r
   r<   r   r   rB   r   r   range	nullspacelenr   Half)
r)   r,   rE   bijqhrC   Vs
             r-   test_prde_no_cancelr\   p   s   	#Q
|)<	=B!$q!*tAqD!}d1aj.I1bQ
q!taczA~q
!41:	.8E8GHI1K 	LL L L "$q!*tAqD!}d1aj.I1bQ
q!ta1f}qs"Q&
*DAJ	7ANAPQR:T 	UU U U "$q!*tAqD!}d1aj.I1bQ
q!D
!41T#:	;V_DSDSEUVW>Y 	ZZ Z Z 
#Q
DA1<M/N)O	PB 
adAQq!tVQadAQq!tVQaRSeUVXA
aA!$qsA,1b9
q!tAv"QT	!AqDGAqDL0HS"4E1R4OQR3RRUVWYUYY[\
]QqSAX1Qq!t#xAAa'?&BBQqSH!LdSTVWjQ
DAJ
 !')Z*+QQAAPQTUXY)Z)Z)Z)Z)Z)Z)Z)Z)Z	)\ cd	"e	ff f f 
#Q
DQT1<M/N)O	PBR1Wat$A16qLA58Laad1a4i$	'L	'LAL!!Q2.DAq	A
aAq6Q;;Q468B?Aq!Q:1<1EEEEA3K!QRU#Q'41Q'+JJJJA3K!RaRU#Q'4AFF
Ag+NNNN 	Ms   /:V+c                     t        dt        dt              t        dt        z  t              gi      } t        dt        d      }t        t        dz
  t        z  t        d      }t        t        dz
  t        d      }t        t        d	z   t        z   t        d      }t	        t        d
t        dz
  z  t              t        t         dz   t              t        dt              gd|       \  }}|j                         }|||||||||||||||||gk(  sJ |j                         dk(  sJ t        |g      |d   d dd d f   z  t        t        dt        d      gg      k(  sJ t        dt        dt              t        t         t              gi      } t	        t        dt        d      t        dt        d      gd|       t        dt        d      t        t        t        d      gt        g dg| j                        fk(  sJ y )Nr   r    r"   r   TrO   r$   r%   r!   r'      rQ   r;   r   )r'   r   r    )r   r   r   r   r   rS   rankr<   )r)   p0p1p2p3rZ   rC   r[   s           r-   test_prde_cancel_liouvillianrd      s    
#Q
D1aL/I)J	KB	a$	B	q1uai7	+B	a!eQw	'B	q!teai7	+B"4AE
A#6qb1fa$qRS*8UWXZ\]DAq	ARRRRRRRRPPPP668r>>A3K!SbS!V$$q!G2L1M0N)OOOO
 
#Q
D!QK/H)I	JB"41W#=QRY@Z?[]^`bc1a%tAq'ABFJ<Y[Y]Y]D^_` ` `r/   c                     t        dt        dt              gi      } t        t        dz  t        z
  t        d      }t        dt        d      }t        t        t        d      t        t        dz  t        d      g}t        |||d|       \  }}|j	                         t        g d| j                        gk(  sJ |d	   |d   z   t        t        t        d
      k(  sJ t        t        dz  t        z
  t        d      }t        t        dz  dt        z  z
  dz   t        d      }t        dt        d      t        t        t        d      t        t        dz  t        d      g}t        |||d|       \  }}|j	                         t        g d| j                        gk(  sJ t        d| j                         |d	   z  |d   z   |d   z   }|t        ||       z  ||z  z   t        t        dz  dt        z  z
  dz   t        d
      k(  sJ y )Nr   r    r"   r!   TrO   r1   )r   r    r    r    r   r   r%   r3   )r1   r    rf   r    r    )r   r   r   r   rS   r<   r   r   )r)   r6   rV   rY   rZ   rC   ps          r-   test_param_poly_rischDErh      s   	#Q
|)<	=BQTAXq%AQA	a$	adAT!:;AaAq"-DAq;;=VL"$$78888 Q4!A$;$q!D1111 	QTAXq%AQTAaCZ!^Qd+A	a$	a$!7	adAT	"	$AaAq"-DAq;;=V$8"$$?@@@@	aqtad"QqT)AZ21$QTAaCZ!^Qt(LLLLr/   c                     t        dt        dt              gi      } t        dt        d      t        t        t        d      }}||f||f||fg}t        | t        t        dz  t        d      ||       \  }}t	        |      dk(  sJ |D cg c])  }|d   j                         |d   j                         z  + }}|j                         }t	        |      dk(  sJ |d   t        g d	| j                        k(  sJ |d    |d   z   d|d   z  z   }	|	j                  t              |	t        dz  z  z
  ddt        z  z
  k(  sJ t        dt        dt              t        t        t              gi      } t        t        t        z   t        d
      t        dt        d      ft        dt        d      t        dt        d      fg}t        t        t         dz
  t        d      t        t        t        z   t        d      ||       \  }}t	        |      dk(  sJ |D cg c])  }|d   j                         |d   j                         z  + }}|j                         }t	        |      dk(  sJ |d   t        g d| j                        k(  sJ d|d   z  d|d   z  z   d|d   z  z   d|d   z  z   d|d   z  z   }	|	j                  t              |	t        t        z   z  z
  dk(  sJ y c c}w c c}w )Nr   r    r"   TrO   r!   r1   r   )r'   r    r   r'   r    r   r$   r%   r   r3   )r   r   r   r   r    r   r   rL   )
r   r   r   r   rT   as_exprrS   r<   r   diff)
r)   ra   pxr,   rZ   rC   hirg   r[   ys
             r-   test_param_rischDEro      s   	#Q
|)<	=B!Qd#T!Qd%;B
bB8b"X&A"d1a4$7B?DAqq6Q;;345RAA	(5A5	Aq6Q;;Q46.5555	
1!q1vA66!9qAvQqS((( 
#Q
DAJ/G)H	IB
q1ua
($q!D*A	BT!QW[E\^bcdfgpt^uDvwAqb1fat4d1q5!46PRSUWXDAqq6Q;;345RAA	(5A5	Aq6Q;;Q46/6666	!A$1Q4!AaD& 1QqT6)AadF2A66!9q!a%y A%%%% 	6 	6s   .K'.K,c                  L   t        dt        dt              t        dt        z  t              gi      } t	        t        t        t              t        t        dz  t              t        t        t              t        t        t              fg|       t        t        t              t        dt        z  t              t        t        t              dt        t        t              t        dt        d      ft        t         t        z  t              t        dt        d      fgfk(  sJ y )Nr   r    r"   r!   r'   r(   r%   )r   r   r   r   r   r)   s    r-   test_limited_integrate_reducerr      s    	#Q
D1aL/I)J	KB#DAJQT1aAJA @	aT"Q$]DAJDAJQRY@Z3[
r!tQ-a73	45	77 7 7r/   c                      t        dt        dt              gi      } t        t        t              t        t        dz   t              fg}t        t        dt        z   dt        dz  z  z   dt        dz  z  z
   t              t        dt        z
  t        dz  z
  t        dz  z   t              ||       t        t        dz  t        z
  dz   t              t        t        dz
  t        d      fdgfk(  sJ t        dt              t        t        t              fg}t        t        dt        dz  z  t              t        dt              ||       t        dt        dz  z  d	z  t              t        dt        d      fd
gfk(  sJ y )Nr   r    r"   r3   r!   r1   r   r%   	   r   )r   r   r   r   r=   s     r-   test_limited_integrateru      sB   	#Q
|)<	=B
q!*d1q5!n	%&ATAEAadFNQq!tV$;"<a@QA1	a !R)
q!tax!|Q
a!eQt!<	=sCD D D q!*d1aj	!"AT!AqD&!_d1aj!R@
qAvax
T!Qt4	5s;< < <r/   c                  z   t        t        dt              gd gd gd      } t        t        dt        z  t              t        dt              |       J t        t        dt              t        dt        z  t              t        dt        z  t
              gg dd dt        z  t        gd      } t        t        t        t
        dz  z   t
              t        dt
              |       t        dft        dfgt        t        z  ddfk(  sJ t        t        dt              t        t        t              t        dt        z  t              gg dd t        t        gd      } t        t        t        t        dz  z   dz   t              t        dt              |       t        dft        dfgt        t        dz  z  ddfk(  sJ y )Nr    r   extsextargsr"   r!   )Nexplogr   r1   )r   r   r   r   t1t2r4   r   rq   s    r-   test_is_log_deriv_k_t_radicalr~      sp   	Q
|dV6* 
B#D1aL$q!*bAIII	Q
D2rNDQRSTQTVXM/Z$$!Q*A 
BB#DRT2$6QRHq'Aq6	BqD!Q'( ( ( 
Q
DRL$qQRsTU,/W$$1*? 
@B#DQqS1a$8$q!*bIq'Aq6	Ab!eGQ*+ + +r/   c            	      R   t        t        dt              t        dt        z  t              t        dt        dz   z  t              gg dd t        t        dz   gd      } t        t        dt        dz  z  dt        z  z   t              t        dt              |       t        dft        dfgt        t        z   dfk(  sJ t        t        dt              t        dt        z  t              t        t        t              gg dd t        t        gd      } t        t        t        dz  t        dz  z  t              t        dt              |       t        dft        dfgdt        z  dt        z  z   dfk(  sJ t        t        dt              t        dt        z  t              gd dgd t        dz  gd      } t        t        t        t              t        dt              |       t        t        j                  fgt        dz  dfk(  sJ t        t        dt              t        ddt        z   z  t              gd dgd t        dz  dt        z  z   dz   gd      } t        t        dt        z   t              t        dt              |       t        t        j                  fgt        dz  dfk(  sJ t        t        dt              t        d	t        z  t              gd dgd dt        z  gd      } t        t        dt              t        t        t              |       t        dfgt        dfk(  sJ y )
Nr    )Nr{   r{   rw   r"   r!   )Nr{   rz   r1   r{   r'   )
r   r   r   r|   r}   r   r   rU   r4   r   rq   s    r-   test_is_deriv_kr     s   	Q
D1bM4PQSTWXSXPY[]K^/_$$1q51A*C 
DBd1QT6AaC<,d1bk2>q'B7	R"Wa() ) ) 
Q
D1bM4PRTV</X$$1*? 
@Bd1a4A:r*DBK<a&2q'	AbD1Q3J*+ + + 
Q
D1bM/Ju4A,*8 
9Bd1bk42;3qvv,Aq!" " " 
Q
DAEB<O/Pu4A!a*@*B 
CBd1q5"otAr{B7qvv,Aq!" " "
 
Q
DAqM/Ju41+*7 
8Bd1aj$q!*b11vh15EEEEr/   c            	         t        dt        dt              t        dt        z  t              gi      } t	        t        dt        z  dz   t              t        dt        z  t        z  t              |       dt        t        dz  z  fk(  sJ t	        t        ddt        z  z   t              t        dt        z  t        z  t              |       dt        dz  t        dz  z  fk(  sJ t        dt        dt              t        t         t        dz  z  t              gi      } t	        t        ddt        z  z    t              t        dt        dz  z  dt        dz  z  t        z  z   t              |       dt        t        dz  z   fk(  sJ t	        t        dt              t        t        dz  t              |       dt        fk(  sJ t	        t        dt              t        dt        dz  z  t              |       ddt        z  fk(  sJ y )Nr   r    r"   r3   r!   r1   r'   )r   r   r   r   r   rq   s    r-   &test_is_log_deriv_k_t_radical_in_fieldr   +  s    
#Q
D1aL/I)J	KB,T!A#'1-=tAaCE1~rR	
AadF  ,T!ac'1-=tAaCE1~rR	
AqDAI   
#Q
D!AqD!<L/M)N	OB,TA!G*a-@1a4!AqD&(	A$	
A1H   -T"a[$q!tQ-L	
A  ,T!QZa1fa"M	
AaC  r/   c            
         t        dt        dt              t        dt        z  t              gi      } t	        t        dt        dz  z  t        z   dz
  t              t        dt        z  t        dz  z  t              t        dt              t        t        t        dz  z  t              |       ddt        t        dz  z  fk(  sJ y )Nr   r    r"   r3   r!   rJ   r'   )r   r   r   r   r   rq   s    r-   test_parametric_log_derivr   >  s    	#Q
D1aL/I)J	KB#D1a4!a$;T!A#ad(A=NQKa1fa"&	
AqAv  r/   N):__doc__sympy.integrals.rischr   r   sympy.integrals.prder   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   sympy.polys.polymatrixr   r<   sympy.core.numbersr   sympy.core.singletonr   sympy.core.symbolr   !sympy.polys.domains.rationalfieldr   sympy.polys.polytoolsr   	sympy.abcr   r   r   r4   r|   r}   t3kr.   r9   r>   rF   rH   r\   rd   rh   ro   rr   ru   r~   r   r   r    r/   r-   <module>r      s    E C     8 ' " % 0 &  G$ BB6&(:[$DM-O``.M0&67<+"F:&r/   