o
    FZŽh¿  ã                   @   s`   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d„ Zdd	„ Zd
d„ ZdS )é    )ÚSÚRational)Úschur_partitionÚSchurNumber)Ú_randint)Úraises)Úsymbolsc                 C   s,   | D ]}| D ]}|| | v du sJ ‚qqdS )z`
    Checks if subset is sum-free(There are no x,y,z in the subset such that
    x + y = z)
    FN© )ZsubsetÚiÚjr	   r	   úZ/var/www/auris/lib/python3.10/site-packages/sympy/combinatorics/tests/test_schur_number.pyÚ_sum_free_test   s
   ÿÿr   c                     sÞ   t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ tdƒddggks J ‚tdƒ} tdƒD ]7}| ddƒ}t|ƒ}d	}g }|D ]}t|ƒ 	 |t|ƒ7 }|D ]}||v d
u sRJ ‚| |¡ qHq9||ks_J ‚q(tdƒ‰ t t‡ fdd„ƒ d S )Nc                   S   s
   t tjƒS ©N)r   r   ÚInfinityr	   r	   r	   r   Ú<lambda>   s   
 z&test_schur_partition.<locals>.<lambda>c                   S   ó   t dƒS )Néÿÿÿÿ©r   r	   r	   r	   r   r      ó    c                   S   r   )Nr   r   r	   r	   r	   r   r      r   é   é   iè  é   r   FÚxc                      s   t ˆ ƒS r   r   r	   ©r   r	   r   r   *   r   )	r   Ú
ValueErrorr   r   Úranger   ÚlenÚappendr   )Zrandom_number_generatorÚ_ÚnÚresultÚtÚnumbersÚitemÚlr	   r   r   Útest_schur_partition   s*   
þr%   c                  C   s¦   ddddddœ} | D ]}t |ƒ| | ksJ ‚q
t tjƒtjks!J ‚t dƒdks)J ‚ttdd	„ ƒ td
ƒ}t |ƒ ¡ d| d tddƒ ksGJ ‚t dƒ ¡ dksQJ ‚d S )Nr   é   é   é,   é    )r   r   é   r&   r   r   c                   S   r   )Ng      à?)r   r	   r	   r	   r   r   3   r   z#test_schur_number.<locals>.<lambda>r   r*   r   é   i¯  )r   r   r   r   r   r   Úlower_boundr   )Zfirst_known_schur_numbersÚkr   r	   r	   r   Útest_schur_number,   s   &r.   N)Z
sympy.corer   r   Z sympy.combinatorics.schur_numberr   r   Zsympy.core.randomr   Zsympy.testing.pytestr   Zsympy.core.symbolr   r   r%   r.   r	   r	   r	   r   Ú<module>   s    
