+
    ‹°³jE  ã                   óš   € ^ 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   &ÚY/home/luca/screen-checking/.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Ñ7¸5Ó@ØˆØ�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   € ä�1�i Ó&Ð&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   