+
    iE                         ^ RI Ht ^ RIHt ^ RIHt  ! R R]4      t]! 4       t]R 4       tRR lt	R R	 ]	R
3R lt
RR ltR tR tR tR
# )    )contextmanager)local
expand_mulc                   &   a  ] tR t^t o R tRtV tR# )DotProdSimpStatec                    R V n         R # Nstate)selfs   &x/Users/tonyclaw/.openclaw/workspace/skills/math-calculator/venv/lib/python3.14/site-packages/sympy/matrices/utilities.py__init__DotProdSimpState.__init__   s	    
    r   N)__name__
__module____qualname____firstlineno__r   __static_attributes____classdictcell__)__classdict__s   @r   r   r      s      r   r   c              #      "   \         P                  p V \         n        R x  V\         n        R #   T\         n        i ; i5ir
   _dotprodsimp_stater   )xolds   & r   dotprodsimpr      s3     

"
"C'#$ #& 3 s   A 0 A =A c                     ^ RI Hp V! WR7      # )z;Wrapper for simplify.dotprodsimp to avoid circular imports.)r   )withsimp)sympy.simplify.simplifyr   )exprr    dpss   && r   _dotprodsimpr$      s    :t''r   c                     V # r
    r   s   &r   <lambda>r(      s    Qr   c                     V # r
   r&   r'   s   &r   r(   r(      s    !r   Nc                v    VRJ g   \         P                  RJ d   V# VRJ g   \         P                  RJ d   V# V # )a  Support function for controlling intermediate simplification. Returns a
simplification function according to the global setting of dotprodsimp
operation.

``deffunc``     - Function to be used by default.
``offfunc``     - Function to be used if dotprodsimp has been turned off.
``onfunc``      - Function to be used if dotprodsimp has been turned on.
``dotprodsimp`` - True, False or None. Will be overridden by global
                  _dotprodsimp_state.state if that is not None.
FTr   )deffuncofffunconfuncr   s   &&&&r   _get_intermediate_simpr.      s?     e1775@d066$>Nr   c                    \        V RRV4      # )zUSame as ``_get_intermediate_simp`` but returns bools instead of functions
by default.FT)r.   )defaultr   s   &&r   _get_intermediate_simp_boolr1   3   s     "'5$DDr   c                    \        V RR4      # )zReturns True if x is zero.is_zeroN)getattrr'   s   &r   _iszeror5   :   s    1i&&r   c                    \        V 4      ^ 8H  # )zJTests by expand_mul only, suitable for polynomials and rational
functions.r   r'   s   &r   _is_zero_after_expand_mulr7   ?   s     a=Ar   c                    ^ RI Hp V! V 4      # )z#Wrapper to avoid circular imports. )simplify)r!   r9   )r"   r9   s   & r   	_simplifyr:   E   s    0D>r   )F)FN)
contextlibr   	threadingr   sympy.core.functionr   r   r   r   r$   r.   r1   r5   r7   r:   r&   r   r   <module>r>      sb    %  *u  &' ' '( $/*E'
r   