
    \h>                     >    S SK JrJr  S SKJr  S SKJr  S rS rS r	g)    )RecurrenceOperatorsRecurrenceOperator)symbols)QQc                     [        SSS9n [        [        R                  " U 5      S5      u  pX -  U S-   U-  :X  d   eX S-  -  U S-  S-   SU -  -   U-  :X  d   eUS-  U S-  -  U S-  SU -  -   S-   US-  -  :X  d   eUS-  U S-  -  X -  -   S-  nU S-  SU -  -   S-   US-  -  SU S-  -  S	U S-  -  -   S
U -  -   S-   US-  -  -   U S-  SU S-  -  -   SU S-  -  -   SU -  -   S-   US-  -  -   nX4:X  d   eg )NnTintegerSn               9   4      u   iD     )r   r   r   old_poly_ring)r   Rr   pqs        ]/var/www/auris/envauris/lib/python3.13/site-packages/sympy/holonomic/tests/test_recurrence.pytest_RecurrenceOperatorr      s_   T"A 0 0 3T:EA4AE2:d7q!tAvacz2o%%%q5A:!Q$1*q."a%////	Qq!tbd	QA	
A!aQ!AqD&2ad7"2RT"9B">A!EEAPRSTVWSWPWAqDJq5JJ "AI& 	&A6M6    c                      [        SSS9n [        [        R                  " U 5      S5      u  p[	        U S-  SS/U5      n[	        U S-  SU /U5      nX4:X  a   eUR
                  S   nXE:X  a   eg )Nr   Tr	   r   r   r   r   )r   r   r   r   r   
listofpoly)r   r   r   rrrr2d2s         r   test_RecurrenceOperatorEqPolyr"      sy    T"A 0 0 3T:EA	QT1aL!	,B
adAq\1
-Cy= 
	By=yr   c                     [        SSS9n [        [        R                  " U 5      S5      u  p[	        U S-  SS/U5      n[	        UR
                  R                  /U5      n[        S5       H  nXCU-  :X  d   eXC-  nM     g )Nr   Tr	   r   r   r   
   )r   r   r   r   r   baseonerange)r   r   _r   ams         r   test_RecurrenceOperatorPowr+   "   sv    T"Ar//2D9DA	QT1aL!	,BAFFJJ<+A2YEzz	 r   N)
sympy.holonomic.recurrencer   r   sympy.core.symbolr   !sympy.polys.domains.rationalfieldr   r   r"   r+    r   r   <module>r0      s    N % 0	 r   