
    g                     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 Zd Zd Zy	)
    )SRational)schur_partitionSchurNumber)_randint)raises)symbolsc                 6    | D ]  }| D ]  }||z   | v du rJ   y)z`
    Checks if subset is sum-free(There are no x,y,z in the subset such that
    x + y = z)
    FN )subsetijs      `/var/www/openai/venv/lib/python3.12/site-packages/sympy/combinatorics/tests/test_schur_number.py_sum_free_testr      s.    
 AEVO---      c                     t        t        d        t        t        d        t        t        d        t        d      ddggk(  sJ t        d      } t	        d      D ]b  } | dd      }t        |      }d}g }|D ]<  }t        |       	 |t        |      z  }|D ]  }||v d	u sJ |j                  |        > ||k(  rbJ  t        d
      t        t        fd       y )Nc                  4    t        t        j                        S N)r   r   Infinityr   r   r   <lambda>z&test_schur_partition.<locals>.<lambda>   s    qzz:r   c                      t        d      S )Nr   r   r   r   r   z&test_schur_partition.<locals>.<lambda>   s	    r2r   c                      t        d      S )Nr   r   r   r   r   r   z&test_schur_partition.<locals>.<lambda>   s	    q1r         i     r   Fxc                      t               S r   r   )r   s   r   r   z&test_schur_partition.<locals>.<lambda>*   s
    q1r   )	r   
ValueErrorr   r   ranger   lenappendr	   )	random_number_generator_nresulttnumbersitemlr   s	           @r   test_schur_partitionr,      s    
::;
:23
:1211a&)))&tn1X#At, #D4  TNAW...q!   Avv   	A
:12r   c                     dddddd} | D ]  }t        |      | |   k(  rJ  t        t        j                        t        j                  k(  sJ t        d      dk(  sJ t        t        d        t        d	      }t        |      j                         d
|z  dz  t        dd      z
  k(  sJ t        d      j                         dk(  sJ y )Nr         ,      )r   r      r.   r   r   c                      t        d      S )Ng      ?)r   r   r   r   r   z#test_schur_number.<locals>.<lambda>3   s	    {3/r   r&   r2   r      i  )r   r   r   r   r    r	   lower_boundr   )first_known_schur_numberskr&   s      r   test_schur_numberr8   ,   s    $%!rc B&1~!:1!==== ' qzz"ajj000q>Q
:/0Aq>%%'1a46HQN+BBBBq>%%'4///r   N)
sympy.corer   r    sympy.combinatorics.schur_numberr   r   sympy.core.randomr   sympy.testing.pytestr   sympy.core.symbolr	   r   r,   r8   r   r   r   <module>r>      s#    " I & ' %.340r   