
    /j0                    f    d dl mZ d dlZd dlZd dlmZ d dlmZ d	dZ	d	dZ
 G d de          ZdS )
    )annotationsN)Base)expectc                ,    t          j        | |          S N)nptriuxks     f/home/longshao/multi-rider-rag/.venv/lib/python3.11/site-packages/onnx/backend/test/case/node/trilu.pytriu_reference_implementationr          71a==    c                ,    t          j        | |          S r   )r   trilr
   s     r   tril_reference_implementationr      r   r   c                     e Zd Zedd            Zedd            Zedd            Zedd            Zedd            Zedd            Z	edd	            Z
edd
            Zedd            Zedd            Zedd            Zedd            Zedd            Zedd            Zedd            Zedd            Zedd            Zedd            ZdS )TrilureturnNonec                    t           j                            ddgdg          } t          j                            dd                              t          j                  }t          |          }t          | |g|gd	           d S )
Nr   r   yinputsoutputs
         size	test_triur   r   name
onnxhelper	make_noder   randomrandintastypeint64r   r   noder   r   s      r   export_triuzTrilu.export_triu   s    {$$5E % 
 
 Ibv..55bh?? *!,,tQC!;??????r   c                    t           j                            dddgdg          } t          j                            dd                              t          j                  }t          j        d	                              t          j                  }t          |t          |                    }t          | ||g|gd
           d S )Nr   r   r   r   r   r   r   r!   test_triu_negr$   r'   r(   r)   r   r*   r+   r,   r-   arrayr   intr   r/   r   r   r   s       r   export_triu_negzTrilu.export_triu_neg,   s    {$$:E % 
 
 Ibv..55bh??HRLL)) *!SVV44tQFQCoFFFFFFr   c                    t           j                            dddgdg          } t          j                            dd                              t          j                  }t          j        d	                              t          j                  }t          |t          |                    }t          | ||g|gd
           d S )Nr   r   r   r   r   r   r   r!   test_triu_out_neg_outr$   r4   r7   s       r   export_triu_out_neg_outzTrilu.export_triu_out_neg_outC   s    {$$:E % 
 
 Ibv..55bh??HRLL)) *!SVV44tQFQC6MNNNNNNr   c                    t           j                            dddgdg          } t          j                            dd                              t          j                  }t          j        d	                              t          j                  }t          |t          |                    }t          | ||g|gd
           d S )Nr   r   r   r   r   r   r   r!      test_triu_posr$   r4   r7   s       r   export_triu_poszTrilu.export_triu_posZ   s    {$$:E % 
 
 Ibv..55bh??HQKKrx(( *!SVV44tQFQCoFFFFFFr   c                    t           j                            dddgdg          } t          j                            dd                              t          j                  }t          j        d	                              t          j                  }t          |t          |                    }t          | ||g|gd
           d S )Nr   r   r   r   r   r   r   r!      test_triu_out_posr$   r4   r7   s       r   export_triu_out_poszTrilu.export_triu_out_posq   s    {$$:E % 
 
 Ibv..55bh??HQKKrx(( *!SVV44tQFQC6IJJJJJJr   c                    t           j                            ddgdg          } t          j                            dd                              t          j                  }t          |          }t          | |g|gd	           d S )
Nr   r   r   r   r   r>      rG   r!   test_triu_squarer$   r&   r.   s      r   export_triu_squarezTrilu.export_triu_square   s    {$$5E % 
 
 Iby1188BB)!,," 	tQC!3EFFFFFFr   c                    t           j                            dddgdg          } t          j                            dd                              t          j                  }t          j        d	                              t          j                  }t          |t          |                    }t          | ||g|gd
           d S )Nr   r   r   r   r   r   rF   r!   r2   test_triu_square_negr$   r4   r7   s       r   export_triu_square_negzTrilu.export_triu_square_neg   s    {$$:E % 
 
 Iby1188BBHRLL))" *!SVV44tQFQC6LMMMMMMr   c                    t           j                            dddgdg          } t          j                            dd                              t          j                  }t          j        d	                              t          j                  }t          |t          |                    }t          | ||g|gd
           d S )Nr   r   r   r   r   r   rG      r    r!   rO   test_triu_one_rowr$   r4   r7   s       r   export_triu_one_rowzTrilu.export_triu_one_row   s    {$$:E % 
 
 Iby1188BBHQKKrx(( *!SVV44tQFQC6IJJJJJJr   c                    t           j                            dddgdg          } t          j                            dd                              t          j                  }t          j        d	                              t          j                  }t          |t          |                    }t          | ||g|gd
           d S )Nr   r   r   r   r   r   )r   r    r!   rB   test_triu_zeror$   r4   r7   s       r   export_triu_zerozTrilu.export_triu_zero   s    {$$:E % 
 
 Ibv..55bh??HQKKrx((
 *!SVV44tQFQC6FGGGGGGr   c                    t           j                            ddgdgd          } t          j                            dd                              t          j                  }t          |          }t          | |g|gd	
           d S )Nr   r   r   r   r   r   upperr   r   r!   	test_trilr$   
r'   r(   r)   r   r*   r+   r,   r-   r   r   r.   s      r   export_trilzTrilu.export_tril   s    {$$5E	 % 
 
 Ibv..55bh?? *!,,tQC!;??????r   c                    t           j                            dddgdgd          } t          j                            dd	                              t          j                  }t          j        d
                              t          j                  }t          |t          |                    }t          | ||g|gd           d S )Nr   r   r   r   r   rV   r   r   r!   r2   test_tril_negr$   r'   r(   r)   r   r*   r+   r,   r-   r5   r   r6   r   r7   s       r   export_tril_negzTrilu.export_tril_neg  s    {$$:E	 % 
 
 Ibv..55bh??HRLL)) *!SVV44tQFQCoFFFFFFr   c                    t           j                            dddgdgd          } t          j                            dd	                              t          j                  }t          j        d
                              t          j                  }t          |t          |                    }t          | ||g|gd           d S )Nr   r   r   r   r   rV   r   r   r!   r:   test_tril_out_negr$   r]   r7   s       r   export_tril_out_negzTrilu.export_tril_out_neg  s    {$$:E	 % 
 
 Ibv..55bh??HRLL)) *!SVV44tQFQC6IJJJJJJr   c                    t           j                            dddgdgd          } t          j                            dd	                              t          j                  }t          j        d
                              t          j                  }t          |t          |                    }t          | ||g|gd           d S )Nr   r   r   r   r   rV   r   r   r!   r>   test_tril_posr$   r]   r7   s       r   export_tril_poszTrilu.export_tril_pos2  s    {$$:E	 % 
 
 Ibv..55bh??HQKKrx(( *!SVV44tQFQCoFFFFFFr   c                    t           j                            dddgdgd          } t          j                            dd	                              t          j                  }t          j        d
                              t          j                  }t          |t          |                    }t          | ||g|gd           d S )Nr   r   r   r   r   rV   r   r   r!   rB   test_tril_out_posr$   r]   r7   s       r   export_tril_out_poszTrilu.export_tril_out_posJ  s    {$$:E	 % 
 
 Ibv..55bh??HQKKrx(( *!SVV44tQFQC6IJJJJJJr   c                    t           j                            ddgdgd          } t          j                            dd                              t          j                  }t          |          }t          | |g|gd	
           d S )Nr   r   r   r   rV   r   rF   r!   test_tril_squarer$   rY   r.   s      r   export_tril_squarezTrilu.export_tril_squarea  s    {$$5E	 % 
 
 Iby1188BB" *!,,tQC!3EFFFFFFr   c                    t           j                            dddgdgd          } t          j                            dd	                              t          j                  }t          j        d
                              t          j                  }t          |t          |                    }t          | ||g|gd           d S )Nr   r   r   r   r   rV   r   rF   r!   r2   test_tril_square_negr$   r]   r7   s       r   export_tril_square_negzTrilu.export_tril_square_neg~  s    {$$:E	 % 
 
 Iby1188BBHRLL))" *!SVV44tQFQC6LMMMMMMr   c                    t           j                            ddgdgd          } t          j                            dd                              t          j                  }t          |          }t          | |g|gd	
           d S )Nr   r   r   r   rV   r   rN   r!   test_tril_one_row_negr$   rY   r.   s      r   export_tril_one_rowzTrilu.export_tril_one_row  s    {$$5E	 % 
 
 Iby1188BB *!,,tQC!3JKKKKKKr   c                    t           j                            dddgdgd          } t          j                            dd	                              t          j                  }t          j        d
                              t          j                  }t          |t          |                    }t          | ||g|gd           d S )Nr   r   r   r   r   rV   r   )rG   r   r    r!   rB   test_tril_zeror$   r]   r7   s       r   export_tril_zerozTrilu.export_tril_zero  s    {$$:E	 % 
 
 Iby1188BBHQKKrx((
 *!SVV44tQFQC6FGGGGGGr   N)r   r   )__name__
__module____qualname__staticmethodr0   r8   r<   r@   rD   rI   rL   rQ   rT   rZ   r^   ra   rd   rg   rj   rm   rp   rs    r   r   r   r      s       @ @ @ \@* G G G \G, O O O \O, G G G \G, K K K \K, G G G \G6 N N N \N8 K K K \K0 H H H \H  @ @ @ \@, G G G \G. K K K \K. G G G \G. K K K \K, G G G \G8 N N N \N: L L L \L0 H H H \H H Hr   r   )r   )
__future__r   numpyr   r'   onnx.backend.test.case.baser   onnx.backend.test.case.noder   r   r   r   rx   r   r   <module>r}      s    # " " " " "      , , , , , , . . . . . .      pH pH pH pH pHD pH pH pH pH pHr   