+
    i                     "   ^ RI Ht ^ RIHt ^ RIHt ^ RIHt ^ RIH	t	 ^ RI
HtHt ^ RIHt ^ RIHtHt ^ R	IHtHt ^ R
IHtHtHtHtHt ^ RIHt ^ RIHtHtH t H!t! ^ RI"H#t#H$t$H%t%H&t&H't'H(t(H)t)H*t*H+t+ ^ RI,H-t- ^ RI.H/t/ ^ RI0H1t1H2t2H3t3 ^ RI4H5t5 ^ RI6H7t7H8t8H9t9H:t: ^ RI;H<t<H=t=H>t> ^ RI?H@t@ ^ RIAHBtB ^ RICHDtD ^ RIEHFtFHGtG ^ RIHHItI ^ RIJHKtK ^ RILHMtM ^ RINHOtOHPtPHQtQHRtR ^ RISHTtT ^ RIUHVtV ^ RIWHXtX ^ RIYHZtZ ^ R I[H\t\ ^ R!I]H^t^ ^ R"I_H`t` ^ R#IaHbtb ^ R$IcHdtdHeteHftfHgtg ^ R%IhHitiHjtjHktkHltl ^ R&ImHntn ^ R'IoHptp ^ R(IqHrtrHstsHtttHutuHvtvHwtwHxtxHyty ^ R)IzH{t{H|t| ^ R*I}H~t~HtHtHtHtHtHtHtHtHtHtHt ^ R+IHtHtHtHtHt ^ R,IHt ^ R-IHtHt ^ R.IHtHt ^ R/IHtHtHt ^ R0IHt ]:! R14      w  ttttt]7! R24      tR3 tR4 tR5 tR6 tR7 tR8 tR9 tR: tR; tR< tR= tR> tR? tR@ tRA tRB tRC tRD tRE tRF tRG tRH tRI tRJ tRK tRL tRM tRN tRO tRP tRQ tRR tRS tRT tRU tRV tRW tRX tRY tRZ tR[ tR\ tR] tR^ tR_ tR` tRa tRb tRc tRd tRe tRf tRg tRh tRi tRj tRk tRl tRm tRn tRo tRp tRq tRr tRs tRt tRu tRv tRw tRx tRy tRz tR{ tR| tR} tR~ tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR Et R EtR EtR EtR EtR EtR EtR EtR EtR Et	R Et
R EtR EtR EtR EtR EtR EtR EtR# )    )MatAdd)
Quaternion)Q)AccumBounds)	Partition)Sum	summation)Add)DictTuple)UnevaluatedExprExpr)
DerivativeFunctionLambdaSubsWildFunction)Mul)Catalan
EulerGammaGoldenRatioTribonacciConstant)	EFloatIIntegerRationalnanoopizoo)_exp_is_pow)Pow)EqRelNe)S)DummySymbolWildsymbols)	factorial
factorial2subfactorial)Abs)exp)sqrt)cossin)	Heaviside)zeta)Integral)
EquivalentfalsetrueXor)Matrix)MatrixSymbol)Identity)MatrixSlice)SparseMatrix)factor)Limit)O)
Complement	FiniteSetIntervalSymmetricDifference)
CovarianceExpectationProbabilityVariance)RandomSymbol)import_module)TransferFunctionSeriesParallelFeedbackTransferFunctionMatrix
MIMOSeriesMIMOParallelMIMOFeedback)secondjoule)PolyrootofRootSumgroebnerringfieldZZQQZZ_IQQ_Ilexgrlex)PointCirclePolygonEllipseTriangle)	NDimArray)ArraySymbolArrayElement)raiseswarns_deprecated_sympy)sstrsstrrepr
StrPrinter)Trz	x,y,z,w,tdc                       ! R  R\         4      p \        V ! \        4      4      R8X  g   Q h ! R R\         4      p \        V ! \        4      4      R8X  g   Q hR# )c                   &   a  ] tR t^;t o R tRtV tR# )test_printmethod.<locals>.Rc                T    R VP                  V P                  ^ ,          4      ,          # )zfoo(%s))_printargsselfprinters   &&[/var/www/html/photoedit/myenv/lib/python3.14/site-packages/sympy/printing/tests/test_str.py	_sympystr%test_printmethod.<locals>.R._sympystr<   s    w~~diil;;;     N__name__
__module____qualname____firstlineno__r|   __static_attributes____classdictcell____classdict__s   @r{   Rrt   ;   s     	< 	<r~   r   zfoo(x)c                   &   a  ] tR t^@t o R tRtV tR# )rt   c                    R # )foor   rx   s   &&r{   r|   r}   A   s    r~   r   Nr   r   s   @r{   r   rt   @   s     	 	r~   r   N)r/   rm   x)r   s    r{   test_printmethodr   :   sJ    <C < !:!!!C  !:r~   c                      \        \        \        4      4      R 8X  g   Q h\        \        \        ^^4      4      4      R8X  g   Q h\        \        \        R^4      4      4      R8X  g   Q hR# )zAbs(x)1/6N)strr/   r   r   r   r~   r{   test_Absr   F   sT    s1v;("""s8Aq>"#u,,,s8B?#$---r~   c                     \        \        \        ,           4      R 8X  g   Q h\        \        ^,           4      R8X  g   Q h\        \        \        ^,          ,           4      R8X  g   Q h\        \        ^ ^RR7      4      R8X  g   Q h\        \        ^ ^ ^RR7      4      R8X  g   Q h\        R\        ,          4      R8X  g   Q h\        ^\        ,           \        ,           \        \        ,          ,           \        ^,          ,           \        ^,          ,           4      R	8X  g   Q h\        ^\        ,           \        ^,          ^,          ,           \        ^,          ^,          ,           4      R
8X  g   Q h\        ^\        ,          ^\        ^,          ,          ,
          ^,           ^\        ,          ,           4      R8X  g   Q h\        \        \        ,
          4      R8X  g   Q h\        ^\        ,
          4      R8X  g   Q h\        \        ^,
          4      R8X  g   Q h\        \        \        ,
          \        ,
          \
        ,
          4      R8X  g   Q h\        \        \        \        ^,          ,          \        ,          \
        ,          ,
          4      R8X  g   Q h\        \        ^\        ,          \        ,          \        ,          ,
          4      R8X  g   Q h\        \        \        4      P                  \        ^ ^4      4      R8X  g   Q h\        \        \        \
        ) \        RR7      \        \        ) \        RR7      RR7      4      R8X  g   Q h\        \        \        \        ) \        ) RR7      \        ) RR7      4      R8X  g   Q h\        \        \        \        \        ) \        ) RR7      \        ) RR7      \        ) RR7      4      R8X  g   Q hR# )zx + yx + 1zx**2 + xFevaluatez0 + 1z	0 + 0 + 1      ?1.0*xzx**2 + x*y + x + y**2 + y + 5zx**3/3 + x**2/2 + x + 1z-7*x**2 + 2*x + 3*y + 2zx - yz2 - xzx - 2z-w + x - y - zz-w*y**2*z**2 + xz-x*y**2 + xz^x - x**3/6 + x**5/120 - x**7/5040 + x**9/362880 - x**11/39916800 + x**13/6227020800 + O(x**15)z(-w + x) + (-y + z)z-z + (-x - y)z-t + (-z + (-x - y))N)	r   r   yr
   zwr3   seriestr   r~   r{   test_Addr   L   s   q1u:   q1u:   q1a4x=J&&&s1a%()W444s1aU+,;;;s1u:   q1uqy1Q3A%1,-1PPPPq1uq!tAv~1Q&'+DDDDqsQq!tV|a!A#%&*CCCCq1u:   q1u:   q1u:   q1uqy1}!1111q1QT6!8A:~"4444q1Q3q57{},,,s1v}}Q2&'  ,L  L  L  Ls3r1u-sA2qE/JV[\]avvvvs3rA2.UCDWWWs3sA2rE2QBG!V[\]awwwwr~   c                  2    \        \        4      R 8X  g   Q hR# )r   N)r   r   r   r~   r{   test_Catalanr   b   s    w<9$$$r~   c                  2    \        \        4      R 8X  g   Q hR# )r!   N)r   r!   r   r~   r{   test_ComplexInfinityr   f       s8ur~   c            	      "   \        \        \        \        4      4      R 8X  g   Q h\        \        \        ^,          \        RR7      4      R8X  g   Q h\        \        \        ^,          \        ,          \        \        RR7      4      R8X  g   Q hR# )zDerivative(x, y)Fr   zDerivative(x**2, x)zDerivative(x**2/y, x, y)N)r   r   r   r   r   r~   r{   test_Derivativer   j   ss    z!Q $6666z!Q$E237LLLLz	1Q1u& '*DE E Er~   c                  F   \        ^^\        ,           /4      \        ^^\        ,           /4      u;8X  d	   R8X  g   Q h Q h\        ^\        ^,          ^\        \        ,          /4      R9   g   Q h\        ^\        ^,          ^\        \        ,          /4      R8X  g   Q hR#    z
{1: x + 1}{1: x**2, 2: x*y}N)r   z{2: x*y, 1: x**2}r   r   rm   r   r   r~   r{   	test_dictr   q   s~    1q5z?dAq1u:.>,>>>>>1a4AaC !%OOOOAqD!QqS!"&9999r~   c            	      |   \        \        ^^\        ,           /4      4      \        ^^\        ,           /4      u;8X  d	   R8X  g   Q h Q h\        \        ^\        ^,          ^\        \        ,          /4      4      R9   g   Q h\        \        ^\        ^,          ^\        \        ,          /4      4      R8X  g   Q hR# r   )r   r   r   rm   r   r   r~   r{   	test_Dictr   w   s    tQAJ D!QU$4DDDDDDtQ1a1%&' ,2 2 2 2aAq!A#&'(,????r~   c                  t    \        \        4      R 8X  g   Q h\        \        \        ,           4      R8X  g   Q hR# )_dz_d + xN)r   rq   r   r   r~   r{   
test_Dummyr   ~   s(    q6T>>q1u:!!!r~   c                  2    \        \        4      R 8X  g   Q hR# )r   N)r   r   r   r~   r{   test_EulerGammar      s    z?l***r~   c                      \        \        4      R 8X  g   Q h\        R4      ;_uu_ 4        \        \        \        4      4      R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)r   TzE**xN)r   r   r"   r0   r   r   r~   r{   test_Expr      sB    q6S==	T		3q6{f$$$ 
			s    AA&	c                     \        R RR7      p \        \        R4      4      R8X  g   Q h\        \        ^ 4      4      R8X  g   Q h\        \        ^4      4      R8X  g   Q h\        \        V 4      4      R8X  g   Q h\        \        ^V ,          4      4      R8X  g   Q h\        \        \        V 4      4      4      R8X  g   Q h\        \        \        V 4      4      4      R	8X  g   Q h\        \        \        V 4      4      4      R
8X  g   Q h\        \        \        V 4      4      4      R8X  g   Q h\        \	        ^4      4      R8X  g   Q h\        \	        V 4      4      R8X  g   Q h\        \	        ^V ,          4      4      R8X  g   Q hR# )nTintegerr!   15040zfactorial(n)zfactorial(2*n)zfactorial(factorial(n))zfactorial(factorial2(n))zfactorial2(factorial(n))zfactorial2(factorial2(n))2zsubfactorial(n)zsubfactorial(2*n)N)r)   r   r,   r-   r.   )r   s    r{   test_factorialr      sF   sD!Ay}&&&y|###y|&&&y|...y1~"2222y1&'+DDDDyA'(,FFFFz)A,'(,FFFFz*Q-()-HHHH|A3&&&|A#4444|AaC !%8888r~   c                      \        R 4      p V ! \        4      p\        R4      p\        V 4      R 8X  g   Q h\        V4      R8X  g   Q h\        V4      R8X  g   Q hR# )fr   zf(x)w_N)r   r   r   r   )r   fxr   s      r{   test_Functionr      sP    A	
1BSAq6S==r7fq6T>>r~   c                     \        \        ^ ^ 4      4      R8X  g   Q h\        \        \        ^ ^ 4      ^4      4      R8X  g   Q h\        \        \        ^^4      ^^4      4      R8X  g   Q h\        \	        \        ^^4      \        ^^4      \        ^ R4      4      4      R8X  g   Q h\        \        \        ^^4      \        RR4      \        ^ ^ 4      \        ^^4      4      4      R8X  g   Q h\        \	        \        ^ ^ 4      \        ^^ 4      \        ^ ^4      4      RR7      R8X  g   Q h\        \        \        ^^4      ^^4      RR7      R	8X  g   Q hR
# )r   zPoint2D(0, 0)zCircle(Point2D(0, 0), 3)zEllipse(Point2D(1, 2), 3, 4)z6Triangle(Point2D(1, 1), Point2D(7, 8), Point2D(0, -1))zEPolygon(Point2D(5, 6), Point2D(-2, -3), Point2D(0, 0), Point2D(4, 7))Tsympy_integerszGTriangle(Point2D(S(0), S(0)), Point2D(S(1), S(0)), Point2D(S(0), S(1)))z(Ellipse(Point2D(S(1), S(2)), S(3), S(4))Nr   r   )rm   rc   rd   rf   rg   re   r   r~   r{   test_Geometryr      s=   a///uQ{A&'+EEEEaQ*+/MMMMq!eAqk5B<@A@A A AaU2r]E!QKq!MNOP P Pq!eAqk5A;?PTUQR R RaQ*4@23 3 3r~   c                  2    \        \        4      R 8X  g   Q hR# )r   N)r   r   r   r~   r{   test_GoldenRatior      s    {},,,r~   c                      \        \        \        4      4      \        \        \        \        P                  4      4      u;8X  d	   R 8X  g   Q h Q h\        \        \        ^4      4      R8X  g   Q hR# )zHeaviside(x)zHeaviside(x, 1)N)r   r4   r   r'   Halfr   r~   r{   test_Heavisider      sN    y|Ia$8 9K^KKKKKyA#4444r~   c                  2    \        \        4      R 8X  g   Q hR# )r   N)r   r   r   r~   r{   test_TribonacciConstantr      s    !"&::::r~   c                  2    \        \        4      R 8X  g   Q hR# )r   N)r   r   r   r~   r{   test_ImaginaryUnitr      s    q6S==r~   c                  t    \        \        4      R 8X  g   Q h\        \        \        ,          4      R8X  g   Q hR# )r   oo*IN)r   r   r   r   r~   r{   test_Infinityr      s(    r7d??r!t9r~   c                     \        \        R4      4      R8X  g   Q h\        \        ^4      4      R8X  g   Q h\        \        R4      4      R8X  g   Q h\        \        ^ 4      4      R8X  g   Q h\        \        ^4      4      R8X  g   Q hR# )	r   -1r   z-3025Nr   r   )r   r   r   r~   r{   test_Integerr      ss    wr{t###wqz?c!!!wr{t###wqz?c!!!wr{t###r~   c                      \        \        \        \        4      \        4      4      R 8X  g   Q h\        \        \        \        4      \        ^ ^34      4      R8X  g   Q hR# )zIntegral(sin(x), y)zIntegral(sin(x), (y, 0, 1))N)r   r6   r3   r   r   r   r~   r{   test_Integralr      sF    xA"#'<<<<xAAq	*+/LLLLr~   c            
      R   \         P                  ^^\         P                  3p \        \	        V 4      4       Fl  p\        V^,           \	        V 4      4       FI  pR F@  pR F7  p\        W,          W,          W44      p\        \        V4      4      V8X  d   K7  Q h	  KB  	  KK  	  Kn  	  R# )r   N)TF)r'   NegativeInfinityInfinityrangelenrE   r   )r   ijlrivals         r{   test_Intervalr      s    	
		Q1::.A3q6]q1uc!f%A"&A#AD!$5DSY<4/// ' # & r~   c                      \        R RR7      p \        \        ^ V 4      4      R8X  g   Q h\        \        ^ ^4      4      R8X  g   Q hR# )aTrealzAccumBounds(0, a)zAccumBounds(0, 1)N)r)   r   r   )r   s    r{   test_AccumBoundsr      sD    sA{1a !%8888{1a !%8888r~   c                     \        \        \        \        ^,          4      4      R8X  g   Q h\        \        R^4      4      R8X  g   Q h\        \        R\        4      4      R8X  g   Q h\        \        \        \        3\        \        ,           4      4      R8X  g   Q h\        \        \        \        33\        \        ,           4      4      R8X  g   Q hR# )   zLambda(_d, _d**2)zLambda((), 1)zLambda((), x)zLambda((x, y), x + y)zLambda(((x, y),), x + y)Nr   )r   r   rq   r   r   r   r~   r{   test_Lambdar      s    vaA#6666vb!}000vb!}000vq!fac"#'>>>>v1vi1%&*DDDDr~   c            	      V   \        \        \        \        4      \        ,          \        \        4      4      R 8X  g   Q h\        \        ^\        ,          \        ^ 4      4      R8X  g   Q h\        \        \        \        4      \        ,          \        \        RR7      4      R8X  g   Q hR# )zLimit(sin(x)/x, x, y, dir='+')zLimit(1/x, x, 0, dir='+')-)dirzLimit(sin(x)/x, x, y, dir='-')N)r   rA   r3   r   r   r   r~   r{   
test_Limitr      s{    uSVAXq!$%)IIIIuQqS!Q $????c!fQh1#&(+KL L Lr~   c                     \        \        .4      \        \        .4      u;8X  d	   R 8X  g   Q h Q h\        \        ^,          \        \        ,          ^,           .4      \        \        ^,          \        \        ,          ^,           .4      u;8X  d	   R8X  g   Q h Q h\        \        ^,          \        \        ,           ..4      \        \        ^,          \        \        ,           ..4      u;8X  d	   R8X  g   Q h Q hR# )z[x]z[x**2, x*y + 1]z[x**2, [x + y]]Nr   r   r~   r{   	test_listr      s    s8tQCy)E)))))1acAg4AqsQw#8M<MMMMMM1q1ug4AAw#8M<MMMMMMr~   c                  B   \        \        ^,          ^.\        \        \        ,           ..4      p \        V 4      R8X  g   Q h\	        V 4      R8X  g   Q h\        ^..4      p \        V 4      \	        V 4      u;8X  d	   R8X  g   Q h Q h\        ^^..4      p \        V 4      \	        V 4      u;8X  d	   R8X  g   Q h Q h\        4       p \        V 4      \	        V 4      u;8X  d	   R8X  g   Q h Q h\        ^ ^R 4      p \        V 4      \	        V 4      u;8X  d	   R8X  g   Q h Q hR# )	r   Matrix([[x, 1], [y, x + y]])!Matrix([
[x,     1],
[y, x + y]])zMatrix([[1]])zMatrix([[1, 2]])zMatrix(0, 0, [])c                     ^ # r   r   )r   r   s   &&r{   <lambda>!test_Matrix_str.<locals>.<lambda>  s    !r~   zMatrix(0, 1, [])N)r;   r   r   r   rm   Ms    r{   test_Matrix_strr      s    B
QAJ'(Aq633337;;;;uAq6T!W//////AxAq6T!W3!333333Aq6T!W2 222222q!^$Aq6T!W2 222222r~   c                  F
   \        \        \        ,          4      R 8X  g   Q h\        \        \        ,          4      R8X  g   Q h\        \        \        ,          \        ,          4      R8X  g   Q h\        \        ^,           \        ^,           ,          4      R8X  g   Q h\        ^\        ,          ^,          4      R8X  g   Q h\        R%\        ,          ^,          4      R8X  g   Q h\        R&\        ,          4      R8X  g   Q h\        R\        ,          4      R8X  g   Q h\        \	        ^ ^R	R
7      4      R8X  g   Q h\        \	        ^^ R	R
7      4      R8X  g   Q h\        \	        ^^R	R
7      4      R8X  g   Q h\        \	        ^^^R	R
7      4      R8X  g   Q h\        \	        ^^R	R
7      4      R8X  g   Q h\        \	        ^\
        P                  R	R
7      4      R8X  g   Q h\        \	        ^^\
        P                  R	R
7      4      R8X  g   Q h\        \	        ^^^^\        R	R
7      4      R8X  g   Q h\        \	        ^R'R	R
7      4      R8X  g   Q h\        \	        R'^R	R
7      4      R8X  g   Q h\        \	        ^^^^^ \        \        R	R
7      4      R8X  g   Q h\        \	        ^^^^\        ,           ^ \        \        R	R
7      4      R8X  g   Q h\        \	        \        ^^4      \        ^^4      R	R
7      4      R8X  g   Q h\        \	        R%\        \        \	        \        \        R	R
7      R'R	R
7      R	R
7      4      R8X  g   Q h\        \	        \        \        ^\        ,          R'R	R
7      R	R
7      4      R8X  g   Q h^ R
I	H
p  V ! R	4      ;_uu_ 4        \        \	        \        \        ^4      \        R'4      4      \        \        R'4      \	        \        R'4      \        ^4      4      4      4      4      R8X  g   Q h RRR4        ! R R\        4      p ! R R\        4      pV! 4       pV! 4       p\        \        ^4      V,          4      R 8X  g   Q h\        V\        ^4      ,          4      R 8X  g   Q h\        V\        R!4      ,          4      R"8X  g   Q h\        V\        ^4      ,          4      R#8X  g   Q h\        V\        ^4      ,          V,          4      R$8X  g   Q h\        V\        ^4      ,          V,          4      R$8X  g   Q hR#   + '       g   i     EL; i)(zx/yzy/xzx/(y*z)z(x + 1)/(y + 2)z2*x/3z-2*x/3r   z-1.0*xr   Fr   z0*1z1*0z1*1z1*1*1z1*2z1*(1/2)z	1*1*(1/2)z	1*1*2*3*xz1*(-1)z-1*1z4*3*2*1*0*y*xz4*3*2*(z + 1)*0*y*xz(2/3)*(5/7)z
-2*x/(y*y)zx/(1/y)z(-1 - 1*1)/2Nc                       ] tR tRtRtRtR# )test_Mul.<locals>.CustomClass1i,  Tr   Nr   r   r   r   is_commutativer   r   r~   r{   CustomClass1r  ,      r~   r  c                       ] tR tRtRtRtR# )test_Mul.<locals>.CustomClass2i/  Tr   Nr  r   r~   r{   CustomClass2r  /  r  r~   r  z2*CustomClass1()z1.5z1.5*CustomClass1()z2*CustomClass2()z2*CustomClass1()*CustomClass2()r         r   )r   r   r   r   r   r'   r   r   r#   sympy.core.parametersr   r   r
   r   r   )r   r  r  cc1cc2s        r{   test_Mulr    s   qs8uqs8uqs1u:"""AA#4444qs1u:   r!tAv;("""tAv;("""s1u:   s1a%()U222s1a%()U222s1a%()U222s1aU+,777s1a%()U222s1affu-.);;;s1a%01[@@@s1aAq512kAAAs1b5)*h666s2q5)*f444s1aAq!Q78OKKKs1aAaCAq59:>SSSSs8Aq>8Aq>EBC}TTTs2q#c!Au5rEJ9>@ ADPQ Q Q s1c!A#rE2UCD	QQQ /	%3s71:wr{3Sc'RT+W^_`WaFb5cdeiwwww 
t t 
.C
.Cx{3#5555s8A;#5555s5< $8888s8A;#5555s8A;s"#'HHHHs8A;s"#'HHHH 
s   A(TT 	c                  2    \        \        4      R 8X  g   Q hR# )r   N)r   r   r   r~   r{   test_NaNr  ;  r   r~   c                  4    \        \        ) 4      R 8X  g   Q hR# )z-ooN)r   r   r   r~   r{   test_NegativeInfinityr  ?  s    s8ur~   c                     \        \        \        4      4      R 8X  g   Q h\        \        \        ^,          4      4      R8X  g   Q h\        \        \        \        ,          4      4      R8X  g   Q h\        \        \        \        4      4      R 8X  g   Q h\        \        \        \        ^ 34      4      R 8X  g   Q h\        \        \        \        \        34      4      R8X  g   Q h\        \        \        \        \        4      4      R8X  g   Q h\        \        \        \        \        4      4      R8X  g   Q h\        \        \        \        \        3\        \        34      4      R8X  g   Q hR# )zO(x)zO(x**2)zO(x*y, x, y)zO(x, (x, oo))z
O(x, x, y)zO(x, (x, oo), (y, oo))N)r   rB   r   r   r   r   r~   r{   
test_Orderr  B  s    qt9qAw<9$$$q1v;.(((qAw<6!!!qQF|&&&qQG}000qAqz?l***qAqz?l***qQGaW%&*BBBBr~   c                  z   ^ RI Hp Hp V! 4       R3V! ^4      R3V! ^^4      R3V! ^^4      ! ^4      ! ^^4      ! ^
4      R3V! ^^4      ! ^^4      ! ^^4      R33 F  w  r#\        V4      V8X  d   K  Q h	  V ! . 4      R3V ! . ^R7      R	3V ! . ^R7      R
3V ! . ^
R7      R3V ! . RO4      R3V ! . RO4      R3V ! . RO^
R7      R33 F  w  r#\        VRR7      V8X  d   K  Q h	  V ! . 4      R3V ! . ^R7      R3V ! . ^R7      R3V ! . ^
R7      R3V ! . RO4      R3V ! . RO4      R3V ! . RO^
R7      R3V ! . RO^
R7      R33 F  w  r#\        V4      V8X  d   K  Q h	  \	        4       ;_uu_ 4        V P
                  pRV n        \        V ! . RO4      4      R8X  g   Q hW@n        RRR4       R#   + '       g   i     R# ; i)r   )PermutationCyclez()z(2)z(1 2)z(1 2)(6 7)(10)z(1 2)(4)zPermutation([]))sizezPermutation([0])zPermutation([0, 1])zPermutation([], size=10)zPermutation([1, 0, 2])zPermutation([1, 0], size=6)zPermutation([1, 0], size=10)F)perm_cyclicz(0)z(1)z(9)z(2)(0 1)z(5)(0 1)z(9)(0 1)z(9)(2 3)N)r   r   r   )r   r   r            )r   r   r  r   r  r  )sympy.combinatoricsr  r  rm   rl   print_cyclic)r  r  psold_print_cyclics        r{   test_Permutation_Cycler!  N  s/   6 
		q		q!		q!Q1	b	!		q!Q	1a	 	 Aw!|| 
R		Ra	 		Ra	 		Rb	!"	$	Y	 	"	'	(%	'	'b	1&	(  A5)Q...!& 
R		Ra	 		Ra	 		Rb	!		Y			'	(		'b	1		'b	1	$ Aw!||%* 
 	!	!&33#( K	*+/GGGG#3 	 
"	!	!	!s   +4F))F:	c                  2    \        \        4      R 8X  g   Q hR# )r    N)r   r    r   r~   r{   test_Pir#    s    r7d??r~   c                  
   \        \        ^ \        4      4      R8X  g   Q h\        \        ^\        4      4      R8X  g   Q h\        \        \        \        4      4      R8X  g   Q h\        \        ^\        ,          ^,           \        4      4      R8X  g   Q h\        \        ^\        ,          ^,
          \        4      4      R8X  g   Q h\        \        R\        4      4      R8X  g   Q h\        \        \        ) \        4      4      R8X  g   Q h\        \        R\        ,          ^,           \        4      4      R8X  g   Q h\        \        R\        ,          ^,
          \        4      4      R	8X  g   Q h\        \        \        ^,
          \        4      4      R
8X  g   Q h\        \        ^\        ,          \        ^,          ,           \        4      4      R8X  g   Q h\        \        ^^\        ,          ,          ^\        ,          4      4      R8X  g   Q h\        \        \        ^,          \        ,          4      4      R8X  g   Q h\        \        \        \        ,           ^,          \        \        ,           RR7      4      R8X  g   Q h\        \        \        ^,
          ^,          \        ^,
          RR7      4      R8X  g   Q h\        \        \        ^,          ^,           \        ,           \        4      4      R8X  g   Q h\        \        \        ^,          ^,
          \        ,           \        4      4      R8X  g   Q h\        \        \        ^,          \        \        ,          ,           \        4      4      R8X  g   Q h\        \        \        ^,          \        \        ,          ,
          \        4      4      R8X  g   Q h\        \        \        ) \        ,          \
        ,          \        \        ,          ,           ^,
          \        \        \
        4      4      R8X  g   Q h\        \        \        ) \        ^,          ,          \        ^,          ,          \
        ,          ^\        ,           \
        ^,          ,          ,           ^\        ,          \
        ,          ,
          ^,           \        \        \
        4      4      R8X  g   Q h\        \        \        ^,          ^,           \        ^R7      4      R8X  g   Q h\        \        ^\        ^,          ,          ^\        ,          ,           ^,           \        ^R7      4      R8X  g   Q hR# )r   zPoly(0, x, domain='ZZ')zPoly(1, x, domain='ZZ')zPoly(x, x, domain='ZZ')zPoly(2*x + 1, x, domain='ZZ')zPoly(2*x - 1, x, domain='ZZ')zPoly(-1, x, domain='ZZ')zPoly(-x, x, domain='ZZ')zPoly(-2*x + 1, x, domain='ZZ')zPoly(-2*x - 1, x, domain='ZZ')zPoly(x - 1, x, domain='ZZ')z Poly(x**5 + 2*x, x, domain='ZZ')z"Poly((3**x)**2, 3**x, domain='ZZ')z)Poly(((x**2)**x), (x**2)**x, domain='ZZ')F)expandz$Poly((x + y)**3, x + y, domain='ZZ')z$Poly((x - 1)**2, x - 1, domain='ZZ')z%Poly(x**2 + y + 1, x, domain='ZZ[y]')z%Poly(x**2 + y - 1, x, domain='ZZ[y]')z"Poly(x**2 + I*x, x, domain='ZZ_I')z"Poly(x**2 - I*x, x, domain='ZZ_I')z,Poly(-x*y*z + x*y - 1, x, y, z, domain='ZZ')zIPoly(-w*x**21*y**7*z - 2*x*z + (w + 1)*z**3 + 1, x, y, z, domain='ZZ[w]'))moduluszPoly(x**2 + 1, x, modulus=2)z%Poly(2*x**2 + 3*x + 4, x, modulus=17)Nr   r   )r   rW   r   r   r   r   r   r   r~   r{   	test_Polyr'    s   tAqz?7777tAqz?7777tAqz?7777tAaC!GQ $CCCCtAaC!GQ $CCCCtB{9999tQB{9999tBqD1Ha !%EEEEtBqD1Ha !%EEEEtAE1~"????tAaC!Q$J"#'IIIItA!Had#$(LLLLtQTAI#NNNNtQUQJQ6 ;< < <tQUQJQ6 ;< < < QTAX\1"IJ J JQTAX\1"IJ J J tAqD1Q3J"#'KKKKtAqD1Q3J"#'KKKKtQBqDFQqSL1$aA. BC C CtQBq"uHQTM!Oq1uadl2QqSU:Q>1aHIST T T tAqD1Ha+,0NNNNtAadFQqSL1$a459````r~   c                     \        \        R \        \        4      ^ ,          4      R8X  g   Q h\        \        R\        \
        4      ^ ,          4      R8X  g   Q h\        \        R\        R,          \        4      ^ ,          4      R8X  g   Q hR# )r   z+Polynomial ring in x over ZZ with lex orderx,yz0Polynomial ring in x, y over QQ with grlex orderx,y,zr   z4Polynomial ring in x, y, z over ZZ[t] with lex orderN)r   r[   r]   ra   r^   rb   r   r~   r{   test_PolyRingr+    sl    tCS!!$%)VVVVtE2u%a()-____tGRWc*1-.2hhhhr~   c                     \        \        R \        \        4      ^ ,          4      R8X  g   Q h\        \        R\        \
        4      ^ ,          4      R8X  g   Q h\        \        R\        R,          \        4      ^ ,          4      R8X  g   Q hR# )r   z3Rational function field in x over ZZ with lex orderr)  z8Rational function field in x, y over QQ with grlex orderr*  r   z<Rational function field in x, y, z over ZZ[t] with lex orderN)r   r\   r]   ra   r^   rb   r   r~   r{   test_FracFieldr-    sl    uS"c"1%&*____uUB&q)*.hhhhuWbgs+A./3qqqqr~   c                     \        R \        4      w  rp\        RV 4      w  r4rV\        R\        4      w  rx\        WD,
          4      R8X  g   Q h\        V^,
          4      R8X  g   Q h\        V^,           4      R8X  g   Q h\        V^,          4      R8X  g   Q h\        V^,          ^V,          V,          ,           ^,           V^,          ,          V,          V,           ^,           4      R8X  g   Q h\        V^,          ^V,          V,          ,           ^,           V^,          ,          V,          V^,           V,          ,           4      R8X  g   Q h\        V^,          ^V,          V,          ,           ^,           V^,          ,          V,          V^,           V,          ,           ^,           4      R	8X  g   Q h\        V^,          ) ^V,          V,          ,           ^,
          V^,          ,          V,          V^,           V,          ,
          ^,
          4      R
8X  g   Q h\        V^,          V,           ^,           ) V,          ^V,          V,          ,           ^,           4      R8X  g   Q h\        V^,          V,           ^,           ) V,          ^V,          V,          ,
          ^,           4      R8X  g   Q h\        ^\        ,           V,          ^,           4      R8X  g   Q hR# )u,vr*  r   r   x - 1r   x**2z!(u**2 + 3*u*v + 1)*x**2*y + u + 1z%(u**2 + 3*u*v + 1)*x**2*y + (u + 1)*xz)(u**2 + 3*u*v + 1)*x**2*y + (u + 1)*x + 1z*-(u**2 - 3*u*v + 1)*x**2*y - (u + 1)*x - 1z-(v**2 + v + 1)*x + 3*u*v + 1z-(v**2 + v + 1)*x - 3*u*v + 1z(1 + 1*I)*x + (2 + 0*I)N)r[   r]   r_   r   r   )	RuvuvRxyzr   r   r   Rx_zzixzs	            r{   test_PolyElementr8    s/   E2HC1w$KDAc4JFqu:q1u:   q1u:   q!t91qs1uq !Q$&q(1,q015XXXX1qs1uq !Q$&q(AE19459````1qs1uq !Q$&q(AE194q89=hhhhA!A!1a4')QUAI59:>jjjjAAq 1Q3q5(1,-1PPPPAAq 1Q3q5(1,-1PPPP!Rx!| 9999r~   c                     \        R \        4      w  rp\        RV 4      w  r4rVp\        R\        4      w  r\        ^ ^4      p
\        WD,
          4      R8X  g   Q h\        V^,
          4      R8X  g   Q h\        V^,           4      R8X  g   Q h\        V^,          4      R8X  g   Q h\        WF,          4      R8X  g   Q h\        WE,          V,          4      R8X  g   Q h\        WFV,          ,          4      R	8X  g   Q h\        WE,          Wg,          ,          4      R
8X  g   Q h\        V^,
          V,          4      R8X  g   Q h\        V^,           V,          4      R8X  g   Q h\        V) ^,
          V,          4      R8X  g   Q h\        V^,           WV,          ,          4      R8X  g   Q h\        V) V^,           ,          4      R8X  g   Q h\        WV,          V^,           ,          4      R8X  g   Q h\        V^,           V,          V,          ^,           V^,
          V,          ^,
          ,          4      R8X  g   Q h\        V^,           V,          V,          ^,           V^,
          V,          Wq,          V,          ,
          ^,
          ,          4      R8X  g   Q h\        ^V
,           V	,          4      R8X  g   Q h\        ^V
,           V	,          V
,
          V	,          4      R8X  g   Q hR# )r/  zx,y,z,tr   r   r0  r   zx/3zx/zzx*y/zzx/(z*t)z	x*y/(z*t)z	(x - 1)/yz	(x + 1)/yz
(-x - 1)/yz(x + 1)/(y*z)z
-y/(x + 1)zy*z/(x + 1)z!((u + 1)*x*y + 1)/((v - 1)*z - 1)z)((u + 1)*x*y + 1)/((v - 1)*z - u*v*t - 1)z(1 + 1*I)/xz((1 + 1*I)*x + (0 + -1*I))/xN)r\   r]   r`   r   )Fuvr3  r4  Fxyztr   r   r   r   r6  r7  r   s              r{   test_FracElementr<    sL   UBHC19c*NEQsD!JFQ
Aqu:q1u:   q1u:   qs8uqs8uqs1u:   qA#w<9$$$qsACy>[(((Aqy>[(((Aqy>[(((Qz?l***A}000r1q5z?l***qsAE{},,,Q	!a1q5!)a-015XXXXQ	!a1q5!)ac!e"3a"789=hhhh!Rx=M)))1b1b !%CCCCr~   c                     \        \        ^^ 4      4      R8X  g   Q h\        \        R^ 4      4      R8X  g   Q h\        \        ^ ^4      4      R8X  g   Q h\        \        ^ R4      4      R8X  g   Q h\        \        ^ ^4      4      R8X  g   Q h\        \        ^ R4      4      R8X  g   Q h\        \        ^^4      4      R8X  g   Q h\        \        RR4      4      R8X  g   Q h\        \        RR4      4      R	8X  g   Q hR
# )r   r   r   r   z-Iz2*Iz-2*Iz1 + Iz-1 - Iz-1 - 2*INr   r   )r   r_   r   r~   r{   test_GaussianIntegerr>    s    tAqz?c!!!tB{t###tAqz?c!!!tAr{t###tAqz?e###tAr{v%%%tAqz?g%%%tB|(((tB|
***r~   c            	      6   \        \        ^^ 4      4      R8X  g   Q h\        \        \        ^^4      ^ 4      4      R8X  g   Q h\        \        ^ \        ^^4      4      4      R8X  g   Q h\        \        \        ^^4      \        R^4      4      4      R8X  g   Q hR# )r   r   z2/3z2*I/3z1/2 - 2*I/3Nr   )r   r`   r^   r   r~   r{   test_GaussianRationalr@    s    tAqz?c!!!tBq!Ha !U***tAr!Qx !W,,,tBq!HbQi()]:::r~   c                     \        \        R,          4      R8X  g   Q h\        \        R,          4      R8X  g   Q h\        \        ^,          4      R8X  g   Q h\        \        \        ,           R,          4      R8X  g   Q h\        \        \        ,           R,          4      R8X  g   Q h\        \        \        ,           ^,          4      R8X  g   Q h\        \        \        ,           ^\        ,           ,          4      R8X  g   Q h\        \        \        ^^4      ,          4      R8X  g   Q h\        ^\        \        ^^4      ,          ,          4      R	8X  g   Q h\        \	        \	        \        4      4      4      R
8X  g   Q h\        \        R,          4      R8X  g   Q h\        \        \        ^4      RRR7      4      R8X  g   Q hR# )r   z1/xzx**(-2)r1  z	1/(x + y)z(x + y)**(-2)z
(x + y)**2z(x + y)**(x + 1)zx**(1/3)z	x**(-1/3)zx**(1/4)z	x**(-1.0)Fr   z	2**(-1.0)Nr   r   r	  )r   r   r   r   r1   r#   r'   r   r~   r{   test_PowrB    sG   q"u:q"u:"""q!t9A{{***A{...Az?l***AQ $6666q(1a. !Z///qHQN""#{222tDG}+++q$w<;&&&s1Q4./;>>>r~   c                     \        \        \        4      4      R 8X  g   Q h\        \        \        ^,          4      4      R8X  g   Q h\        ^\        \        4      ,          4      R8X  g   Q h\        ^\        \        ^,          4      ,          4      R8X  g   Q h\        \        \        \        4      ,          4      R8X  g   Q h\        \        R,          4      R8X  g   Q h\        ^\        R,          ,          4      R8X  g   Q hR# )	zsqrt(x)z
sqrt(x**2)z	1/sqrt(x)z1/sqrt(x**2)z	y/sqrt(x)g      ?zx**0.5z	x**(-0.5)N)r   r1   r   r   r   r~   r{   	test_sqrtrD     s    tAw<9$$$tAqDz?l***qay>[(((qad|...qay>[(((q#v;("""qCx=K'''r~   c            
      x
   \        ^^4      p \        ^^4      p\        ^^4      p\        ^R.4      p\        ^ 4      p\        ^4      p\        R/4      p\        W,          4      R8X  g   Q h\        W,          4      R8X  g   Q h\        V4      R8X  g   Q h\        W,          4      R8X  g   Q h\        W,           4      R8X  g   Q h\        W,           4      R8X  g   Q h\        W,           4      R8X  g   Q h\        W3,          4      R8X  g   Q h\        W1,           4      R8X  g   Q h\        W4,           4      R	8X  g   Q h\        W4,          4      R
8X  g   Q h\        W#,           4      R
8X  g   Q h\        W,          4      R8X  g   Q h\        W,          4      R8X  g   Q h\        W,          4      R8X  g   Q h\        WV,          4      R8X  g   Q h\        \        R4      4      R8X  g   Q h\        \        R4      4      R8X  g   Q h\        \        R4      4      R8X  g   Q h\        \        R4      4      R8X  g   Q h\        \        R4      4      R8X  g   Q h\        \        R^R7      4      R8X  g   Q h\        \        R^R7      4      R8X  g   Q h\        \        R^R7      4      R8X  g   Q h\        \        R^R7      4      R8X  g   Q h\        \        R^R7      4      R8X  g   Q h\        \        \        ^^4      4      4      R8X  g   Q h\        \        \        ^^$4      4      4      R 8X  g   Q h\        ^{^,          \        ^^4      ,          4      R!8X  g   Q h\        ^{^,          ^,           \        ^^4      ,          4      R!8w  g   Q h\        ^{^,          ^,
          \        ^^4      ,          4      R!8w  g   Q h\        ^{^,          ^,
          \        ^^4      ,          4      R"8w  g   Q h\        \        \        ^Q^$4      4      ^,          4      R#8X  g   Q h\        ^\        \        ^Q^$4      4      ^,          ,          4      R$8X  g   Q h\        \        R.4      4      \        ^\        ,          4      8X  g   Q h\        ^\        ^R04      ,          4      R%8X  g   Q h\        \        ^^4      R&R'7      R(8X  g   Q h\        R)4      p\        V\        ^^4      ,          R&R'7      R*8X  g   Q h\        \        V\        ^^4      4      R&R'7      R+8X  g   Q h\        \        Ww\        ^^4      4      R&R'7      R,8X  g   Q hR-# )1r   z1/12z1/2z1/8z3/4z7/12z-1/4z1/4z-1/6z-1/2r   z1/64z1/2727z-25z1.25z5/4z-2.6e-2z-13/500z25/7z-123/569z0.1[23])rationalz61/495z5.1[666]z31/6z	-5.1[666]z-31/6z0.[9]r   z-0.[9]r   r   123122z27/8z8/27z2**(1/10000000000)Tr   zS(2)/3r   zx**(S(2)/3)zEq(x, S(2)/3)zLimit(x, x, S(7)/2, dir='+')Nr   l    d(	 )	r   r   r'   r1   r   rm   r)   r$   rA   )n1n2n3n4n5n7n8r   s           r{   test_RationalrR  *  sg   	!QB	!QB	!QB	!RB	!B	!B	"Bru:ru:r7eru:rw<5   rw<6!!!rw<6!!!ru:rw<6!!!rw<6!!!ru:rw<3rv;&   rv;&   rv;$rv;&   x5(((x E)))x	"#y000qy>V###q}+++qQ'(H444qa()V333qq)*g555q1%&#---qA&'4///tHQN#$---tHQO$%...RHQO+,555R!hq"o-.%777R!hq"o-.%777R!hq"o-.%777tHR$%q()V333qhr2&'**+v555tBx=C!H$$$q(1f%%&*>>>>At4@@@sA8Aq>!$7=HHH1hq!n%d;NNNaHQN+DA&' ' 'r~   c                  t   \        \        R ^R7      4      R 8X  g   Q h\        \        R^	R7      4      R8X  g   Q h\        \        R^R7      4      R8X  g   Q h\        \        P                  ! ^4      4      R8X  g   Q h\        \        P                  ! ^4      4      R8X  g   Q h\        \        P                  ! ^A4      4      R8X  g   Q h\        \        P                  ! R4      4      R8X  g   Q h\        \        R,          \        R,          P	                  ^4      ,
          P                  ^4      4      R	8X  g   Q h\        \        R
4      RR^R7      R8X  g   Q h\        \        R
4      RR^R7      R8X  g   Q h\        \        R4      RR^R7      R8X  g   Q h\        \        R4      R^R7      R8X  g   Q hR# )z1.23)dpsz
1.23456789z1.234567890123456789z3.14z3.14159265358979zB3.1415926535897932384626433832795028841971693993751058209749445923z0.0i  z-0.e+88100F)	full_precminmaxz1.0e+2z100.0z0.1z0.099)rW  rX  z9.90000000000000e-2Nr   r   )r   r   r    evalfroundr   rm   r   r~   r{   
test_Floatr[  c  s   uV'(F222u\u-.,>>>$&136LM M Mrxx6)))rxx $6666rxx  &J K K Krxx|%%%C2s7//!,,//23y@@@e21=IIIe21=HHHe21=FFFgBA.2GGGGr~   c                     \        \        \        \        R 4      4      R8X  g   Q h\        \        \        \        ,           \        R4      4      R8X  g   Q h\        \        \        \        R4      4      R8X  g   Q h\        \	        \        ^4      \	        \        ^4      ,          4      R8X  g   Q h\        \        \        ^4      \        \        ^4      ,          4      R8X  g   Q hR# )	<zx < yz==zEq(x + y, y)z!=zNe(x, y)zEq(x, 1) | Eq(x, 2)zNe(x, 1) & Ne(x, 2)N)r   r%   r   r   r$   r&   r   r~   r{   test_Relationalr^  u  s    s1a~')))s1q5!T"#~555s1a:---r!Qx"Q("#'<<<<r!Qx"Q("#'<<<<r~   c                      \        \        P                  ! \        \        4      4      R 8X  g   Q h\        \        P
                  ! \        \        4      4      R8X  g   Q hR# )z
Q.eq(x, y)z
Q.ne(x, y)N)r   r   eqr   r   ner   r~   r{   test_AppliedBinaryRelationrb  }  s:    qttAqz?l***qttAqz?l***r~   c                      \        \        \        ^,          ^\        ,          ,           ^,
          ^ 4      4      R8X  g   Q hR# )r  zCRootOf(x**5 + 2*x - 1, 0)N)r   rX   r   r   r~   r{   test_CRootOfrd    s-    vadQqSj1na()-IIIIr~   c            
          \         ^,          ^\         ,          ,           ^,
          p \        \        V \        \        \        4      RR7      4      R8X  g   Q h\        \        V \        \        \        ^,          4      RR7      4      R8X  g   Q hR# )r  F)autozRootSum(x**5 + 2*x - 1)z(RootSum(x**5 + 2*x - 1, Lambda(z, z**2))N)r   r   rY   r   r   )r   s    r{   test_RootSumrg    s    	1qs
QA6!Q<e,.1JK K Kwq&	1a4 "LM M Mr~   c                     \        \        . \        \        4      4      R 8X  g   Q h\        ^,          ^\        ,          ,
          \        ,
          ^,           \        ^,          ^\        ,          ,
          \        ,           ^,
          .p \        \        V RR7      4      R8X  g   Q h\        \        V RR7      4      R8X  g   Q hR# )z1GroebnerBasis([], x, y, domain='ZZ', order='lex')rb   )orderzYGroebnerBasis([x**2 - x - 3*y + 1, y**2 - 2*x + y - 1], x, y, domain='ZZ', order='grlex')ra   zfGroebnerBasis([2*x - y**2 - y + 1, y**4 + 2*y**3 - 3*y**2 - 16*y + 7], x, y, domain='ZZ', order='lex')N)r   rZ   r   r   )Fs    r{   test_GroebnerBasisrk    s    x
Aq IJ J J 
A!a!	QTAaCZ!^a/0Ax)*cd d dx'(pq q qr~   c            
      0   \        \        4       4      R 8X  g   Q h\        \        4       4      R8X  g   Q h\        ^04      R8X  g   Q h\        \        ^.4      4      R8X  g   Q h\        0 R	m4      R8X  g   Q h\        \        . R
O4      4      R8X  g   Q h\        ^\        \        ^,          \        ^,          \        ^,          04      R8X  g   Q h\        \        ^\        \        ^,          \        ^,          \        ^,          .4      4      R8X  g   Q hR# )zset()zfrozenset()z{1}zfrozenset({1})z	{1, 2, 3}zfrozenset({1, 2, 3})z{1, x, x**2, x**3, x**4}z#frozenset({1, x, x**2, x**3, x**4})N>   r   r   r  )r   r   r  )rm   set	frozensetr   r   r~   r{   test_setro    s    ;'!!!	---9	1##3333	?k)))	)$%)????	
Aq!tQT1a4 "%?@ @ @1aAq!tQT*+-0UV V Vr~   c                      \        \        ^,          ^.\        \        \        ,           ..4      p \        V 4      R8X  g   Q h\	        V 4      R8X  g   Q hR# )r   r   r   N)r?   r   r   r   rm   r   s    r{   test_SparseMatrixrq    sG    q"uaj1a!e*-.Aq633337;;;;r~   c            	         \        \        \        ^\        ,          4      \        \        \
        34      4      R8X  g   Q h\        \        \        \
        ^,          ,          \        R^3\
        R^34      4      R8X  g   Q hR# )r  zSum(cos(3*z), (z, x, y))z#Sum(x*y**2, (x, -2, 2), (y, -5, 5))Nr   )r   r	   r2   r   r   r   r   r   r~   r{   test_Sumrt    sb    yQqSAq!9-.2LLLLs1QT6Ar1:2qz23-. . .r~   c                      \        \        4      R 8X  g   Q h\        \        4      R8X  g   Q h\        p \        V 4      R8X  g   Q hR# )r   r   N)r   r   r   es    r{   test_Symbolrx    s7    q6S==q6S==	Aq6S==r~   c                     \        \        34      \        \        34      u;8X  d	   R 8X  g   Q h Q h\        \        \        ,           ^\        ,           34      \        \        \        ,           ^\        ,           34      u;8X  d	   R8X  g   Q h Q h\        \        \        ,           ^\        ,           \        ^,          334      \        \        \        ,           ^\        ,           \        ^,          334      u;8X  d	   R8X  g   Q h Q hR# )z(x,)z(x + y, x + 1)z(x + y, (x + 1, x**2))Nr   r   r~   r{   
test_tuplerz    s    t9aT
,f,,,,,Aq1u~$Aq1u~"6J:JJJJJJA	Aq!t  AAq!t}56S:RS S S S Sr~   c                  n   \        \        \        ^,          ,          \        ,
          \        ^,          \        ^,          ,
          \        4      p \        \        \        ,
          \        \        ,           \        4      p\        \        \        ^,          ,          \        \
        ,          \        ,          ,
          \
        ,           \        \        ,
          \        4      p\        \        W4      4      R8X  g   Q h\        \        WV4      4      R8X  g   Q h\        \        V) V 4      4      R8X  g   Q hR# )r   zXSeries(TransferFunction(x*y**2 - z, -t**3 + y**3, y), TransferFunction(x - y, x + y, y))zSeries(TransferFunction(x*y**2 - z, -t**3 + y**3, y), TransferFunction(x - y, x + y, y), TransferFunction(t*x**2 - t**w*x + w, t - y, y))zYSeries(TransferFunction(-x + y, x + y, y), TransferFunction(x*y**2 - z, -t**3 + y**3, y))N)rM   r   r   r   r   r   r   rN   tf1tf2tf3s      r{   test_Series_strr    s    
1QT6A:q!tad{A
6C
1q5!a%
+C
1QT6AqDF?Q.Aq
9Cvc bc c cvc$% 	TT T TvsdC !cd d dr~   c                  t   \        \        \        ^,          ,          \        ,
          \        ^,          \        ^,          ,
          \        4      p \        \        \        ,
          \        \        ,           \        4      p\        W.W..4      p\        W.W..4      p\        \        W#4      4      R8X  g   Q hR# )r   a  MIMOSeries(TransferFunctionMatrix(((TransferFunction(x*y**2 - z, -t**3 + y**3, y), TransferFunction(x - y, x + y, y)), (TransferFunction(x - y, x + y, y), TransferFunction(x*y**2 - z, -t**3 + y**3, y)))), TransferFunctionMatrix(((TransferFunction(x - y, x + y, y), TransferFunction(x*y**2 - z, -t**3 + y**3, y)), (TransferFunction(x*y**2 - z, -t**3 + y**3, y), TransferFunction(x - y, x + y, y)))))N)rM   r   r   r   r   rQ   r   rR   r}  r~  tfm_1tfm_2s       r{   test_MIMOSeries_strr    s    
1QT6A:q!tad{A
6C
1q5!a%
+C"SJ
#;<E"SJ
#;<Ez%'(	ll l lr~   c                     \        \        ^,
          \        ^,           \        4      p \        V 4      R8X  g   Q h\        \        ^,           ^\        ,
          \        4      p\        V4      R8X  g   Q h\        \        \        ^,          ^\        ,          ,           ^,           \        4      p\        V4      R8X  g   Q hR# )r   z!TransferFunction(x - 1, x + 1, x)z!TransferFunction(x + 1, 2 - y, x)z&TransferFunction(y, y**2 + 2*y + 3, y)N)rM   r   r   r   r|  s      r{   test_TransferFunction_strr    s    
1q5!a%
+Cs8::::
1q5!a%
+Cs8::::
1adQqSj1na
0Cs8????r~   c                  n   \        \        \        ^,          ,          \        ,
          \        ^,          \        ^,          ,
          \        4      p \        \        \        ,
          \        \        ,           \        4      p\        \        \        ^,          ,          \        \
        ,          \        ,          ,
          \
        ,           \        \        ,
          \        4      p\        \        W4      4      R8X  g   Q h\        \        WV4      4      R8X  g   Q h\        \        V) V 4      4      R8X  g   Q hR# )r   zZParallel(TransferFunction(x*y**2 - z, -t**3 + y**3, y), TransferFunction(x - y, x + y, y))zParallel(TransferFunction(x*y**2 - z, -t**3 + y**3, y), TransferFunction(x - y, x + y, y), TransferFunction(t*x**2 - t**w*x + w, t - y, y))z[Parallel(TransferFunction(-x + y, x + y, y), TransferFunction(x*y**2 - z, -t**3 + y**3, y))N)rM   r   r   r   r   r   r   rO   r|  s      r{   test_Parallel_strr    s    
1QT6A:q!tad{A
6C
1q5!a%
+C
1QT6AqDF?Q.Aq
9Cx!"de e ex#&' 	VV V Vxc"#ef f fr~   c                  t   \        \        \        ^,          ,          \        ,
          \        ^,          \        ^,          ,
          \        4      p \        \        \        ,
          \        \        ,           \        4      p\        W.W..4      p\        W.W..4      p\        \        W#4      4      R8X  g   Q hR# )r   a  MIMOParallel(TransferFunctionMatrix(((TransferFunction(x*y**2 - z, -t**3 + y**3, y), TransferFunction(x - y, x + y, y)), (TransferFunction(x - y, x + y, y), TransferFunction(x*y**2 - z, -t**3 + y**3, y)))), TransferFunctionMatrix(((TransferFunction(x - y, x + y, y), TransferFunction(x*y**2 - z, -t**3 + y**3, y)), (TransferFunction(x*y**2 - z, -t**3 + y**3, y), TransferFunction(x - y, x + y, y)))))N)rM   r   r   r   r   rQ   r   rS   r  s       r{   test_MIMOParallel_strr    s    
1QT6A:q!tad{A
6C
1q5!a%
+C"SJ
#;<E"SJ
#;<E|E)*	ll l lr~   c            
      b   \        \        \        ^,          ,          \        ,
          \        ^,          \        ^,          ,
          \        4      p \        \        \        ,
          \        \        ,           \        4      p\        \        \        ^,          ,          \        \
        ,          \        ,          ,
          \
        ,           \        \        ,
          \        4      p\        \        W,          V4      4      R8X  g   Q h\        \        V \        ^^\        4      ^4      4      R8X  g   Q hR# )r   zFeedback(Series(TransferFunction(x*y**2 - z, -t**3 + y**3, y), TransferFunction(x - y, x + y, y)), TransferFunction(t*x**2 - t**w*x + w, t - y, y), -1)zUFeedback(TransferFunction(x*y**2 - z, -t**3 + y**3, y), TransferFunction(1, 1, y), 1)N)rM   r   r   r   r   r   r   rP   r|  s      r{   test_Feedback_strr    s    
1QT6A:q!tad{A
6C
1q5!a%
+C
1QT6AqDF?Q.Aq
9Cx%&	?? ? ? x-aA6:;_` ` `r~   c                     \        \        ^,          \        ^,          ,
          \        \        ,
          \        4      p \        \        \        ,
          \        \        ,           \        4      p\	        W.W..4      p\	        W.W..4      p\        \        W#4      4      R8X  g   Q h\        \        W#^4      4      R8X  g   Q hR# )r   a  MIMOFeedback(TransferFunctionMatrix(((TransferFunction(-x + y, y + z, x), TransferFunction(x**2 - y**3, y - z, x)), (TransferFunction(x**2 - y**3, y - z, x), TransferFunction(-x + y, y + z, x)))), TransferFunctionMatrix(((TransferFunction(x**2 - y**3, y - z, x), TransferFunction(-x + y, y + z, x)), (TransferFunction(-x + y, y + z, x), TransferFunction(x**2 - y**3, y - z, x)))), -1)a  MIMOFeedback(TransferFunctionMatrix(((TransferFunction(-x + y, y + z, x), TransferFunction(x**2 - y**3, y - z, x)), (TransferFunction(x**2 - y**3, y - z, x), TransferFunction(-x + y, y + z, x)))), TransferFunctionMatrix(((TransferFunction(x**2 - y**3, y - z, x), TransferFunction(-x + y, y + z, x)), (TransferFunction(-x + y, y + z, x), TransferFunction(x**2 - y**3, y - z, x)))), 1)N)rM   r   r   r   rQ   r   rT   r  s       r{   test_MIMOFeedback_strr    s    
1a4!Q$;Aq
1C
1q5!a%
+C"SJ
#;<E"SJ
#;<EU*+HH I H
 U1-.bb c br~   c                  B   \        \        \        ^,          ,          \        ,
          \        ^,          \        ^,          ,
          \        4      p \        \        \        ,
          \        \        ,           \        4      p\        \        \        ^,          ,          \        \
        ,          \        ,          ,
          \
        ,           \        \        ,
          \        4      p\        \        V .V..4      4      R8X  g   Q h\        \        W.W!..4      4      R8X  g   Q hR# )r   zpTransferFunctionMatrix(((TransferFunction(x*y**2 - z, -t**3 + y**3, y),), (TransferFunction(x - y, x + y, y),)))zTransferFunctionMatrix(((TransferFunction(x*y**2 - z, -t**3 + y**3, y), TransferFunction(x - y, x + y, y)), (TransferFunction(t*x**2 - t**w*x + w, t - y, y), TransferFunction(x - y, x + y, y))))N)rM   r   r   r   r   r   r   rQ   r|  s      r{   test_TransferFunctionMatrix_strr    s    
1QT6A:q!tad{A
6C
1q5!a%
+C
1QT6AqDF?Q.Aq
9C%usen56z{ { {%zC:&>?@ 	MM M Mr~   c                  R   \        \        \        \        \        4      p \        V 4      R 8X  g   Q h\        \        \        \        \        \        ,          4      p \        V 4      R8X  g   Q h\        \        \        \        \        \        ,           4      p \        V 4      R8X  g   Q hR# )zx + y*i + z*j + t*kzx + y*i + z*j + t*x*kzx + y*i + z*j + (t + x)*kN)r   r   r   r   r   r   )qs    r{   test_Quaternion_str_printerr  "  ss    1aAAq6****1Qq1Aq6,,,,1Qq1Aq60000r~   c                      \        \        R R7      R8X  g   Q h\        \        R R7      R8X  g   Q h\        \        4      R8X  g   Q h\        \        4      R8X  g   Q hR# )T)abbrevr  JrU   rV   N)rm   rU   rV   r   r   r~   r{   test_Quantity_strr  +  sP    t$+++d#s***v;("""u:   r~   c                     \        R 4      p \        V ^,           4      R8X  g   Q h\        \        ^V ,          4      ^,           4      R8X  g   Q h\        ^V ,          ^,           4      R8X  g   Q h\        ^V ,          ^,           4      R8X  g   Q h\        V ^,          ^,           4      R8X  g   Q h\        ^^V ,
          ,          4      R8X  g   Q hR# )r   zx_ + 1zexp(2**x_) + 5z3*x_ + 1z1 + 1/x_z	x_**2 + 1z
1/(1 - x_)N)r*   r   r0   )r   s    r{   test_wild_strr  2  s    S	Aq1u:!!!s1a4y1}!1111qsQw<:%%%qsQw<:%%%q!tax=K'''q!a%y>\)))r~   c                     ^ RI Hp HpHp \	        R4      pVf   R# V ! R4      pV! R4      pV! R4      p\        V4      R8X  g   Q h\        V4      R8X  g   Q h\        V4      R8X  g   Q h\        WV,          ^V,          ,           4      R8X  g   Q h\        \        V4      \        V4      ,          \        V4      ,          4      R8X  g   Q hR# )	r   )WildDotWildPlusWildStarmatchpyNr   w__w___z2**w_ + w__/w___zsqrt(w___)*sin(w_)*cos(w__))	!sympy.utilities.matchpy_connectorr  r  r  rL   r   r3   r2   r1   )r  r  r  r  wdwpwss          r{   test_wild_matchpyr  =  s    MMI&G	B	%B	&	Br7d??r7er7fruq"u}!3333s2ws2wtBx'(,IIIIr~   c                  <    \        \        ^4      4      R8X  g   Q hR# )r  zzeta(3)N)r   r5   r   r~   r{   	test_zetar  Q  s    tAw<9$$$r~   c                  d    \         \        ,
          p \        V 4      p\        V 4      pW8X  g   Q hR # N)r   r   r   )rw  r   bs      r{   test_issue_3101r  U  s&    	AAAAAA6M6r~   c                      R\        \        4      ,          \        \        \        4      ,          ^,          ,
          p \        V 4      R9  g   Q h\        V 4      R8X  g   Q hR# )r   z-2*sqrt(x) - y/(2*sqrt(x))Nr   )z(-2)*x**1/2(-1/2)*x**(-1/2)*yz-2*x**1/2(-1/2)*x**(-1/2)*yz-2*x**1/2-1/2*x**-1/2*w)r1   r   r   r   rv  s    r{   test_issue_3103r  \  sR    
47
QtAwYq[ Aq6 F F F Fq61111r~   c                  `    \        \        \        4      ^,           p \        V 4      R8X  g   Q hR# )r   zIntegral(x, x) + 1N)r6   r   r   rv  s    r{   test_issue_4021r  c  s%    AAq6))))r~   c                      \        R 4      R 8X  g   Q h\        R 4      R8X  g   Q hRRR\        .p \        V 4      R8X  g   Q h\        V 4      R8X  g   Q hR# )abcz'abc'r   r  cz[a, b, c, x]z['a', 'b', 'c', x]N)rm   rn   r   rv  s    r{   test_sstrreprr  h  sY    ;%E?g%%%	c3A7n$$$A;....r~   c                  H    \        \        \        ,          4      R 8X  g   Q hR# )r   N)rm   r   r   r   r~   r{   test_infinityr  q  s    1:r~   c                     \        \        R 4      RR7      R8X  g   Q h\        \        R 4      RR7      R8X  g   Q h\        \        R 4      RR7      R 8X  g   Q h\        \        R 4      \        ,          RR7      R9   g   Q h\        \        R 4      \        ,          RR7      R9   g   Q h\        \        R 4      \        ,          RR7      R9   g   Q hR# )	z0.3TrV  z0.300000000000000rf  FN)z0.300000000000000*xzx*0.300000000000000)z0.3*xzx*0.3)rm   r'   r   r   r~   r{   test_full_precr  u  s    %D)-@@@@%F+/BBBB%E*e333%
d+ 0    %
f- 2    %
e, 1   r~   c                     \        R RR7      w  rp\        W,          VR	,          ,          4      R8X  g   Q h\        VR	,          V ,          V,          4      R8X  g   Q h\        WR	,          ,          V,          4      R8X  g   Q h\        \        V 4      4      R8X  g   Q h\        ^\        V 4      ,          4      R8X  g   Q hR# )
zA,B,CFcommutativezA*B*C**(-1)zC**(-1)*A*BzA*C**(-1)*Bzsqrt(A)z	A**(-1/2)Nr   )r+   rm   r1   )ABCs      r{   test_noncommutativer    s    g51GA!ArE	?m+++2a	?m+++R%	?m+++Q=I%%%$q'	?k)))r~   c                      \        4       p V P                  R 4      R 8X  g   Q hV P                  \        \        ,          4      R8X  g   Q hV P                  ^ 4      R8X  g   Q hR# )r   zx*y32N)ro   emptyPrinterr   r   )str_printers    r{   test_empty_printerr    sX    ,K##E*e333##AaC(E111##B'4///r~   c                  t    \        R ^/R7      p \        R4      pV P                  V! R4      4      R8X  g   Q hR# )rT  )settingsr   gMD?zf(1.33)N)ro   r   doprint)dec_printerr   s     r{   test_decimal_printerr    s6    uQi0KAq{+y888r~   c                  (    \        \        R  4       R# )c                  .    \        \        ^4      RR7      # )r  garbage)method)rm   r'   r   r~   r{   r   test_settings.<locals>.<lambda>  s    d1Q4	:r~   N)rk   	TypeErrorr   r~   r{   test_settingsr    s    
9:;r~   c                  .   ^ RI Hp HpHpHpHp V ! R^ ^4      p\        V! V^ 8  4      4      R8X  g   Q hV! R^4      p\        V! V^8  4      4      R8X  g   Q hV! R^4      pV! R^4      p\        V! \        Wx4      4      P                  4      R8X  g   Q hR	# )
r   )NormalDieExponentialpspacewherex1zDomain: (0 < x1) & (x1 < oo)d1zDomain: Eq(d1, 5) | Eq(d1, 6)r   r  z1Domain: (0 <= a) & (0 <= b) & (a < oo) & (b < oo)N)	sympy.statsr  r  r  r  r  r   r   domain)	r  r  r  r  r  XDr  r  s	            r{   test_RandomDomainr    s    CCtQAuQU| >>>>D!AuQU| ????CACAveAk"))*.aaaar~   c            
         \        \        \        ^^34      !  4      R8X  g   Q h\        \        \        ^^4      !  4      R8X  g   Q h\        \        \        \        ,          \        ^,          .!  4      R8X  g   Q h\        \        \        \        \        \        4      ^4      \        \        \        4      ^4      4      R8X  g   Q hR# )r   z{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50}z{1, 2, 3, 4, 5}z{x**2, x*y}z*FiniteSet(5, FiniteSet(5, {x, y}), {x, y})N)r   rD   r   r   r   r   r~   r{   test_FiniteSetr    s    y%2,'(	K  
 y%1+&'+<<<<y1Q31+&'=888y9Q?A6	!AJ @A A Ar~   c                  l    \        \        \        \        \        4      \
        04      4      R 8X  g   Q hR# )zPartition({z}, {x, y})N)r   r   rD   r   r   r   r   r~   r{   test_Partitionr    s%    y1a1#./3KKKKr~   c                  F    \        \        P                  4      R 8X  g   Q hR# )UniversalSetN)r   r'   r  r   r~   r{   test_UniversalSetr    s    q~~.000r~   c                     \         P                  ! \        \        4      p \         \        \        3,          p\	        V P                  \        \        \        ,           ,          4      4      \	        \        \        \        ,           ,          4      8X  g   Q h\	        VP                  \        \        ,           4      4      \	        \        \        ,           4      8X  g   Q hR # r  )r^   
frac_fieldr   r   rm   convert)rj  r   s     r{   test_PrettyPolyr    sw    
aA
1a4A		!QU)$%aQi888		!a% !T!a%[000r~   c                      ^ RI Hp HpHpHp V ! R4      pV ! R4      pV! WER4      pV! V4      pV! R4      p\        V4      R8X  g   Q h\        V4      R8X  g   Q h\        V4      R8X  g   Q h\        V4      R	8X  g   Q hR
# )r   )ObjectNamedMorphismIdentityMorphismCategoryr  r  r   KzObject("A")z,NamedMorphism(Object("A"), Object("B"), "f")zIdentityMorphism(Object("A"))zCategory("K")N)sympy.categoriesr  r  r  r  r   )	r  r  r  r  r  r  r   id_Ar  s	            r{   test_categoriesr    s    $ $ 	sAsAaC AADAq6]"""q6CCCCt97777q6_$$$r~   c                  j    \        R RR7      w  r\        W,          4      p\        V4      R8X  g   Q hR# )zA BFr  zTr(A*B)N)r+   rp   r   )r  r  r   s      r{   test_Trr    s-    5e,DA
13Aq6Yr~   c                  `    \        \        R\        ,          ^,           4      4      R8X  g   Q hR# )g      @z-3.0*(1.0*z - 1.0)Ng      )r   r@   r   r   r~   r{   test_issue_6387r    s#    vd1fqj!"&::::r~   c            	         \        R ^^4      \        R^^4      r\        ^W,           ,          4      R8X  g   Q h\        \        V ,          4      R8X  g   Q h\        \        ) V ,          4      R8X  g   Q h\        ^\        ,           V ,          4      R8X  g   Q h\        ^\        ,           ) V ,          4      R8X  g   Q h\        \        \        W4      \        W4      4      4      R8X  g   Q hR# )	r  Yz	2*X + 2*YzI*Xz-I*Xz	(1 + I)*Xz
(-1 - I)*Xz(X + Y) + (X + Y)N)r<   r   r   r   )r  r  s     r{   test_MatMul_MatAddr    s    Q"La$;qq!%y>[(((qs8ur!t9Aqy>[(((Qxz?l***vfQlF1L126IIIIr~   c            	      H   \        R RR7      p \        RW 4      p\        R^
^
4      p\        R^
^
4      p\        \        VRR4      4      R8X  g   Q h\        V\        \        ^,           1\
        \
        ^,           13,          4      R8X  g   Q h\        V\        \        ^,           ^1\
        \
        ^,           ^13,          4      R	8X  g   Q h\        VR\        1\
        R13,          4      R
8X  g   Q h\        VR\        1\
        R13,          4      R
8X  g   Q h\        V\        R1R\
        13,          4      R8X  g   Q h\        V\        \
        1\        \        13,          4      R8X  g   Q h\        V\        \
        \        1\        \        \        13,          4      R8X  g   Q h\        V\        R\
        1\        R\        13,          4      R8X  g   Q h\        VR\        \
        1R\        \        13,          4      R8X  g   Q h\        VRR\        1RR\
        13,          4      R8X  g   Q h\        \        VRR4      4      R8X  g   Q h\        \        VRV R3RV R34      4      R8X  g   Q h\        \        V^ V R3^ V R34      4      R8X  g   Q h\        \        V^ V ^3^ V ^34      4      R8X  g   Q h\        VR,          4      R8X  g   Q h\        VR,          4      R8X  g   Q h\        VR,          4      R8X  g   Q h\        VR ,          4      R8X  g   Q h\        VR!,          4      R8X  g   Q h\        VR",          4      R8X  g   Q h\        VR#,          4      R8X  g   Q h\        VR$,          4      R8X  g   Q h\        W#,           R%,          4      R8X  g   Q hR# )&r   Tr   r  r  ZNzX[:, :]zX[x:x + 1, y:y + 1]zX[x:x + 1:2, y:y + 1:2]z	X[:x, y:]z	X[x:, :y]zX[x:y, z:w]zX[x:y:t, w:t:x]zX[x::y, t::w]zX[:x:y, :t:w]zX[::x, ::y]zX[::2, ::2]zX[1:2:3, 4:5:6]zX[1:3:5, 4:6:8]r   
   r   zX[1:10:2, :]zY[:5, 1:9:2]zY[:5, 1::2]zY[5:6, :5:2]z	X[:1, :1]zX[:1:2, :1:2]z(Y + Z)[2:, 2:])NNN)r   NN):r   r   r  :r  r     ):r   r  r  :r  r     )Nr  N:r   	   r   )r   r  )r  :Nr  r   )r   r   Nr  )r   r   r   r  )r   NNr  )	r)   r<   r   r>   r   r   r   r   r   )r   r  r  r  s       r{   test_MatrixSlicer    s6   sD!AS!AS"b!AS"b!A{102DEF)SSSq1q5!AE'!"#'<<<<q1q5Aa!eAI%&'+DDDDq!QRy>[(((q!QRy>[(((qRaRy>[(((q1ac{},,,q1Q!A#4444qAqt!t}000q!At!t}000q1cc{},,,{1o?@IMMM{1tQoa?@IMMM{1q!TlQ4L9:iGGG{1q!Qi!Q34EEEq#4444q#4444qy>^+++q|...q}...qz?n,,,q{{***q?222v#4444r~   c                     \        \        4      \        \        4      u;8X  d   \        \        4      u;8X  d	   R 8X  g   Q h Q h\        \        4      \        \        4      u;8X  d   \        \        4      u;8X  d	   R8X  g   Q h Q hR# )TrueFalseN)r   r9   reprrm   r8   r   r~   r{   test_true_falser
    sV    t9T
:d4j:F:::::u:e>U>w>>>>>r~   c                  N    \        \        \        \        4      4      R 8X  g   Q hR# )zEquivalent(x, y)N)r   r7   r   r   r   r~   r{   test_Equivalentr    s    z!Q $6666r~   c                  R    \        \        \        \        R R7      4      R8X  g   Q hR# )Fr   zx ^ yN)r   r:   r   r   r   r~   r{   test_Xorr    s    s1a%()W444r~   c                  v    \        \        \        P                  \        P                  4      4      R 8X  g   Q hR# )zComplement(Reals, Naturals)N)r   rC   r'   RealsNaturalsr   r~   r{   test_Complementr    s%    z!''1::./3PPPPr~   c            	      j    \        \        \        ^^4      \        ^^4      RR7      4      R8X  g   Q hR# )r   Fr   z3SymmetricDifference(Interval(2, 3), Interval(3, 4))N)r   rF   rE   r   r~   r{   test_SymmetricDifferencer    s5    "8Aq>8Aq>5QR@A A Ar~   c                  t    \        R 4      w  r^\        W,           4      ,          p\        V4      R8X  g   Q hR# )za bz	2*(a + b)N)r+   r   r   )r   r  expr1s      r{   test_UnevaluatedExprr  !  s0    5>DAoac""Eu:$$$r~   c                  (   \        R ^^4      p \        R^^4      p\        R^^4      p\        V R,          4      R8X  g   Q h\        ^V R,          ,          4      R8X  g   Q hVR,          P                  W V,
          4      p\        V4      R8X  g   Q hR# )r  r  r  zA[0, 0]z	3*A[0, 0]z(A - B)[0, 0]Nr   r   )r<   r   subs)r  r  r  rj  s       r{   test_MatrixElement_printingr  '  s    S!QAS!QAS!QAqw<9$%$q1T7{{*+*	$QAAq6_$$$r~   c                  4   \        R ^^4      p \        R^^4      p\        W V,          ,
          V,
          4      R8X  g   Q h\        W,          W,           ,
          4      R8X  g   Q h\        V R,          4      R8X  g   Q h\        V ^,          4      R8X  g   Q hR# )r  r  zA - A*B - Bz-A + A*B - BzA**(-1)zA**3Nr   )r<   r   )r  r  s     r{   test_MatrixSymbol_printingr  4  s    S!QAS!QAqQ3w{},,,qsac{~---q2w<9$$$q!t9r~   c                  T   \        R RR7      p \        RW 4      p\        V4      R8X  g   Q hVP                  V,          P	                  \
        4      p\        V4      R8X  g   Q h\        \        ^\        ,          4      pW,          P	                  V4      p\        V4      R8X  g   Q hR# )r   Tr   r  zLambda(_d, sin(_d)).(X.T*X)zLambda(x, 1/x).(n*X)N)r)   r<   r   T	applyfuncr3   r   r   )r   r  exprlamdas       r{   test_MatrixExpressionsr#  >  s    sD!AS!Aq6S== CCES!Dt955551acNEC??5!Dt9....r~   c                      \        \        \        \        3R4      4      R8X  g   Q h\        \        \        \        ,           \        \        3R4      4      R8X  g   Q hR# )r   zSubs(x, x, 1)zSubs(x + y, (x, y), (1, 2))Nr   )r   r   )r   r   r   r   r   r~   r{   test_Subs_printingr&  N  sE    tAtT"#666tAEAq66*+/LLLLr~   c                      \        \        \        4      \        \        ) \        34      p V P	                  4       V R3.V .38X  g   Q hR# )r   N))r   g        r%  r   )r6   r,   r   r   as_termsrv  s    r{   test_issue_15716r)  S  s>    1B3|,A::<a!789A3????r~   c                      ^ RI Hp HpHp \	        V ! ^4      4      R8X  g   Q h\	        V! ^^4      4      R8X  g   Q h\	        V! ^^4      4      R8X  g   Q hR# )r   r=   
ZeroMatrix	OneMatrixr   r   r   N)sympy.matricesr=   r,  r-  r   r+  s      r{   test_str_special_matricesr/  X  sR    >>x{s"""z!Q C'''yA3&&&r~   c                  d    \        \        R\        ^ ^ 34      4      \        ,           '       g   Q hR# )r   Nr   )r,   r   r   r   r   r~   r{   test_issue_14567r1  _  s%    SaAY'(1,,,,r~   c                  z    \        \        ^^.4      4      R8X  g   Q h\        \        ^^04      4      R8X  g   Q hR# )r   zPartition({1, 2})N)r   r   r   r~   r{   test_issue_21823r3  c  s<    y!Q !%8888y!Q !%8888r~   c                  z    \        \        \        \        RRR7      \        ^RRR7      RR7      4      R8X  g   Q hR# )r   Fr   z
1/(x**2*3)Nr   r   )r   r   r#   r   r   r~   r{   test_issue_22689r5  h  s2    s3qe,c!B.FQVWX\hhhhr~   c                  8   R  p V ! R4      R8X  g   Q hV ! R4      R8X  g   Q hV ! R4      R8X  g   Q hV ! R4      R8X  g   Q hV ! R4      R8X  g   Q hV ! R	4      R
8X  g   Q hV ! R4      R8X  g   Q hV ! R4      R8X  g   Q hV ! R4      R8X  g   Q hV ! R4      R8X  g   Q hR# )c                 .    \        \        V R R7      4      # )Fr   )r   r'   )r   s   &r{   r   (test_issue_21119_21460.<locals>.<lambda>m  s    3qU+,r~   z4/2z4/-2z4/(-2)z-4/2z-4/-2z-4/(-2)z-2*3/-1z	-2*3/(-1)z	-2*3/-1/2z-2*3/(-1*2)z4/2/1z4/(2*1)z-2/-1/2z	-2/(-1*2)z2*3*4**(-2*3)z2*3/4**(2*3)z2*3*1*4**(-2*3)z2*3*1/4**(2*3)Nr   )sss    r{   test_issue_21119_21460r:  l  s    	,Be9f:!!!f:g;)###i=K'''k?m+++g;)###i=K'''o.000 $4444r~   c                  r    ^ RI Hp  \        V ! R4      4      R8X  g   Q h\        V ! R4      4      R8X  g   Q hR# )r   Strr   zStr('x')N)sympy.core.symbolr=  r   rn   r<  s    r{   test_Strr?  z  s2    %s3x=CCH+++r~   c                     ^ RI Hp HpHpHp \        RRR7      w  rEV ! R^4      p\        V4      R8X  g   Q hV! RV4      p\        V4      R8X  g   Q hV! RWtV.4      p\        V4      R8X  g   Q hV! V^ 4      p	\        V	4      R8X  g   Q hR	# )
r   )ManifoldPatchCoordSystemBaseScalarFieldzx yTr   r   Prectr   N)sympy.diffgeomrA  rB  rC  rD  r+   r   )
rA  rB  rC  rD  r   r   mr  rF  r  s
             r{   test_diffgeomrI    s    LL
%d
#CAaAq6S==c1Aq6S==vqa&)Dt9a Aq6S==r~   c                     \        \        R 4      RR7      R8X  g   Q h\        \        R 4      RR7      R8X  g   Q h\        \        R R.4      RR7      R8X  g   Q h\        \        R R.4      RR7      R8X  g   Q h\        \        . R4      4      R	8X  g   Q h\        \        . R4      4      R
8X  g   Q h\        \        . R4      4      R8X  g   Q h\        \        . R4      4      R8X  g   Q hR# )r   Tr  z1.00000000000000Fz1.0g       @z$[1.00000000000000, 2.00000000000000]z
[1.0, 2.0]z!ImmutableDenseNDimArray([], (0,))z#ImmutableDenseNDimArray([], (0, 0))z#ImmutableDenseNDimArray([], (0, 1))z#ImmutableDenseNDimArray([], (1, 0))Nr   r  )r   r   )r   r   )rm   rh   r   r~   r{   test_NDimArrayrK    s    	#$/3EEEE	#%0E999	3*%6:````	3*%7<GGG	"d#$(KKKK	"f%&*OOOO	"f%&*OOOO	"f%&*OOOOr~   c                  F    \        \        P                  4      R 8X  g   Q hR# )zQ.evenN)rm   r   evenr   r~   r{   test_PredicaterN    s    <8###r~   c                  Z    \        \        P                  ! \        4      4      R 8X  g   Q hR# )z	Q.even(x)N)rm   r   rM  r   r   r~   r{   test_AppliedPredicaterP    s    q	?k)))r~   c            	      $   \        \        R R4      4      R 8X  g   Q h\        \        R ^^^\        ,
          ,          ^ 34      4      R8X  g   Q h\	        R^^4      p \	        R^^4      p\        \        W,          \        ^ .4      4      R8X  g   Q hR# )r  zA[2, 1/(1 - x), 0]r   Nz(M*N)[x, 0]N)r   r  r  )rm   ri   rj   r   r<   )r   rR  s     r{   #test_printing_str_array_expressionsrS    s    C+,333S1a1gq/237KKKKS!QAS!QAQS1a&)*m;;;r~   c                     \        R 4      p \        R4      p\        V ^ 8  4      \        ^4      ,          p\        V 4      \        ^4      ,          p\	        V 4      \        ^4      ,          p\        W4      \        ^4      ,          p\        V4      R8X  g   Q h\        V4      R8X  g   Q h\        V4      R8X  g   Q h\        V4      R8X  g   Q hVP                  R8X  g   Q hVP                  R8X  g   Q hVP                  R8X  g   Q hVP                  R8X  g   Q hVP                  4       R8X  g   Q hVP                  4       R8X  g   Q hVP                  4       R8X  g   Q hR# )r   r   zProbability(x > 0)*IzExpectation(x)*IzVariance(x)*IzCovariance(x, y)*IFN)	rK   rI   r=   rH   rJ   rG   r   r  _eval_is_commutative)r   r   z1z2z3z4s         r{   test_printing_statsrZ    sD   SASA	QU	HQK	'B	Q	#B	!Xa[	 B	A	HQK	'Br7,,,,r7((((r7o%%%r7++++%%%%%%%%%%%%""$---""$---""$---r~   N(  sympyr   sympy.algebras.quaternionr   sympy.assumptions.askr   !sympy.calculus.accumulationboundsr   sympy.combinatorics.partitionsr   sympy.concrete.summationsr   r	   sympy.core.addr
   sympy.core.containersr   r   sympy.core.exprr   r   sympy.core.functionr   r   r   r   r   sympy.core.mulr   
sympy.corer   r   r   r   sympy.core.numbersr   r   r   r   r   r   r   r    r!   r
  r"   sympy.core.powerr#   sympy.core.relationalr$   r%   r&   sympy.core.singletonr'   r>  r(   r)   r*   r+   (sympy.functions.combinatorial.factorialsr,   r-   r.   $sympy.functions.elementary.complexesr/   &sympy.functions.elementary.exponentialr0   (sympy.functions.elementary.miscellaneousr1   (sympy.functions.elementary.trigonometricr2   r3   'sympy.functions.special.delta_functionsr4   &sympy.functions.special.zeta_functionsr5   sympy.integrals.integralsr6   sympy.logic.boolalgr7   r8   r9   r:   sympy.matrices.denser;   "sympy.matrices.expressions.matexprr<   sympy.matrices.expressionsr=    sympy.matrices.expressions.slicer>   r.  r?   sympy.polys.polytoolsr@   sympy.series.limitsrA   sympy.series.orderrB   sympy.sets.setsrC   rD   rE   rF   r  rG   rH   rI   rJ   sympy.stats.rvrK   sympy.externalrL   sympy.physics.control.ltirM   rN   rO   rP   rQ   rR   rS   rT   sympy.physics.unitsrU   rV   sympy.polysrW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   sympy.geometryrc   rd   re   rf   rg   sympy.tensorrh   0sympy.tensor.array.expressions.array_expressionsri   rj   sympy.testing.pytestrk   rl   sympy.printingrm   rn   ro   sympy.physics.quantum.tracerp   r   r   r   r   r   rq   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-  r8  r<  r>  r@  rB  rD  rR  r[  r^  rb  rd  rg  rk  ro  rq  rt  rx  rz  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  r  r#  r&  r)  r/  r1  r3  r5  r:  r?  rI  rK  rN  rP  rS  rZ  r   r~   r{   <module>r     sF    0 # 9 4 6  / 1 R R  M M Q Q Q -   / / " < < Z Z 4 6 9 ? = 7 . > > ' ; / 8 ' ( %   R R H H ' (M M M -    D D " V ? 5 5 *$1aA	#J	.x,%E:@"
+%9 3-5
;
$M
09ELN3-I`	C?4B'aTir:*D<	+;?"(6'rH$=+
JM	qV<.S	d	l@	f	l`c"M1!*J(%2*
/ $*09<
b	AL11%&;J5>?75QA
%
%/ M
@
'-9
i5,
P$*<.r~   