U
    0e                     @   s   d dl mZ ddlZddlmZmZmZmZmZm	Z	m
Z
mZ edddZedddZed	ddZd
d Zdd Zdd Zdd Zdd Zdd Zdd ZdS )   )assert_equal    N)SymbolRationalFloatMinsqrtexppi	nsimplifyxT)realyzc                   C   s   t dtdd t dtdd t dtdd	 t d
tdd t dtdd t dtd t dtdtd t dtdddd d S )Nz
\min(1, 5)r      z\min(12, 4)      z\min(109, 120)m   x   z
\min(3, 3)   z
\min(0, 0)r   z\min(1)z\min(1092198374, 290348E32)iAZ	290348E32z\min(5, 2, 17, 4)      r   r   r    r   r   2/tmp/pip-unpacked-wheel-586xlynq/tests/min_test.pytest_min_usual
   s    r   c                   C   sl   t dtdd t dtdd t dtd t dtdd t d	ttd
d t dtddddd d S )Nz\min(-9, 4)ir   z\min(4, -9)z\min(-7)iz\min(-2, -2)z\min(-324E-3, -58)z-324E-3iz\min(-1, 0, 1, -37, 42)r   r   i*   r   r   r   r   r   test_min_negative   s    r   c                   C   s   t dttd t dttdtd t dtdd t d	td
d t dtd t dtdd t dtttdtddd t dttddd d S )Nz\min(\pi, 3)r   z\min(1234.56789, 1234.5678901)z
1234.56789z1234.5678901z\min(12.4, 9.5)g(@g      #@z\min(6, 6.2)   g@z\min(-98.7)g̬Xz\min(7.1, 9)gffffff@	   z\min(-21E-12, 0.00005)z-21E-12z0.00005TZsymbolicallyz\min(\sqrt{3}, 0, 1)r   r   )r   r   r
   r   r   r   r   r   r   r   test_min_float   s     r#   c                   C   s   t dttdtd t dttdd t dttdtd t d	ttd
td t dttd t dttdtd dd t dttdtdtdd d S )Nz\min(1/2, 1/4)z1/2z1/4z\min(6/2, 3)z6/2r   z\min(2/4, 1/2)z2/4z\min(-12/5, 6.4)z-12/5z6.4z
\min(1/10)z1/10z\min(1.5, \pi/2)z1.5r   F)evaluatez\min(-4/3, -2/1, 0/9, -3)z-4/3z-2/1z0/9)r   r   r   r
   r   r   r   r   test_min_fraction)   s    r&   c                   C   s   t dttddd t dtd t dtdtd d	 t d
tddd  t ddtddtd   t dtttdd t dttddttdtd d S )Nz\min((1+6)/3, 7)   r   z
\min(58*9)i
  z\min(1+6/3, -5)r   z6/3z\min(7*4/5, 092) * 2gffffff@\   r   z38+\min(13, 15-2.3)&         z2.3z"\sqrt{\min(99.9999999999999, 100)}z99.9999999999999d   z"\min(274/(5+2), \exp(12.4), 1.4E2)i  z12.4z1.4E2)r   r   r   r   r	   r   r   r   r   test_min_expr3   s    r.   c                   C   s   t dttdd t dtttdd t dtttdd t dttt tt dd t dtdt d	 tdd t d
ttt ddd t dtdt t td dd t dttttdd d S )Nz\min(x)Tr"   z
\min(x, y)z
\min(y, x)z\min(x+y, y+x)z\min(9x/4, z)r!   r   z\min(y\pi, 9)z\min(2y-y, y + 1)r   r   z\min(z, y, x))r   r   r   r   r   r
   r   r   r   r   test_min_symbol=   s     r/   c                	   C   s   t dtdd t dtddd t dttttd	d
 t dttdtdtdd t dtttddtdtd t dtdd t dtddd d S )Nz	\min(1,2)r   r   z\min(9,876,543)r!   il  i  z\min(x, y,z)Tr"   z\min(5.8,7.4, 2.2,-10)z5.8z7.4z2.2iz\min(\pi,12E2,84,\sqrt{5},12/5)Z12E2T   r   z12/5z\min(823,51)i7  3   z\min(72*4,23, 9)i      )r   r   r   r   r   r   r
   r   r   r   r   r   test_min_multiargH   s     "r3   )contextr   ZpytestZsympyr   r   r   r   r   r	   r
   r   r   r   r   r   r   r#   r&   r.   r/   r3   r   r   r   r   <module>   s   (	

