
    gJ                         d dl mZmZmZmZ d dlmZmZ d dlm	Z	 d dl
mZmZ d dlmZmZmZ d dlmZ d dlmZmZ  edd	d	          Z ed
d	d	          Zd Zd Zd Zd Zd Zd Zd Zed             Zd Z dS )    )MatrixSymbolMatAddMatPowMatMul)GenericZeroMatrix
ZeroMatrix)
ShapeError)eyeImmutableMatrix)AddBasicS)add)XFAILraisesX   Yc                      t          t          t          d          t          t          t          d          cxk    r0t          t          t                                                    k    sn J d S )NT)evaluate)r   r   r   doit     h/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/matrices/expressions/tests/test_matadd.pytest_evaluater      s`    !Q&&&#aT*B*B*BYYYYfQPQllFWFWFYFYYYYYYYYYr   c                      t          t          t                                                    j        t          t          t                                                    j        cxk    rt          t          fk    sn J d S N)r   r   r   r   argsr   r   r   r   test_sort_keyr      s]    !Q<<#s1ayy~~'7'7'<FFFFAFFFFFFFFr   c                  .   t          t          t          d          t          d                    j        d         t                    sJ t          t          t          d          t          d                    j        d         t                    sJ d S )N   r   )
isinstancer   r
   r   r   r   r   r   r   test_matadd_sympifyr#      sp    fSVVSVV,,1!4e<<<<<c#a&&#a&&)).q159999999r   c                     t          t          d          dt          d          z  t          d                                                    t          dt          d          z            k    sJ t	          t          d          dt          d          z  t          d                                                    t          dt          d          z            k    sJ d S )Nr         )r   r
   r   r   r   r   r   r   test_matadd_of_matricesr'      s    #a&&!CFF(CFF++0022oaAh6O6OOOOOs1vvqQxQ((--//?1SVV83L3LLLLLLLr   c                     t          ddgddgg          } t          ddgddgg          }t          | t          |d                                                    | |dz  z   k    sJ t          | t	          | |                                                    | | |z  z   k    sJ t          | t
          t	          | |          t          t          d| z  |                                                    t          | t
          t	          | |          t          t          d| z  |                                                    cxk    r+t          d| z  | |z  z   |z   t
          t                    k    sn J d S )Nr!   r      r%      )r   r   r   r   r   r   r   r   ABs     r   test_doit_argsr.      se   !Q!Q())A!Q!Q())A!VAq\\""''))QAX5555!VAq\\""''))Q1W44441a1q&1a..99>>@@1fQllAs1Q3{{++0022       
1Q319q=!Q               r   c                  z    t           j        t                      k    sJ t           j        t          j        k    sJ d S r   )r   identityr   r   Zeror   r   r   test_generic_identityr2   '   s7    ?/111111?af$$$$$$r   c                      t          t          dd          t          dd                    t          dd          k    sJ d S )Nr   r   r   r   r   r   test_zero_matrix_addr5   ,   sA    z!QAq!1!122jA6F6FFFFFFFr   c                  2    t          t          d            d S )Nc                  >    t          dt          dd                    S )Nr   r   r4   r   r   r   <lambda>z-test_matrix_Add_with_scalar.<locals>.<lambda>1   s    c!Z1%5%566 r   )r   	TypeErrorr   r   r   test_matrix_Add_with_scalarr:   /   s    
96677777r   c                       t          ddd           t          ddd          t          t           fd           t          ddd           t          t           fd           d S )Nr,   r   r)   r-   c                  $    t                     S r   r   r+   s   r   r8   z"test_shape_error.<locals>.<lambda>7       va|| r   c                  $    t                     S r   r=   r+   s   r   r8   z"test_shape_error.<locals>.<lambda>:   r>   r   )r   r   r	   r+   s   @@r   test_shape_errorr@   4   sw    S!QAS!QA
:+++++,,,S!QA
:+++++,,,,,r   N)!sympy.matrices.expressionsr   r   r   r   "sympy.matrices.expressions.specialr   r   sympy.matrices.exceptionsr	   sympy.matricesr
   r   
sympy.corer   r   r   sympy.core.addr   sympy.testing.pytestr   r   r   r   r   r   r#   r'   r.   r2   r5   r:   r@   r   r   r   <module>rH      s   K K K K K K K K K K K K L L L L L L L L 0 0 0 0 0 0 / / / / / / / / $ $ $ $ $ $ $ $ $ $       . . . . . . . .LaLaZ Z ZG G G: : :
M M M
! ! !% % %
G G G 8 8 8- - - - -r   