o
    oh                     @   sH   d dl mZ d dlmZ d dlmZ dd Zdd Zdd	 Zd
d Z	dS )    )ring)ZZ)heugcdc                  C   s`  t dt\} }|d d|d   d|d   d|  d }|d d|d   d	|  d }|d d|  d }|d d
|  d }|d }t|||||fksQJ |d d }|d d|d   d }|d d }|d d }|d d }t|||||fksJ |d |d  d|d   d|d   d|d   d|  d
 }d|d  d
|d   d|d   d|  d }d}|}|}t|||||fksJ d|d  d|d   d|d   d|d   d|d   d|d   d|d   d }d|d  d|d   d|d   d }d| d }d | d! }d | d! }d"}d}t|||||fks.J d S )#Nx                           	      l     p>Z6-(3{ CzVgsR&1   l       	` %'('@$@9$` V *   l      `%Nwgej^r0cu`ZhD #   l      ]%5u[ov&+/
c>_o],   l    @)-P/'X=vw+U9+; l    _I	,4~XsR`Y?t
U    l   y[p?u;ZW`(    l   EAy\^
l     mc@Atsl\o#MkE6w# l    @r/sLxFJGjAl   3sd%u%g%9 i[T l         qRvl        @	l        P\l        `i*  r   r   r   )Rr   fghcffcfg r   w/var/www/html/construction_image-detection-poc/venv/lib/python3.10/site-packages/sympy/polys/tests/test_heuristicgcd.pytest_heugcd_univariate_integers   s^   , @0







	

r    c               
   C   s  t dt\} }}d|d  d|  d |d }}t|||d d| d dfks+J |d d|d  d|  d }}t|||d dd| d fksNJ t dt\} }}}}|d d|  d d| d }}t|||d |d dfksyJ |d |d  d|d  |  |d  ||  | |d d|  d }}|d |d | |d  | |d }}}	t|||||	fksJ t||||	|fksJ t dt\} }}}|  \}}}t||\}
}}	|
|kr|
| |kr|
|	 |ksJ t dt\} }}}}}|  \}}}t||\}
}}	|
|kr#|
| |kr#|
|	 |ks%J t dt\} }}}}}}}|  \}}}t||\}
}}	|
|krT|
| |krT|
|	 |ksVJ t d	t\
} }}}}}}}}}|  \}}}t||\}
}}	|
|kr|
| |kr|
|	 |ksJ t dt\} }}}|  \}}}t||\}
}}	|
|kr|
| |kr|
|	 |ksJ |  \}}}t||\}
}}	|
|kr|
| |kr|
|	 |ksJ t d
t\} }}}}|  \}}}t||\}
}}	|
|kr|
| |kr|
|	 |ksJ d S )Nzx,yr
   r   r   zx,y,z,ux,y,zz	x,y,z,u,vzx,y,z,u,v,a,bzx,y,z,u,v,a,b,c,dzx,y,z,t)r   r   r   fateman_poly_F_1fateman_poly_F_2fateman_poly_F_3)r   r   yr   r   zur   r   r   Hvabcdtr   r   r   !test_heugcd_multivariate_integers@   sN   "$"$" J,$*****.r/   c            	      C   s  t dt\} }}}d|d  |d  |d  d|d  |d  |d   d|d  |d  |d   }d	|d  |d
  |d  d|d  |d  |d   d|d  |d  |d   d|d  |d  |  d|d  |d  |d   d|d  |d  |d   d|d  |d   d|d  |d  |  d|d  |d  |d   d| |d   d| |d  |d   d|d  |  }t||\}}}|d|d  |d  d| |d   d|d  |  ksJ || |kr|| |ksJ d S )Nr!      r   r   r   r   r   r   ir   
   0   r
   $   r   )	r   r   r%   r&   r   r   r(   r   r   r   r   r   test_issue_10996   s0   TR< r4   c                  C   sH   t dt\} }|d }|d| d  }| ||\}}}||ks"J d S )Nr   i  r
   r   )r   r   dup_zz_heu_gcd)r   r   r   r   r(   r   r   r   r   r   test_issue_25793   s
   r6   N)
sympy.polys.ringsr   sympy.polys.domainsr   sympy.polys.heuristicgcdr   r    r/   r4   r6   r   r   r   r   <module>   s    :D