o
    »i eþ  ã                   @   s(   d Z dd„ Zdd„ Zdd„ Zdd„ Zd	S )
z8Common utilities for registering LinearOperator methods.c                 C   s@   | j r|j rdS | j du r|j du s| j du r|j du rdS dS )z(Get combined hint for self-adjoint-ness.TFN)Úis_self_adjoint©Ú
operator_aÚ
operator_b© r   ú^/var/www/myenv/lib/python3.10/site-packages/tensorflow/python/ops/linalg/registrations_util.pyÚ$combined_commuting_self_adjoint_hint   s   



r   c                 C   sp   | j r|j rdS | j du r$|j du r$| j}|j}|dur$|dur$||kS | j |j kr6| j dur6|j dur6dS dS )z3Return a hint to whether the composition is square.TFN)Ú	is_squareÚrange_dimensionÚdomain_dimension)r   r   ÚmÚlr   r   r   r   +   s   r   c                 C   s0   | j du r| jdu r|j du r|jdu rdS dS )z&Get combined PD hint for compositions.TN)Úis_positive_definiter   r   r   r   r   Ú)combined_commuting_positive_definite_hint@   s   



r   c                 C   s$   | j du s
|j du rdS | j o|j S )zGet combined hint for when .F)Úis_non_singularr   r   r   r   Úcombined_non_singular_hintM   s   

r   N)Ú__doc__r   r   r   r   r   r   r   r   Ú<module>   s
   