o
    * i                     @  s   d dl mZ d dlmZ d dlZerd dlmZ G dd dZG dd deZG d	d
 d
eZG dd deZ	G dd deZ
e Ze	 Ze
 ZdS )    )annotations)TYPE_CHECKINGN)Tensorc                   @  s$   e Zd ZdZd
ddZd
ddZd	S )
Constraintz)Constraint condition for random variable.valuer   returnc                 C  s   t N)NotImplementedErrorselfr    r   j/home/app/PaddleOCR-VL-test/.venv_paddleocr/lib/python3.10/site-packages/paddle/distribution/constraint.py__call__   s   zConstraint.__call__c                 C  s   | |S r   r   r
   r   r   r   check      zConstraint.checkNr   r   r   r   )__name__
__module____qualname____doc__r   r   r   r   r   r   r      s    
r   c                   @     e Zd ZdddZdS )Realr   r   r   c                 C  s   ||kS r   r   r
   r   r   r   r   #   r   zReal.__call__Nr   r   r   r   r   r   r   r   r   r   "       r   c                      s(   e Zd Zd fddZdd
dZ  ZS )Rangelowerfloat | Tensorupperr   Nonec                   s   || _ || _t   d S r   )_lower_uppersuper__init__)r   r   r   	__class__r   r   r"   (   s   zRange.__init__r   r   c                 C  s   | j |  ko| jkS   S r   )r   r    r
   r   r   r   r   -   s   zRange.__call__)r   r   r   r   r   r   r   )r   r   r   r"   r   __classcell__r   r   r#   r   r   '   s    r   c                   @  r   )Positiver   r   r   c                 C  s   |dkS )Ng        r   r
   r   r   r   r   2   r   zPositive.__call__Nr   r   r   r   r   r   r&   1   r   r&   c                   @  r   )Simplexr   r   r   c                 C  s(   t j|dkddo|dd  dk S )Nr   )Zaxis   gư>)paddleallsumabsr
   r   r   r   r   7   s   zSimplex.__call__Nr   r   r   r   r   r   r'   6   r   r'   )
__future__r   typingr   r*   r   r   r   r   r&   r'   realZpositiveZsimplexr   r   r   r   <module>   s   


