
    zj                        d dl mZ d dlmZ d dlZerd dlmZ  G d d          Z G d de          Z G d	 d
e          Z G d de          Z	 G d de          Z
 e            Z e	            Z e
            ZdS )    )annotations)TYPE_CHECKINGN)Tensorc                  "    e Zd ZdZddZddZdS )	
Constraintz)Constraint condition for random variable.valuer   returnc                    t           N)NotImplementedErrorselfr   s     n/lsinfo/ai/hellotax_ai/data_center/backend/venv/lib/python3.11/site-packages/paddle/distribution/constraint.py__call__zConstraint.__call__   s    !!    c                     | |          S r    r   s     r   checkzConstraint.check   s    tE{{r   Nr   r   r	   r   )__name__
__module____qualname____doc__r   r   r   r   r   r   r      sB        33" " " "     r   r   c                      e Zd ZddZdS )Realr   r   r	   c                    ||k    S r   r   r   s     r   r   zReal.__call__#   s    ~r   Nr   r   r   r   r   r   r   r   r   r   "   s(             r   r   c                  (     e Zd Zd
 fdZdd	Z xZS )Rangelowerfloat | Tensorupperr	   Nonec                d    || _         || _        t                                                       d S r   )_lower_uppersuper__init__)r   r    r"   	__class__s      r   r(   zRange.__init__(   s-    r   r   r   c                6    | j         |cxk    o
| j        k    nc S r   )r%   r&   r   s     r   r   zRange.__call__-   s(    {e2222t{22222r   )r    r!   r"   r!   r	   r#   r   )r   r   r   r(   r   __classcell__)r)   s   @r   r   r   '   sQ             
3 3 3 3 3 3 3 3r   r   c                      e Zd ZddZdS )Positiver   r   r	   c                    |dk    S )Ng        r   r   s     r   r   zPositive.__call__2   s    |r   Nr   r   r   r   r   r-   r-   1   s(             r   r-   c                      e Zd ZddZdS )Simplexr   r   r	   c                    t          j        |dk    d          o-|                    d          dz
                                  dk     S )Nr   )axis   gư>)paddleallsumabsr   s     r   r   zSimplex.__call__7   sE    z%1*2... 
YYr]]Q##%%,	
r   Nr   r   r   r   r   r0   r0   6   s(        
 
 
 
 
 
r   r0   )
__future__r   typingr   r5   r   r   r   r   r-   r0   realpositivesimplexr   r   r   <module>r>      sE   # " " " " "                         :   
3 3 3 3 3J 3 3 3    z   

 
 
 
 
j 
 
 
 tvv8::
'))r   