
    g>                     @    d dl mZmZ d dlmZ d dlmZ d Zd Zd Z	dS )    )RecurrenceOperatorsRecurrenceOperator)symbols)QQc                     t          dd          } t          t          j        |           d          \  }}|| z  | dz   |z  k    sJ || dz  z  | dz  dz   d| z  z   |z  k    sJ |dz  | dz  z  | dz  d| z  z   dz   |dz  z  k    sJ |dz  | dz  z  || z  z   dz  }| dz  d| z  z   dz   |dz  z  d| dz  z  d	| dz  z  z   d
| z  z   dz   |dz  z  z   | dz  d| dz  z  z   d| dz  z  z   d| z  z   dz   |dz  z  z   }||k    sJ d S )NnTintegerSn               9   4      u   iD     )r   r   r   old_poly_ring)r   Rr   pqs        a/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/holonomic/tests/test_recurrence.pytest_RecurrenceOperatorr      s   T"""A 0 3 3T::EAra4AE2:ad7q!tAvacz2o%%%%q5A:!Q$1*q."a%/////	Qq!tbd	QA	
A!aQ!AqD&2ad7"2RT"9B">A!EEAPRSTVWSWPWAqDJq5JJ "AI& 	&A666666    c                     t          dd          } t          t          j        |           d          \  }}t	          | dz  ddg|          }t	          | dz  d| g|          }||k    rJ |j        d         }||k    rJ d S )Nr   Tr	   r   r   r   r   )r   r   r   r   r   
listofpoly)r   r   r   rrrr2d2s         r   test_RecurrenceOperatorEqPolyr"      s    T"""A 0 3 3T::EAr	QT1aL!	,	,B
adAq\1
-
-CSyyyy 
	Bbyyyyyyr   c                     t          dd          } t          t          j        |           d          \  }}t	          | dz  ddg|          }t	          |j        j        g|          }t          d          D ]}|||z  k    sJ ||z  }d S )Nr   Tr	   r   r   r   
   )r   r   r   r   r   baseonerange)r   r   _r   ams         r   test_RecurrenceOperatorPowr+   "   s    T"""Ar/22D99DAq	QT1aL!	,	,BAFJ<++A2YY  BEzzzz	R r   N)
sympy.holonomic.recurrencer   r   sympy.core.symbolr   !sympy.polys.domains.rationalfieldr   r   r"   r+    r   r   <module>r0      sx    N N N N N N N N % % % % % % 0 0 0 0 0 0	 	 	       r   