
    \h2                       % S SK Jr  S SKJr  S SKJr  S SKJrJr  S SK	J
r
  S SKJrJr  S SKJrJrJrJr  S SKJr  S S	KJrJrJrJr  S S
KJr  S SKJr  S SKJrJ r   S SK!J"r"  S SK#J$r$  S SK%J&r&J'r'  S SK(J)r)J*r*  S SK+J,r,  S SK-J.r.  S SK/J0r0J1r1  S SKJ2r2  S SK3J4r4J5r5  S SK6J7r7  S SK8J9r9J:r:J;r;J<r<J=r=J>r>J?r?  S SK@JArA  S SKBJCrC  \" S5      u  rDrES\20rFS\GS'   \H" S\F5        SOS  jrIS! rJS" rKS# rLS$ rMS% rNS& rOS' rPS( rQS) rRS* rSS+ rTS, rUS- rVS. rWS/ rXS0 rYS1 rZS2 r[S3 r\S4 r]S5 r^S6 r_S7 r`S8 raS9 rbS: rcS; rdS< reS= rfS> rgS? rhS@ riSA rjSB rkSC rlSD rmSE rnSF roSG rpSH rqSI rrSJ rsSK rtSL ruSM rvSN rwg)P    )annotations)Any)GROUND_TYPES)raiseswarns_deprecated_sympy)Q)FunctionWildFunction)AlgebraicNumberFloatIntegerRational)S)DummySymbolWildsymbols)sympify)Abs)rootsqrt)sin)	Heaviside)falsetrue)Matrixones)MatrixSymbol)ImmutableDenseMatrix)CyclePermutation)Str)PointEllipse)srepr)ringfieldZZQQlexgrlexPoly)DMP)FiniteExtensionx,yr"   zdict[str, Any]ENVzfrom sympy import *Nc                    Uc  [         nO[         R                  5       n[        X$5        [        U 40 UD6U:X  d   e[	        X5      U :X  d   eg)zv
sT := sreprTest

Tests that srepr delivers the expected string and that
the condition eval(srepr(expr))==expr holds.
N)r0   copyexecr%   eval)exprstringimport_stmtkwargsENV2s        V/var/www/auris/envauris/lib/python3.13/site-packages/sympy/printing/tests/test_repr.pysTr;   $   sM     xxz[  F***%%%    c                 X     " S S[         5      n [        U " [        5      5      S:X  d   eg )Nc                      \ rS rSrS rSrg)test_printmethod.<locals>.R6   c                D    SUR                  U R                  S   5      -  $ )Nzfoo(%s)r   )_printargs)selfprinters     r:   
_sympyrepr&test_printmethod.<locals>.R._sympyrepr7   s    w~~diil;;;r<    N)__name__
__module____qualname____firstlineno__rF   __static_attributes__rH   r<   r:   Rr?   6   s    	<r<   rN   zfoo(Symbol('x')))r   r%   x)rN   s    r:   test_printmethodrP   5   s'    <C < 1;,,,,r<   c                     [        [        [        -   S5        [        [        S-  S-   SS9S:X  d   e[        [        S-  S-   SS9S:X  d   e[        [	        S	S
S9SS9S:X  d   eg )NzAdd(Symbol('x'), Symbol('y'))      r*   orderz-Add(Pow(Symbol('x'), Integer(2)), Integer(1))oldz-Add(Integer(1), Pow(Symbol('x'), Integer(2)))z	x + 3 - 2Fevaluatenonez:Add(Symbol('x'), Integer(3), Mul(Integer(-1), Integer(2)))r;   rO   yr%   r   rH   r<   r:   test_Addr\   <   sw    q1u-.A'+ZZZZA'+ZZZZu5VD  IE  E  E  Er<   c                     SSK Jn   SSKJn  X4 H+  nU" [	        S5      6 n[        [        U5      5      U:X  a  M+   e   g )Nr   )Add)Mulzx:256)sympy.core.addr^   sympy.core.mulr_   r   r4   r%   )r^   r_   opr5   s       r:   #test_more_than_255_args_issue_10259rc   C   s:    ""j77#$E$K D((( r<   c                     [        [        S5      " [        5      S5        [        [        S5      S5        [        [        [        5      S5        [        [        S5        g )NfzFunction('f')(Symbol('x'))zFunction('f')zsin(Symbol('x'))r   )r;   r	   rO   r   rH   r<   r:   test_Functionrf   K   s<    x}Q56x}o&s1v!"sENr<   c                 j    [        [        [        5      S5        [        [        [        S5      S5        g )NzHeaviside(Symbol('x'))rS   z"Heaviside(Symbol('x'), Integer(1)))r;   r   rO   rH   r<   r:   test_Heavisiderh   T   s"    y|-.yA<=r<   c                 r    [        [        SS5      S5        [        [        [        SS5      SS5      S5        g )Nr   zPoint2D(Integer(0), Integer(0))   rS   z@Ellipse(Point2D(Integer(0), Integer(0)), Integer(5), Integer(1)))r;   r#   r$   rH   r<   r:   test_Geometryrk   Y   s0    uQ{56wuQ{Aq!IKr<   c                    [        [        R                  S5        [        [        R                  S5        [        [        R                  S5        [        [        R
                  S5        [        [        R                  S5        [        [        R                  S5        [        [        R                  S5        [        [        R                  S5        [        [        R                  S	5        [        [        R                  S
5        [        [        R                  S5        [        [        R                  S5        [        [        R                  S5        [        [        R                  S5        [        [        R                   S5        [        [        R"                  S5        [        [        R$                  S5        [        [        R&                  S5        [        [        R(                  S5        [        [        R*                  S5        [        [        R,                  S5        [        [        R.                  S5        [        [        R0                  S5        g )NCatalanzoo
EulerGammaEGoldenRatioTribonacciConstantzRational(1, 2)Ioonanz-oozInteger(-1)z
Integer(1)piz
Integer(0)	ComplexesEmptySequenceEmptySetNaturals	Naturals0	RationalsRealsUniversalSet)r;   r   rm   ComplexInfinityro   Exp1rq   rr   HalfImaginaryUnitInfinityNaNNegativeInfinityNegativeOneOnePiZerorw   rx   ry   rz   r{   r|   r}   r~   rH   r<   r:   test_Singletonsr   `   sJ   qyy)q% q||\"qvvsOq}}m$q12qvv qqzz4quueq5!q}}m$quulqttTNqvv|q{{K q(qzz:qzz:q{{K q{{K qwwq~~~&r<   c                 .    [        [        S5      S5        g )N   z
Integer(4))r;   r   rH   r<   r:   test_Integerr   {   s    wqz< r<   c                 :    [        [        [        S5      /S5        g )Nr   z[Symbol('x'), Integer(4)])r;   rO   r   rH   r<   r:   	test_listr      s    71:34r<   c            	     "   [         S4[        S44 H{  u  p[        U " [        S-  S/[        [        [        -   //5      SU-  5        [        U " 5       SU-  5        [        U " [        S-  S/[        [        [        -   //5      SU-  5        M}     g )NMutableDenseMatrixr   rS   zM%s([[Symbol('x'), Integer(1)], [Symbol('y'), Add(Symbol('x'), Symbol('y'))]])z%s([]))r   r   r;   rO   r[   )clsnames     r:   test_Matrixr      s    347KMc6de	
3B
QAJ'(Z]aa	c 	35(T/"
3B
QAJ'(*y  }A  +A  	B fr<   c                     [        [        SS5      S5        [        [        SS5      S5        [        [        SS5      S5        g )Nr      zMutableDenseMatrix(0, 3, [])r   zMutableDenseMatrix(4, 0, [])zMutableDenseMatrix([]))r;   r   rH   r<   r:   test_empty_Matrixr      s5    tAqz12tAqz12tAqz+,r<   c                 \    [        [        SS5      S5        [        [        SS5      S5        g )NrS   r   zRational(1, 3)zRational(-1, 3))r;   r   rH   r<   r:   test_Rationalr      s$    x1~'(xA)*r<   c                 p   [        [        SSS9S5        [        [        SSS9S5        [        [        SS	S9S
5        [        [        SSS9S5        [        [        SSS9S5        [        [        SSS9S5        [        [        SSS9S
5        [        [        SSS9S5        [        [        SS5      S5        g )Nz1.23r   )dpszFloat('1.22998', precision=13)z
1.23456789	   z$Float('1.23456788994', precision=33)z1.234567890123456789   z.Float('1.234567890123456789013', precision=66)z0.60038617995049726   z*Float('0.60038617995049726', precision=53)   )	precision!   B   5   )r;   r   rH   r<   r:   
test_Floatr      s    uV=>u\q!#IJu#,79u"+35 uVr"$DEu\R(-/u#r279u"b135 u"B'35r<   c                 l    [        [        S5        [        [        S5        [        [        SSS9S5        g )NSymbol('x')zSymbol('y')rO   T)negativezSymbol('x', negative=True))r;   rO   r[   r   rH   r<   r:   test_Symbolr      s(    q-q-vcD!#?@r<   c                     [        SSSS9n SnSn[        U 5      X4;   d   e[        [        U 5      [        5      U :X  d   eg )NrO   r   rS   )r   integerz)Symbol('x', integer=True, negative=False)z)Symbol('x', negative=False, integer=True))r   r%   r4   r0   )rO   s1s2s      r:   test_Symbol_two_assumptionsr      sG    sQ*A	4B	4B8xa#!###r<   c                     [        [        S5      S5        [        [        SSS9S5        [        [        SSS9S5        [        [        SSS9S5        [        [        SS	S9S5        g )
NrO   r   F)commutativezSymbol('x', commutative=False)r   TzSymbol('x', commutative=True)rS   )r;   r   rH   r<   r:   ,test_Symbol_no_special_commutative_treatmentr      sX    vc{M"vcu%'GHvcq!#CDvct$&EFvcq!#BCr<   c                 ,    [        [        SSS9S5        g )NrO   T)evenzWild('x', even=True))r;   r   rH   r<   r:   	test_Wildr      s    tCd34r<   c                 ^    [        S5      n [        U S[        U R                  5      -  5        g )NdzDummy('d', dummy_index=%s))r   r;   strdummy_index)r   s    r:   
test_Dummyr      s$    c
Aq
&Q]]);
;<r<   c                     [        SSS9n U [        [        U 5      5      :X  d   eS[        U R                  5      -  nS[        U R                  5      -  n[        U 5      X4;   d   eg )Nr   T)nonzeroz(Dummy('d', dummy_index=%s, nonzero=True)z(Dummy('d', nonzero=True, dummy_index=%s))r   r4   r%   r   r   )r   r   r   s      r:   test_Dummy_assumptionr      s^    c4 AU1X	3c!--6H	HB	3c!--6H	HB8xr<   c                     [        SSS9n U R                  5       n[        U5      S[        UR                  5      -  :X  d   eg )NnTr   zDummy('n', dummy_index=%s))r   as_dummyr%   r   r   )r   r   s     r:   test_Dummy_from_Symbolr      sC    sD!A	

A 
)C,>>? ? ?r<   c                 R    [        [        4S5        [        [        [        4S5        g )Nz(Symbol('x'),)z(Symbol('x'), Symbol('y')))r;   rO   r[   rH   r<   r:   
test_tupler      s    t1v+,r<   c                 .    [        [        S5      S5        g )NwzWildFunction('w'))r;   r
   rH   r<   r:   test_WildFunctionr      s    |C-.r<   c                 &    [        [        S 5        g )Nc                     [        [        SS9$ )Ngarbage)method)r%   rO   rH   r<   r:   <lambda>test_settins.<locals>.<lambda>   s    eAi8r<   )r   	TypeErrorrH   r<   r:   test_settinsr      s    
989r<   c                     [        S[        S-  -  [        -  S5        [        S[        S-  -  [        -  SS9S:X  d   e[        [	        SSS9S	S9S
:X  d   eg )Nr   z:Mul(Integer(3), Pow(Symbol('x'), Integer(3)), Symbol('y'))rV   rT   z:Mul(Integer(3), Symbol('y'), Pow(Symbol('x'), Integer(3)))z(x+4)*2*x*7FrW   rY   zFMul(Add(Symbol('x'), Integer(4)), Integer(2), Symbol('x'), Integer(7))rZ   rH   r<   r:   test_Mulr      se    qAvaxMN1a4'+gggg7vF  KS  S  S  Sr<   c                     [        [        S5      5      n [        U S5        [        [        SS5      5      n [        U S5        g )NrR   zJAlgebraicNumber(Pow(Integer(2), Rational(1, 2)), [Integer(1), Integer(0)])r   zKAlgebraicNumber(Pow(Integer(-2), Rational(1, 3)), [Integer(1), Integer(0)]))r   r   r;   r   )as    r:   test_AlgebraicNumberr      s6    Q Aq
VWR$Aq
WXr<   c                     [        [        S[        [        5      S   5      S:X  d   e[        [        S[        [
        5      S   5      S:X  d   e[        [        S[        S   [        5      S   5      S:X  d   eg )	NrO   r   z!PolyRing((Symbol('x'),), ZZ, lex)r/   z/PolyRing((Symbol('x'), Symbol('y')), QQ, grlex)x,y,ztz=PolyRing((Symbol('x'), Symbol('y'), Symbol('z')), ZZ[t], lex))r%   r&   r(   r*   r)   r+   rH   r<   r:   test_PolyRingr      sl    c2s#A&'+NNNNeR'*+/````gr#w,Q/04ssssr<   c                     [        [        S[        [        5      S   5      S:X  d   e[        [        S[        [
        5      S   5      S:X  d   e[        [        S[        S   [        5      S   5      S:X  d   eg )	NrO   r   z"FracField((Symbol('x'),), ZZ, lex)r/   z0FracField((Symbol('x'), Symbol('y')), QQ, grlex)r   r   z>FracField((Symbol('x'), Symbol('y'), Symbol('z')), ZZ[t], lex))r%   r'   r(   r*   r)   r+   rH   r<   r:   test_FracFieldr      sl    sB$Q'(,PPPPub%(+,0bbbbw3-a015uuuur<   c                 d    [        S[        5      u  pn[        SUS-  -  U-  S-   5      S:X  d   eg )Nr/   r   rR   rS   zVPolyElement(PolyRing((Symbol('x'), Symbol('y')), ZZ, lex), [((2, 1), 3), ((0, 0), 1)]))r&   r(   r%   )rN   rO   r[   s      r:   test_PolyElementr     s5    5"oGA!1a4A"zzzzr<   c                 t    [        S[        5      u  pn[        SUS-  -  U-  S-   XS-  -
  -  5      S:X  d   eg )Nr/   r   rR   rS   ztFracElement(FracField((Symbol('x'), Symbol('y')), ZZ, lex), [((2, 1), 3), ((0, 0), 1)], [((1, 0), 1), ((0, 2), -1)]))r'   r(   r%   )FrO   r[   s      r:   test_FracElementr     sM    E2GA!!AqD&(Q,T*+  0f  f  f  fr<   c                     [        [        R                  " [        5      5      S:X  d   e[        [        R                  " [        [        [
        S95      S:X  d   eg )Nz1FractionField(FracField((Symbol('x'),), QQ, lex))rT   z?FractionField(FracField((Symbol('x'), Symbol('y')), QQ, grlex)))r%   r)   
frac_fieldrO   r[   r+   rH   r<   r:   test_FractionFieldr     sO    q!";< < <q!512IJ J Jr<   c                 ,   [        [        R                  " [        5      5      S:X  d   e[        [        [           R                  [        5      5      S:X  d   e[        [
        R                  " [        5      R                  [        5      5      S:X  d   eg )Nz%GlobalPolynomialRing(ZZ, Symbol('x'))z(GlobalPolynomialRing(ZZ[x], Symbol('y'))zTGlobalPolynomialRing(FractionField(FracField((Symbol('x'),), QQ, lex)), Symbol('y')))r%   r(   old_poly_ringrO   r[   r)   r   rH   r<   r:   test_PolynomialRingBaser     s    !!!$%/0 0 0A$$Q'(23 3 3q!//23^_ _ _r<   c                 
   [        SS/[        5      n [        R                  " [        5      " SS/5      n[        S:w  a#  [        U 5      S:X  d   e[        U5      S:X  d   eg [        U 5      S:X  d   e[        U5      S:X  d   eg )NrS   rR   flintzDMP_Python([1, 2], ZZ)zDUP_Flint([1, 2], ZZ))r-   r(   r   rO   r   r%   )p1p2s     r:   test_DMPr     s~    	aVRB			!	aV	$BwRy4444Ry4444Ry3333Ry3333r<   c                 h    [        [        [        [        S-  S-   [        5      5      5      S:X  d   eg )NrR   rS   z/FiniteExtension(Poly(x**2 + 1, x, domain='ZZ')))r%   r.   r,   rO   rH   r<   r:   test_FiniteExtensionr   '  s0    adQh!2349: : :r<   c                     [        [        [        S-  S-   [        5      5      n [        S:w  a  SnOSn[	        U R
                  5      U:X  d   eg )NrR   rS   r   zPExtElem(DMP_Python([1, 0], ZZ), FiniteExtension(Poly(x**2 + 1, x, domain='ZZ')))zOExtElem(DUP_Flint([1, 0], ZZ), FiniteExtension(Poly(x**2 + 1, x, domain='ZZ'))))r.   r,   rO   r   r%   	generator)Aanss     r:   test_ExtensionElementr   ,  sD    QTAXq)*Aw`_$$$r<   c                 X    [        [        5      S:X  d   e[        [        5      S:X  d   eg )Nr   r   )r%   r   r   rH   r<   r:   test_BooleanAtomr   4  s&    ;&   <7"""r<   c                 8    [        [        R                  S5        g )NIntegers)r;   r   r   rH   r<   r:   test_Integersr   9      qzz:r<   c                 8    [        [        R                  S5        g )Nrz   )r;   r   rz   rH   r<   r:   test_Naturalsr   =  r   r<   c                 8    [        [        R                  S5        g )Nr{   )r;   r   r{   rH   r<   r:   test_Naturals0r   A  s    q{{K r<   c                 8    [        [        R                  S5        g )Nr}   )r;   r   r}   rH   r<   r:   
test_Realsr   E  s    qwwr<   c                     [        SSS9n [        SX 5      n[        SX 5      n[        US5        [        X-  S5        [        X-   S5        g )	Nr   Tr   r   BzLMatrixSymbol(Str('A'), Symbol('n', integer=True), Symbol('n', integer=True))zMatMul(MatrixSymbol(Str('A'), Symbol('n', integer=True), Symbol('n', integer=True)), MatrixSymbol(Str('B'), Symbol('n', integer=True), Symbol('n', integer=True)))zMatAdd(MatrixSymbol(Str('A'), Symbol('n', integer=True), Symbol('n', integer=True)), MatrixSymbol(Str('B'), Symbol('n', integer=True), Symbol('n', integer=True))))r   r   r;   )r   r   r   s      r:   test_matrix_expressionsr   I  sW    T"AS!AS!Aq
XYqs  q  rqu  s  tr<   c                 :    [        [        SS5      5      S:X  d   eg )NrS   rR   zCycle(1, 2))r%   r    rH   r<   r:   
test_Cycler  R  s    
 q!...r<   c                 L   Sn [        [        SS5      " SS5      SU SS9  [        [        SS5      " SS5      S	U S
S9  [        5          [        R                  nS[        l        [        [        SS5      " SS5      SU 5        U[        l        S S S 5        g ! , (       d  f       g = f)Nz+from sympy.combinatorics import PermutationrS   rR   r   r   zPermutation([0, 2, 1, 4, 3])F)perm_cycliczPermutation(1, 2)(3, 4)T)r;   r!   r   print_cyclic)r7   old_print_cyclics     r:   test_Permutationr  Z  s    ?K{1aA >Y^_{1aA 9;TXY		!&33#( 
;q!Q"$BKP#3 	 
"	!	!s   AB
B#c                     SSK Jn JnJn  0 n[	        U5      S:X  d   eX0n[	        U5      S:X  d   eXX0n[	        U5      S;   d   eXU00n[	        U5      S:X  d   eg )Nr   )rO   r[   zz{}z{Symbol('x'): Symbol('y')})z4{Symbol('x'): Symbol('y'), Symbol('y'): Symbol('z')}z4{Symbol('y'): Symbol('z'), Symbol('x'): Symbol('y')}z){Symbol('x'): {Symbol('y'): Symbol('z')}})	sympy.abcrO   r[   r	  r%   )rO   r[   r	  r   s       r:   	test_dictr  e  s}    !!
A8t	
A83333	
qA8     
FA8BBBBr<   c                 r    SSK Jn Jn  [        5       n[	        U5      S:X  d   eX1n[	        U5      S;   d   eg )Nr   )rO   r[   zset())z{Symbol('x'), Symbol('y')}z{Symbol('y'), Symbol('x')})r
  rO   r[   setr%   )rO   r[   ss      r:   test_setr  s  s8    A8w	
A8SSSSr<   c                 8    [        [        R                  S5        g )NzQ.even)r;   r   r   rH   r<   r:   test_Predicater  z  s    qvvxr<   c                 V    [        [        R                  " [        S5      5      S5        g )Nr	  z%AppliedPredicate(Q.even, Symbol('z')))r;   r   r   r   rH   r<   r:   test_AppliedPredicater  }  s    qvvfSkCDr<   )N)x
__future__r   typingr   sympy.external.gmpyr   sympy.testing.pytestr   r   sympy.assumptions.askr   sympy.core.functionr	   r
   sympy.core.numbersr   r   r   r   sympy.core.singletonr   sympy.core.symbolr   r   r   r   sympy.core.sympifyr   $sympy.functions.elementary.complexesr   (sympy.functions.elementary.miscellaneousr   r   (sympy.functions.elementary.trigonometricr   'sympy.functions.special.delta_functionsr   sympy.logic.boolalgr   r   sympy.matrices.denser   r   "sympy.matrices.expressions.matexprr   sympy.matrices.immutabler   sympy.combinatoricsr    r!   r"   sympy.geometryr#   r$   sympy.printingr%   sympy.polysr&   r'   r(   r)   r*   r+   r,   sympy.polys.polyclassesr-   sympy.polys.agca.extensionsr.   rO   r[   r0   __annotations__r3   r;   rP   r\   rc   rf   rh   rk   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  rH   r<   r:   <module>r-     s   "  , ? # 8 J J " < < & 4 A 8 = - / ; 9 2 ! )   = = = ' 7u~1 cl^ " C  &"-E)>
K'6!5B-+
5(A$D5=
 ?-
/:SYtv{
f
J_4:
%#
!t/	4CTEr<   