o
    ñpib  ã                   @   sH   d dl mZmZmZmZmZ dd„ Zdd„ Zdd„ Zdd	„ Z	d
d„ Z
dS )é   )Ú	lookup_fnÚ
lookup_jvpÚlookup_orig2primÚlookup_prim2origÚlookup_transposec                 G   ó   t | jƒ}|| g|¢R Ž S ©N)r   Útype©ÚopÚargsZ
_lowerrule© r   úi/home/app/PaddleOCR-VL/.venv_paddleocr/lib/python3.10/site-packages/paddle/incubate/autograd/primrules.pyÚ
_orig2prim   ó   
r   c                 G   r   r   )r   r	   r
   r   r   r   Ú
_prim2orig   r   r   c                 G   r   r   )r   r	   )r   r   Z_jvpruler   r   r   Ú_jvp"   r   r   c                 G   s   t | jƒ}|| |g|¢R Ž S r   )r   r	   )r   Zdot_checkerr   Z_transposeruler   r   r   Ú
_transpose'   s   
r   c                 O   s   t | jƒ}||i |¤Ž}|S r   )r   r	   )r   r   ÚkwargsÚfnZout_dotr   r   r   Ú
linear_jvp,   s   
r   N)Zprimregr   r   r   r   r   r   r   r   r   r   r   r   r   r   Ú<module>   s   	