+
    h                        ^ 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HtHt ^ RI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
I"H#t# ^ RI$H%t%H&t&H't' ^ RI(H)t)H*t* ^ RI+H,t,H-t- ^ RI.H/t/ ^ RI0H1t1 ^ RI2H3t3H4t4H5t5 ^ RI6H7t7 ^ RI8H9t9H:t: ^ RI;H<t< ^ RI=H>t> ^ RI?H@t@ ^ RIAHBtB ^ RIHCtCHDtDHEtEHFtFHGtG ^ RIHHItI ^ RIJHKtKHLtL ^ RIMHNtNHOtO ^ RIPHQtQ ^ RIRHStS ^ RITHUtU ^ RIVHWtWHXtX ^ RIYHZtZH[t[H\t\H]t] ^ R I^H_t_H`t`HataHbtbHctc ]%! R!]R"7      w  tdtetf]g! ^4       U u. uF
  p ]&! 4       NK  	  up w  thtitjR# tkR$ tlR% tmR& tnR' toR( tpR) tqR* trR+ tsR, ttR- tuR. tvR/ twR0 txR1 tyR2 tzR3 t{R4 t|R5 t}R6 t~R7 t]ZR8 4       tR9 tR: tR; tR< tR= tR> tR? tR@ tRA t]]RB 4       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|# u up i )}    )Sum)Basic_aresame)clear_cache)DictTuple)Expr	unchanged)SubsFunctiondiffLambdaexpandnfloat
Derivative)EFloatzooRationalpiIoonan)Pow)Eq)S)symbolsDummySymbol)imre)logexp)sqrt)	Piecewise)sincosacos)expint)loggamma	polygamma)Matrix)sstr)OIndexed)	PoleError_mexpandarityBadSignatureErrorBadArgumentsError)_exp_is_pow)sympifySympifyError)MutableMatrixImmutableMatrix)	FiniteSet)solveset)	NDimArray)subsets
variations)XFAILraiseswarns_deprecated_sympy_both_exp_pow)twxyzzf g hclsc                     \        R RR7      p \        V 4      P                  RR7      \        \	        \        V 4      4      ,          \        \        V 4      4      ,           8X  g   Q h\        V 4      P                  RR7      \        V 4      8X  g   Q h\        \        V ,          4      P                  RR7      \        V 4      \        \        V 4      ,          ,           8X  g   Q h\        \        4      P                  RR7      \        \	        \        4      4      \        \        \        4      4      ,          \        \        \	        \        4      4      ,          \        \        \        4      4      ,          ,           8X  g   Q hR# )rF   TrealcomplexN)
r   fr   r   r    r!   r#   r'   r&   rH   rF   s    @/usr/lib/python3/dist-packages/sympy/core/tests/test_function.pytest_f_expand_complexrS   '   s    sAQ4;;t;$"QqT(
R!X(====q6===&#a&000qs8??4?(CFQs1vX,====q6===&#be*SAZ*?	#be*SAZ+           c                  d   \        \        \        4      ) 4      p V P                  \        \        4      \        ) 4      \        \        4      8X  g   Q h\        R\        \        4      ,          4      p V P                  \        \        4      \        ) 4      \        ^\        ,          4      8X  g   Q hR# )   N)r$   r"   rE   subsrF   es    rR   	test_bug1r[   1   sl    c!fWA66#a&1"a(((RAYA66#a&1"ac***rT   c                  4   \        R 4      p V ! \        4      pVP                  \        4      pVP                  \        4      pVP                  \        4      P                  \        4      pVP                  \        4      P                  \        4      pW! \        4      8X  g   Q hW ! \        4      8w  g   Q hV\        V ! \        4      \        4      8X  g   Q hV^ 8X  g   Q hV\        \        V ! \        4      \        4      \        4      8X  g   Q hV^ 8X  g   Q hR# nuN)r   rF   r   rG   )r^   rZ   edxedyedxdxedxdys         rR   test_general_functionrc   9   s    	$B
1A
&&)C
&&)CFF1INN1EFF1INN1E1::"Q%<<$r!ua.   !8O8DbeQ++++A::rT   c                      \        R 4      p V ! 4       pVP                  \        4      pVP                  \        4      P                  \        4      pW! 4       8X  g   Q hW ! 4       8w  g   Q hV^ 8X  g   Q hV^ 8X  g   Q hR# r]   )r   r   rF   )r^   rZ   r_   ra   s       rR   test_general_function_nullaryre   H   sh    	$B
A
&&)CFF1INN1E99"$;;!8O8A::rT   c                  Z   \        \        \        4      \        4      p V P                  \        \        4      \	        \        4      4      V 8w  g   Q hV P                  \        \        4      \	        \        4      4      \        \	        \        4      \        4      8X  g   Q hV P                  \        \        4      \	        \        4      ) 4      \        \	        \        4      ) \        4      8X  g   Q hV P                  \        \        4      \        \        \        4      \        4      8X  g   Q hR # N)r   grF   rX   rP   r   rG   rY   s    rR   test_derivative_subs_bugri   T   s    QqT1A66!A$!"""66!A$!AaD!!444466!A$1*adUA"666666!Q<:adA....rT   c                      \        \        \        4      \        4      p V P                  V \        4      \        8X  g   Q hR # rg   )r   rP   rF   rX   rG   )ds    rR   test_derivative_subs_self_bugrl   ]   s)    QqT1A66!Q<1rT   c                     \        \        \        4      ) \        4      \        \        \        4      \        4      ) 8X  g   Q h\        ^\        \        4      ,          \        4      ^\        \        \        4      \        4      ,          8X  g   Q h\        ^\        \        4      ,          \        4      ^\        \        \        4      \        4      ,          8w  g   Q h\        ^\        \        4      ,          \        ,          \        4      ^\        \        4      ,          ^\        ,          \        \        \        4      \        4      ,          ,           8X  g   Q h\        ^\        \        4      ,          \        ,          \        ,          \        4      P	                  4       ^\        ,          \        \        4      ,          ^\        ,          \        ,          \        \        \        4      \        4      ,          ,           8X  g   Q hR# )   N)r   rP   rF   rG   r    rT   rR   test_derivative_linearityrp   c   s   1q>d1Q4m^+++!A$?aQqT1o---!A$?aQqT1o---!A$q!!A$1T!A$]): ::::!A$q
A%%'1Q3qt8ac!eD1qM6I+IIIIrT   c                     \        \        \        4      \        4      \        \        \        4      \        4      8w  g   Q h\        \        \        4      \        4      P	                  4       \        \        \        4      \        4      8X  g   Q h\        \        \        \        4      \        4      \        4      \        \        \        4      \        \        4      8X  g   Q h\        \        \        4      \        ^ 4      \        \        4      8X  g   Q h\        \        \        4      \        \        3\        \        ) 34      \        \        4      8X  g   Q hR# r   N)r   r&   rF   r   doitrP   rG   ro   rT   rR   test_derivative_evaluatert   k   s    c!fa DQO333c!fa %%'4A?:::j1q)1-adAq1AAAAc!fa#s1v---c!fq!fq1"g.#a&888rT   c            	      B   \        \        \        \        \        4      \        \        \        4      \        \        \        \        \        4      \        \        \        4      8X  g   Q h\        \        \        \        \        4      \        \        \        4      \        \        \        \        \        4      \        \        \        4      u;8X  d0   \        \        \        \        \        4      \        ^34      8X  g   Q h Q h\        \        \        \        \        4      \        ^4      \        \        \        \        \        4      \        ^4      8X  g   Q h\        \        \        3 U u. uF*  p \        \        ) \        \        ,          ,           V 4      NK,  	  up R^\        ,          \        ) \        ^,          ,          .8X  g   Q h\        \        \        \        \        4      \        \        \        ^4      \        \        \        \        \        4      \        \        \        \        4      8X  g   Q h\        \        \        \        \        4      \        \        \        ^RR7      \        \        \        \        \        4      \        \        \        \        4      8X  g   Q h\        \        \        \        \        4      \        \        \        4      P                  \        4      \        \        \        \        \        4      \        \        \        \        4      8X  g   Q h\        \        \        \        \        \        4      \        4      \        4      P                  \        4      \        \        \        \        \        4      \        \        \        4      8X  g   Q h\        \        R 4       \        \        4      P                  \        \        34      P                  \        .8X  g   Q h\        R4      P                  R4      \        R4      8X  g   Q hR# u up i )	   Fevaluatec                  f    \        \        4      P                  \        \        34      P                  # rg   )r'   rF   r   rG   	variablesro   rT   rR   <lambda>#test_diff_symbols.<locals>.<lambda>   s    c!fkk1a&1;;rT   za*x+brF   aN)r   rP   rF   rG   rH   r   _eval_derivativerA   	TypeErrorr'   _wrt_variablesr7   )syms    rR   test_diff_symbolsr   t   sr   !Q
Aq!$
1Q1:q!Q(GGGG!Q
Aq!$
1Q1:q!Q(Gi:VWXY[\^_V`cdfgbhKiiiiii!Q
Aq!Z!Q
Aq%AAAA -.q!959CD!ac395"acA2ad79KKKK!Q
Aq!Q':a1aj!Q1+MMMM!Q
Aq!Q71Q1:q!Q*+ + +a1aj!Q*;;A>1Q1:q!Q*+ + +j1aQ/3DDQG1Q1:q!Q'( ( ( 9;<q6;;1v--!444 7  %555 6s   )0Pc                  H  a   ! R  R\         4      o S P                  \        ^ 4      8X  g   Q hS ! 4       P                  \        ^ 4      8X  g   Q h\        \        V 3R l4        ! R R\         4      o S P                  \        ^4      8X  g   Q hS ! \
        4      P                  \        ^4      8X  g   Q h\        \        V 3R l4        ! R R\         4      o S P                  \        P                  8X  g   Q hS ! \
        4      P                  \        P                  8X  g   Q hR# )c                   0   a  ] tR t^t o ]R 4       tRtV tR# )test_Function.<locals>.myfuncc                    R # rg   ro   rI   s   &rR   eval"test_Function.<locals>.myfunc.eval       rT   ro   N__name__
__module____qualname____firstlineno__classmethodr   __static_attributes____classdictcell____classdict__s   @rR   myfuncr           		 
	rT   r   c                  0   < S ! \         4      P                  # rg   )rF   nargsr   s   rR   r{   test_Function.<locals>.<lambda>   s    fQioorT   c                   0   a  ] tR t^t o ]R 4       tRtV tR# )r   c                    R # rg   ro   rJ   rF   s   &&rR   r   r      r   rT   ro   Nr   r   s   @rR   r   r      r   rT   c                  :   < S ! \         \        4      P                  # rg   )rF   rG   r   r   s   rR   r{   r      s    fQl00rT   c                   0   a  ] tR t^t o ]R 4       tRtV tR# )r   c                    R # rg   ro   r   s   &*rR   r   r      r   rT   ro   Nr   r   s   @rR   r   r      r   rT   N)r   r   r;   rA   r   rF   r   	Naturals0r   s   @rR   test_Functionr      s     
 <<9Q<'''8>>Yq\)))
9-. 
 <<9Q<'''!9??il***
901 
 <<1;;&&&!9??akk)))rT   c                     \        R 4      p V P                  \        P                  8X  g   Q hV ! ^4      P                  \        P                  8X  g   Q h\        R ^R7      ! ^^4      P                  \	        ^4      8X  g   Q h\
        P                  \	        ^4      8X  g   Q h\        ^4      P                  \	        ^4      8X  g   Q h\        P                  \	        ^^4      8X  g   Q h\        ^4      P                  \	        ^^4      8X  g   Q h\        R ^R7      P                  \	        ^4      8X  g   Q h\        R ^ R7      P                  \	        ^ 4      8X  g   Q h\        R RR7      P                  \	        ^ ^4      8X  g   Q h\        R RR7      P                  \        P                  8X  g   Q h\        \        R 4       R# )rP   r   Nc                      \        R RR7      # )rP   r   ro   r   ro   rT   rR   r{   test_nargs.<locals>.<lambda>   s    x26rT   r      )	r   r   r   r   r;   r&   r"   rA   
ValueErrorrP   s    rR   
test_nargsr      sN   A77akk!!!Q4::$$$Cq!!Q'--1===99	!$$$q6<<9Q<'''99	!Q'''q6<<9Q?***Cq!''9Q<777Cq!''9Q<777Cv&,,	!Q???Ct$**akk999
:67rT   c                      ! R  R\         4      p  ! R RV 4      p ! R RV4      p ! R RV4      p ! R R	V4      p ! R
 RV4      p ! R RV4      p ! R RV4      p ! R RV4      p ! R RV4      p	 ! R RV	4      p
V P                  \        ^4      8X  g   Q hVP                  \        ^4      8X  g   Q hVP                  \        ^4      8X  g   Q hVP                  \        ^^4      8X  g   Q hVP                  \        ^^4      8X  g   Q hVP                  \        ^^4      8X  g   Q hVP                  \        P                  8X  g   Q hVP                  \        P                  8X  g   Q hVP                  \        P                  8X  g   Q hV	P                  \        ^4      8X  g   Q hV
P                  \        ^4      8X  g   Q hR# )c                       ] tR t^t^tRtR# )"test_nargs_inheritance.<locals>.f1ro   Nr   r   r   r   r   r   ro   rT   rR   f1r          rT   r   c                       ] tR t^tRtR# )"test_nargs_inheritance.<locals>.f2ro   Nr   r   r   r   r   ro   rT   rR   f2r          rT   r   c                       ] tR t^tRtR# )"test_nargs_inheritance.<locals>.f3ro   Nr   ro   rT   rR   f3r      r   rT   r   c                       ] tR t^tRtRtR# )"test_nargs_inheritance.<locals>.f4ro   Nr      r   ro   rT   rR   f4r      s    rT   r   c                       ] tR t^tRtR# )"test_nargs_inheritance.<locals>.f5ro   Nr   ro   rT   rR   f5r      r   rT   r   c                       ] tR t^tRtR# )"test_nargs_inheritance.<locals>.f6ro   Nr   ro   rT   rR   f6r      r   rT   r   c                       ] tR t^tRtRtR# )"test_nargs_inheritance.<locals>.f7Nro   r   ro   rT   rR   f7r      s    rT   r   c                       ] tR t^tRtR# )"test_nargs_inheritance.<locals>.f8ro   Nr   ro   rT   rR   f8r      r   rT   r   c                       ] tR t^tRtR# )"test_nargs_inheritance.<locals>.f9ro   Nr   ro   rT   rR   f9r      r   rT   r   c                       ] tR t^t^tRtR# )#test_nargs_inheritance.<locals>.f10ro   Nr   ro   rT   rR   f10r      r   rT   r   c                       ] tR t^tRtR# )#test_nargs_inheritance.<locals>.f11ro   Nr   ro   rT   rR   f11r      r   rT   r   N)r   r   r;   r   r   )r   r   r   r   r   r   r   r   r   r   r   s              rR   test_nargs_inheritancer      s~   X R R R R R R R R b c 88y|###88y|###88y|###88yA&&&88yA&&&88yA&&&88q{{"""88q{{"""88q{{"""99	!$$$99	!$$$rT   c                      R  p \        V 4      ^8X  g   Q hRR lp \        V 4      R8X  g   Q h\        R 4      e   Q h\        \        4      R8X  g   Q hR# )c                     ^# r   ro   )rF   rG   s   &&rR   r{   test_arity.<locals>.<lambda>   s    QrT   Nc                     R # rg   ro   rF   rG   rH   s   &&&rR   rP   test_arity.<locals>.f   s    rT   c                      V # rg   ro   rQ   s   *rR   r{   r      s    ArT   rg   r   rv   r   )r3   r"   r   s    rR   
test_arityr      sQ    A8q==8v&&&:rT   c                    a \        \        \        ^,          4      p V ! ^4      ^8X  g   Q hV ! \        4      \        ^,          8X  g   Q hV ! \        4      \        ^,          8X  g   Q h\        R
^*4      ! 4       ^*8X  g   Q h\        \         R
^*4      '       g   Q h\        R
^*4      \        R
^+4      8w  g   Q h\        R
\	        \        4      4      ! 4       \	        \        4      8X  g   Q h\        R
^*4      P
                  \        ^ 4      8X  g   Q h\        \         \        3\        ^,          4      '       g   Q h\        \        \        ^,          4      \        \        3\        ^,          4      8X  g   Q h\        \        \        ^,          4      \        \        \        ^,          ^,           4      8w  g   Q h\        \        \        3\        \        ,          4      \        \        \        3\        \        ,          4      8w  g   Q h\        \        \        3\        \        ,          4      \        \        \        3\        \        ,          4      8w  g   Q h\        \        \        3\        \        ,          4      ! \        \        4      \        \        ,          8X  g   Q h\        \        \        3\        \        ,          4      ! ^^4      ^8X  g   Q h\        \        \        3\        \        ,          4      ! \        ^4      \        ^,          8X  g   Q h\        \        \        3\        \        ,          4      ! ^\        4      ^\        ,          8X  g   Q h\        \        \	        \        4      4      ! \        4      \	        \        4      8X  g   Q h\        \        \        ^,          4      ! V ! \        4      4      \        ^,          8X  g   Q hV ! V ! \        4      4      \        ^,          8X  g   Q hR R 4       w  r\        W3W,           4      ! \        \        4      \        \        ,           8X  g   Q h\        \        \        3\        \        ,           4      P
                  \        ^4      8X  g   Q h\        \        \        \        3p\        V\        \        \        ,           \        ,           ,          4      ! V!  \        \        \        ,           \        ,           ,          8X  g   Q h\        \        ^\        ,          4      \        \        ^\        ,          4      ,           pV^\        \        ^\        ,          4      ,          8w  g   Q hVP                  4       ^\        \        ^\        ,          4      P                  4       ,          8X  g   Q h\        \        ^\        ,          4      \        \        \        4      39  g   Q h\        \        R 4       \        \        ^4      ! ^4      \        P                  J g   Q h\        \        R 4       \        \        R 4       \        \        R 4       \        \        R 4       \        4       ;_uu_ 4        \        \        \        .\        \        ,           4      \        \        \        3\        \        ,           4      8X  g   Q h RRR4       \        \        \        33\        \        ,           4      oS! R4      ^8X  g   Q h\        \        \        3\        3\        \        ,           \        ,           4      oS! R^4      ^8X  g   Q h\        \        \        3\        33\        \        ,           \        ,           4      oS! R4      ^8X  g   Q h\        \        V3R l4       \        \        3\        \        34      oS! ^4      R8X  g   Q hS! R4      R8X  g   Q h\        \        33\        \        34      o\        \        V3R	 l4       S! R4      R8X  g   Q h\!        \        \"        4      '       g   Q h\!        \        \"        4      '       g   Q h\%        \        \        ^\        ,          4      4       \%        \        \        \        4      4       R#   + '       g   i     EL; i)r   c              3   :   "   T F  p\        R V4      x  K  	  R# 5i)rF   Nr/   ).0is   & rR   	<genexpr>test_Lambda.<locals>.<genexpr>   s     .v!gc1oovs   c                  "    \        ^\        4      # r   r   rF   ro   rT   rR   r{   test_Lambda.<locals>.<lambda>  s
    fQlrT   c                  D    \        \        \        3\        ^,           4      # r   r   ro   rT   rR   r{   r   
  s    faVQU&;rT   c                  B    \        \        \        3\        3\        4      # rg   r   rF   rG   ro   rT   rR   r{   r         fq!fa[!&<rT   c                  B    \        \        \        3\        3\        4      # rg   r   rG   rF   ro   rT   rR   r{   r     r   rT   c                  2    \        \        ^3^3\        4      # r   r   ro   rT   rR   r{   r     s    fq!fa[!&<rT   Nc                     < S ! ^^^4      # r   ro   flams   rR   r{   r     s    d1amrT   c                     < S ! ^4      # r   ro   r   s   rR   r{   r     s	    d1grT   ro   r   r   )r   r   r   r   r   )r   r   )r   rF   rG   r
   rP   r   r;   rH   rD   as_dummyrA   r4   r   OnerB   r5   
issubclassr   hash)rZ   x1x2peqr   s        @rR   test_Lambdar      s   q!Q$AQ42::Q41a4<<Q41a4<<"b>r!!!VR$$$$"b>VB^+++"ad1%%%"b>9Q<///VaT1a4((((!QT?faT1a40000!QT?fQ1q11111a&!Q$61a&!Q$#77771a&!Q$61a&!Q$#77771a&!Q$1%A---1a&!Q$1%---1a&!Q$1%A---1a&!Q$1%A---!QqT?11%%%!QT?1Q4 AqD(((QqT7ad??.v.FB2(BG$Q*a!e3331a&!a% &&)A,666	1a
A!QA	]#Q'1A	?:::	1Q3&AaC.	(B6!QqS>!!!!;;=AfQ!n5577777!QqS>6!Q<!1111
23!Q<?aee###
;<
<=
<=
<=		!	!q!fac"faVQqS&9999 
" Aq6)QU#D<1Aq61+q1uqy)D?aQFA;.!a%!),D!!!
34A4!Q D8v:%%%QD7QF#D
o.: '3333'3333 	1Q311 
"	!	!s   Aa99b
	c                  H   \        \        \        4      \        \        \        4      u;J d   \        P                  J g   Q h Q h\        \        ^\        ,          4      \        P                  Jg   Q h\        \        \        3\        4      \        P                  Jg   Q hR# r   N)r   rF   rG   r   IdentityFunctionro   rT   rR   test_IdentityFunctionr  *  sj    !Q<6!Q<=1+=+======!QqS>!3!33331a&!A$6$6666rT   c                     \        \        ^\        ,          4      P                  \        4       8X  g   Q h\        \        \        \        ,          4      P                  \        08X  g   Q h\        R^*4      P                  \        4       8X  g   Q h\        R\        \        ,          4      P                  \        \        08X  g   Q hR# )r   Nro   )r   rF   free_symbolssetrG   ro   rT   rR   test_Lambda_symbolsr  0  s    !QqS>&&#%///!QqS>&&1#---"b>&&#%///"ac?''Aa5000rT   c                  D    \         P                  \        4       8X  g   Q hR # rg   )rP   r  r  ro   rT   rR   test_functionclas_symbolsr  7  s    >>SU"""rT   c                  l    \        \        R  4       \        \        R 4       \        \        R 4       R# )c                  V    \        \        ^\        ,          4      ! \        \        4      # r   r   ro   rT   rR   r{   'test_Lambda_arguments.<locals>.<lambda><  s    fQ!nQ2rT   c                  `    \        \        \        3\        \        ,           4      ! \        4      # rg   r   ro   rT   rR   r{   r  =  s    faVQU3A6rT   c                  .    \        R^*4      ! \        4      # )*   ro   r   ro   rT   rR   r{   r  >  s    fRnQ/rT   NrA   r   ro   rT   rR   test_Lambda_argumentsr  ;  s#    
923
967
9/0rT   c                     \        \        \        3^\        ,          4      \        \        \        3^\        ,          4      8X  g   Q h\        \        ^\        ,          4      \        \        \        3^\        ,          4      8w  g   Q h\        \        ^\        ,          4      ^\        ,          8w  g   Q h\        \        ^\        ,          4      \        \        ^\        ,          4      8w  g   Q hR# r   r   ro   rT   rR   test_Lambda_equalityr  A  s    1a&!A#&!Q1"5555!QqS>VQFAaC0000!QqS>QqS    !QqS>VAqs^+++rT   c                  #   \        ^RR4      \        P                  J g   Q h\        \        \        \
        4      \        \        \        ^4      8w  g   Q h\        \        \        ^4      P                  \        \        4      P                  \        4      '       g   Q h\        \        \        \        4      \        ^34      \        \        4      P                  4       \        \        4      P                  \        \        4      8X  g   Q h\        \        \        ^ 4      P                  \        4      '       g   Q h\        \        \        ^ 4      P                  '       d   Q h\        \        \        \        ,           \        ^4      \        ^4      \        \        \        ,           \        \        3R4      8X  g   Q h\        \        \        3R	4      \        \        \        ^ 4      8X  g   Q h\        \        \        ^ 4      \        \        \        ^ 4      8X  g   Q h\        \        \        ^ 4      P                  \        ^4      \        \        \        ^ 4      8X  g   Q h\        \        \        ^ 4      P                  \        ^4      \        ^\        ^ 4      8X  g   Q h\        \        \        4      \        ^ 4      P                  4       \        ^ 4      8X  g   Q h\        \        \        ^,          4      \        ^,          ^ 4      P                  4       \        ^ 4      8X  g   Q h\        \        \        \        \
        4      \        \        \
        3R
4      \        \        \        \        \
        4      \        \        \
        3R4      8w  g   Q h\        \        \        ^4      P                  \        \        4      P                  4       ^8X  g   Q h\        \        \        \        4      \        \        \
        3R
4      \        \        \        \        4      \
        ,           \        \        \
        3R4      8w  g   Q h\        \        \        \        4      \        \        3R4      P                  4       \        ^ ^4      8X  g   Q h\        \        \        \        \        4      \        ^ 4      \        ^4      P                  4       \        ^ ^4      8X  g   Q h\        \        R 4       \        \        R 4       \        \        \        \        \        4      \        \        3R4      P                   4      ^8X  g   Q h\        \        \        \        4      \        \        3R4      P"                  \%        ^ ^4      8X  g   Q h\        \        \        4      \        ^ 4      \        \        \        4      \        ^ 4      8X  g   Q h\        \        \        \        4      \        \        3R4      \        \        \        \        4      \        \        3R4      8X  g   Q h\        \        \        4      \        ,          \        \        3R4      \        \        \        4      \        ,          \        \        3R4      8X  g   Q h\        \        \        4      \        ,          \        \        3R4      \        \        \        4      \        ,          \        \        3R4      8X  g   Q h\        \        \        4      \        ^ 4      P                  \        ^4      P                  4       \        ^ 4      8X  g   Q h\        \        \        4      \        \        4      P                  \        ^ 4      \        \        \        4      \        ^ 4      8X  g   Q h\        \        \        \        4      ,          \        \        4      P                  \        ^4      \        ^\        \        4      ,          \        ^4      8X  g   Q h^\        \        \        4      \        ^ 4      ,          P                  \        \        \        4      \        ^ 4      \        4      ^\        ,          8X  g   Q h\        \        \        4      \        ^ 4      P                  \'        4       8X  g   Q h\        \        \        \        4      \        \
        4      P                  \        \
        08X  g   Q h\        \        \        4      P                  \        4      \        ^ 4      P                  4       '       g7   Q \        \        \        4      P                  \        4      \        ^ 4      4       h\        ^\        \        4      P                  \        4      ,           \        ^ 4      P                  4       '       g>   Q ^\        \        \        4      P                  \        4      \        ^ 4      ,           4       h\        \        \        \        \        4      P                  \        4      ,          \        \        3R4      P                  4       ^\        \        \        \        ^4      \        4      \        ^ 4      ,          8X  g   Q h\        \        ^,          \        \        4      ,          \        ^ 4      P                  \        4      ^\        ,          \        ^ 4      ,          8X  g   Q h\        \        ^,          \        \        4      ,          \        \        4      p V P                  \        4      V P                  4       P                  \        4      u;8X  d\   \        ^,          \        \        \        4      \        4      ,          ^\        ,          \        \        4      ,          ,           8X  g   Q h Q h\        \        \        4      \        ^ 4      \        \        \        4      \        ^ 4      ,           ^\        \        \        4      \        ^ 4      ,          8X  g   Q h\        \
        \        \        4      ,          \        ^4      p\        \
        \        \        4      ,          \        ^4      pW,           ^V,          8X  g   Q hVP)                  4       VP)                  4       8X  g   Q h\        \
        \        \        ^,           4      ,          \        ^4      W39  g   Q h\        \        \        4      \        4      P                  \        \+        \        4      4      \        \        \+        \        4      4      \+        \        4      4      8X  g   Q h\        \        \        4      \        4      P                  \        \        \        ,           4      \        \        \        \        4      \        4      \        \        \        ,           4      8X  g   Q h\        \        \        4      \-        \        4      ,          \
        ,           \        \        3^ \.        ^,          34      P1                  ^4      \        \        \        4      \-        \        4      ,          \
        ,           \        \        3^ \.        ^,          34      P3                  ^4      u;8X  d<   \
        \5        R4      P1                  ^4      \        ^ 4      ,          ,           8X  g   Q h Q h\        \        4      P                  \        4      P                  \        ^ 4      P                  \        \        4      \        \        4      P                  \        4      P                  \        ^ 4      8X  g   Q h\        \        \        4      P                  \        4      P                  \        ^ 4      ,          P                  \        \        4      \        \        \        4      P                  \        4      P                  \        ^ 4      ,          8X  g   Q h\        \        \+        \        4      ^,          \+        \        4      \        4      \+        \        4      \7        \        4      4      P                  4       ^\7        \        4      ,          8X  g   Q h\        \        \+        \        4      ^,          \+        \        4      \        4      \+        \        4      \7        \        4      4      P                  RR7      ^\        \7        \        4      \        4      ,          8X  g   Q h\        \        \        \+        \        4      4      \        4      P                  4       \        \        \        \+        \        4      4      \+        \        4      4      \        \+        \        4      \        4      ,          \        \        \        \        \+        \        4      4      \        4      \        \        4      ,           8X  g   Q hR# )r   c                  T    \        \        \        \        4      \        \        3R4      # r   r   r   r   r   rP   rF   rG   ro   rT   rR   r{   test_Subs.<locals>.<lambda>i  s    tAaGaVY?rT   c                  ^    \        \        \        \        4      \        \        \        3R4      # r  r  ro   rT   rR   r{   r  j  s    tAaGaAY	BrT   z1/2FdeepNro   )r   r   r   )r   r   r   r  )r   r   r   r   )r   r   r   )r   r   )r   r   r   rF   rG   rH   rX   hasr   rP   rs   r   r  rA   r   lenrz   pointr   r  __hash__rh   r'   r   nevalfr   r#   )rZ   e1e2s      rR   	test_Subsr%  Q  s
   2r?aee###1a=DAqM)))1a=a#''****
1Q4!Q(!Q/446!A$))Aq/III1a=QAq!})))))QUAq!1a(DQA,GGGGA4$q!Q-///1a=DAqM)))1a=a#tAq!}4441a=a#tAq!}444!a  "ad***!Q$Aq!&&(AaD000!Q
Q1Iy1Qq!QZ!QI./ / /1a=a#((*a///!Q!QI.Qq!Wq[1a)Y/0 0 0!Q!Q(--/1Q7:::Qq!Wa#Q*//1Qq!W<<<
:?@
:BCtAaGaVV,6671<<<!Q!Q(..%1+===!atAaD!Q////!Q!Q(D1a1a&&,IIII!QA'4!QA+GGGG!QA'4!QA+GGGG!a  A&++-1555!a  A&$qtQ*::::!A$1""1a(D1Q4A,>>>>QqT1a  &&tAaD!Q'7;qsBBB!a((CE111!QA++1v555!		!a#((**DD11q!,DD*AaDIIaL !Q',,..LD11q!4L0LL.!Aq',,q/!Aq662779	$z!Aq'1%q!
,,- - -1QqT	1a %%a(AaC!H444QT!A$Y1A66!9a(OAqDAaD!1D,Dqs1Q4x,OOOOOO!ad1Q4A..!D1q!4D2DDDD	a!fa	B	a!fa	B7ad??;;=BKKM)))!AE(
Aq!2333adA##Aqt,
1QqT7AaD0IIIIadA##Aq1u-j1q6I	1q52   !SVa!Q!RT355a8QqT#a&[1_q!fq"Q$i066q9&	HUOa 1%%& & & & & Q499Q<Q"''1-111B1B1a1HHHHadiil1%%++Aq1Qqtyy|7H7HA7N5NNNN
1Q47AaD!,adCF 

$&Ac!fH  
1Q47AaD!,adCF 

$E$
a
3q61 556 6 6a1Q4j!$))+z	!QqT
AaD0$QqT1-0.04Z	!QqT
A6110   rT   c                      \        \        \        \        \        4      4      \        \        \        4      4      P	                  4       p W P	                  4       8X  g   Q hR # rg   )r   rP   rF   rh   rs   )dones    rR   test_doitdoitr(    s9    a1Q4j!QqT*//1D99;rT   c                      \        \        \        4      \        ^,          \        4      P                  4       \        \	        \        4      4      8X  g   Q hR# r   )r   rP   rF   rs   r$   ro   rT   rR   
test_Subs2r*    s4     !adA##%47333rT   c                     \        \        \        ,           4      \        \        ,           8X  g   Q h\        \        \        ,           R R7      \        \	        \        4      ,          \        \	        \        4      ,          ,           \        \        4      ,           \        \        4      ,           8X  g   Q h\        \        \        ,           ^,          ^R7      \        ^,          \        ^,          ,           8X  g   Q hR# )TrN   )modulusN)r   rF   rG   r   r    r!   ro   rT   rR   test_expand_functionr-    s    !a%=AE!!!!a%&!BqE'AbeG*;be*Cbe*KKKK1q52+r*aeaem;;;rT   c                  "   \        \        4      P                  R J g   Q h\        \        4      P                  R J g   Q h\        \	        R4      4      P                  RJ g   Q h\        \	        R4      4      P                  RJ g   Q h\        \
        4      P                  RJ g   Q h\        \
        4      P                  RJ g   Q h\        \        ^^4      4      P                  RJ g   Q h\        \        ^^4      4      P                  RJ g   Q hR# )Fz0.1TN)r&   rF   is_comparabler'   r   r   r   ro   rT   rR   test_function_comparabler0    s    q65(((q65(((uU|**d222uU|**d222q64'''q64'''x1~,,444x1~,,444rT   c                      \        \        4      P                  R J g   Q h\        \        ) 4      P                  R J g   Q h\        \        4      P                  R J g   Q h\        \        4      P                  R J g   Q hR# )FN)r&   r   r/  r   r   ro   rT   rR   #test_function_comparable_infinitiesr2    sd    r7  E)))s8!!U***s8!!U***s8!!U***rT   c                  	   \        ^\        ,          4      P                  \        4      ^\        \	        \        \        4      \        4      \        ^\        ,          4      ,          8X  g   Q h\        \        4      ^,          P                  \        4      ^\        \        4      ^,          ,          \        \        4      P                  \        4      ,          8X  g   Q h\        ^\        ,          4      ^,          P                  \        4      ^\        ^\        ,          4      ^,          ,          \        \	        \        \        4      \        4      \        ^\        ,          4      ,          8X  g   Q h\        ^\        ,           4      P                  \        4      \        \	        \        \        4      \        4      \        \        ^,           4      8X  g   Q h\        ^^\        ,          ,           4      P                  \        4      ^\        \	        \        \        4      \        4      \        ^\        ,          ^,           4      ,          8X  g   Q h\        ^\        \        4      ,          4      P                  \        4      ^\        \        4      ,          \        \	        \        \        4      \        4      \        ^\        \        4      ,          4      ,          8X  g   Q h\        \        \        \        ,           4      P                  \        4      \        \	        \        \        \        \        ,           4      \        4      \        \        4      \        \	        \        \        \        4      \        4      \        \        \        ,           4      ,           8X  g   Q h\        \        \        ^,          4      P                  \        4      ^\        ,          \        \	        \        \        \        4      \        4      \        \        ^,          4      ,          \        \	        \        \        \        ^,          4      \        4      \        \        4      ,           8X  g   Q h\        \        \        \        4      4      P                  \        \        4      4      \	        \        \        \        \        4      4      \        \        4      4      8X  g   Q hR# r   )
rP   rF   r   r   r   r&   r'   rH   rG   rh   ro   rT   rR   test_deriv1r4    s    QqS6;;q>QtJqtQ$7AaC@@@@@aD!G>>!!A$'	!A$))A, 6666acFAIA!AacFAI+d1Q4Q!/% #% % % % QU8==tJqtQ$7AEBBBBQ1W:??141Q4Q!a$) ") ) ) )Qs1vX;A!CF(41Q4Q#a&,* #* * * * QA;AZ!QUQ'A.Z!Q#QA.	/0 0 0 Q1:??1	!DAaGQ'AqD11Z!QT
A&1-	./ / / Q!:??1Q4 JqAaDz1Q4$@@@@rT   c                     \         ^,          P                  \         4      ^\         ^,          ,          8X  g   Q h\         ^,          P                  \         RR7      ^\         ^,          ,          8w  g   Q h\         ^,          P                  \         RR7      \        \         ^,          \         4      8X  g   Q h\        \         ^,          \         4      ^\         ^,          ,          8X  g   Q h\        \         ^,          \         RR7      ^\         ^,          ,          8w  g   Q h\        \         ^,          \         RR7      \        \         ^,          \         4      8X  g   Q hR# )rv   Frw   N)rF   r   r   ro   rT   rR   test_deriv2r6    s    qD;;q>Qq!tV###qD;;q5;)Qq!tV333qD;;q5;)Z1a-@@@@1a=AadF"""1a%(AadF2221a%(Jq!tQ,????rT   c                  Z   \        \        4      P                  \        4      \        \        \        4      \        4      8X  g   Q h\        \        \        4      P                  \        \        4      \        \        \        4      P                  \        \        4      ,
          ^ 8X  g   Q h\        \        \        \        4      \        \        4      P
                  R,          \        ^3\        ^338X  g   Q h\        \        \        \        4      \        \        4      P
                  R,          \        ^3\        ^338X  g   Q h\        \        \        \        4      \        \        4      \        \        \        \        4      \        \        4      ,
          P                  4       ^ 8X  g   Q hR# )r   :r   NNN)rP   rF   r   r   rG   argsrs   ro   rT   rR   test_func_derivr9    s    Q499Q<:adA....Q7<<1!QQ 22a777a1gq!$))"-1a&1a&1AAAAa1gq!$))"-1a&1a&1AAAAqAw1%
1Q7Aq(AAGGIQNNNrT   c                      \        ^ RR7      p V ^ 8w  g   Q hV P                  \         J g   Q hV P                  R8X  g   Q hR# )r   Frw   Nr  )r&   funcr8  r}   s    rR   test_suppressed_evaluationr=    s9    AA6M666S==66T>>rT   c                  >   R  p V ! \        ^4      P                  ^4      \        R4      R4      '       g   Q hV ! \        ^4      P                  ^4      \        R^4      R4      '       g   Q hV ! \        ^\        ,           4      P                  ^4      \        R4      \        R4      \        ,          ,           R4      '       g   Q hV ! \	        ^\        ,           4      P                  ^4      \        R4      \        R4      \        ,          ,           R4      '       g   Q hV ! \	        RR	\        ,          ,           4      P                  ^4      \        R
4      \        R4      \        ,          ,           R4      '       g   Q hV ! \        \        \        ^4      \        ,          ,           4      P                  ^4      \        R4      \        R4      \        ,          ,           R4      '       g   Q hV ! \        ^d4      P                  ^4      \        R4      R4      '       g   Q hR# )c                 *    \        W,
          4      V8  # rg   )abs)r}   bepss   &&&rR   r   test_function_evalf.<locals>.eq  s    15zCrT   z0.841470984807897gvIh%<=z0.9092974268256816953960199gQ@-(;z1.29845758141598z0.634963914784736z1.46869393991588z2.28735528717884239g      ?z0.0429042815937374z0.605011292285002z1.23699044022052z0.422985442737893z0.86231887228768Ng      )	r&   r"  r   r   r#   r"   r   r$   r'   r   s    rR   test_function_evalfrE    s    c!fll2&9 :EBBBBAR% =rBEK K K Kc!a%j
%&/B)CA)EEuN N N Nc!a%jr"E%#$9:1<%=>CE E E Ec$Q,%%b)5, %&9 :1 <,=>CE E E Ec"tAwqy.!''
%&/B)CA)EEuN N N Nc#hnnR %(:";UCCCCrT   c                  B     ! R  R\         4      p V ! ^ 4      R8X  g   Q hR# )c                   0   a  ] tR tRt o ]R 4       tRtV tR# )'test_extensibility_eval.<locals>.MyFunci  c                    R# )r   r   r   r   ro   )rJ   r8  s   &*rR   r   ,test_extensibility_eval.<locals>.MyFunc.eval  s    rT   ro   Nr   r   s   @rR   MyFuncrH    s     		 
	rT   rL  NrJ  r   )rL  s    rR   test_extensibility_evalrM    s"      !9	!!!rT   c                     \        R RR7      p \        V 4      P                  RJ g   Q h\        V 4      P                  RJ g   Q h\	        V 4      P                  RJ g   Q h\        V 4      P                  RJ g   Q h\        V 4      P                  RJ g   Q h\        V 4      P                  RJ g   Q h\	        V 4      P                  RJ g   Q h\        V 4      P                  RJ g   Q hR# )rF   FcommutativeNr   rP   is_commutativer&   r#   r"   
is_complexrQ   s    rR   test_function_non_commutativerT    s    s&AQ4%'''q6  E)))q6  E)))q6  E)))Q4??e###q6%%%q6%%%q6%%%rT   c                     \        R RR7      p \        R RRR7      p\        V 4      P                  RJ g   Q h\        V 4      P                  RJ g   Q h\	        V 4      P                  RJ g   Q h\        V 4      P                  RJ g   Q h\        V 4      P                  e   Q h\        V 4      P                  RJ g   Q h\	        V 4      P                  RJ g   Q h\        V 4      P                  e   Q h\        V4      P                  RJ g   Q hR# )rF   TrN   F)rO   zeroNrQ  )rF   xzfs     rR   test_function_complexrX    s    sD!A
d
/CQ4$&&&q6  D(((q6  D(((q6  D(((Q4??"""q6$$$q6$$$q6$$$s8$&&&rT   c                  d   \        R 4      p \        \        4      P                  \        ^R4      \        \	        \        ^,          4      ,           8X  g   Q h\        \        ^,           4      P                  \        ^R4      \        \        ^4      ,          \        ^4      ,           \	        \        ^,          4      ,           8X  g   Q h\        \        ^\        ,
          ,          4      P                  \        ^R4      \        \        ,          \	        \        ^,          4      ,           8X  g   Q h\        ^\        ^,          ,
          4      P                  \        ^R4      \        ^4      \        \        ^,          4      ,          \	        \        ^,          4      ,           8X  g   Q h\        V \        ^,           4      P                  \        ^R4      \        V ^4      \        V ^,           ^4      \        ,          ,           \	        \        ^,          4      ,           8X  g   Q h\        \        R 4       \        ^\        ,
          4      P                  \        ^R4      \        ^4      \        \        4      ,          \        ^4      \        \        ^4      ^,          ,          ,          ^,          ,           \	        \        ^,          4      ,           8X  g   Q h\        ^\        ,           4      P                  \        ^R4      \        ^4      \        \        ) 4      ,          \        ^4      \        ) \        ^4      ^,          ,          ,          ^,          ,           \	        \        ^,          4      ,           8X  g   Q h\        ^\        ,          4      P                  \        ^ R4      \        \        4      ^,          \        \        4      \        ,          ,
          ^\        ,          ,
          \	        ^\        4      ,           8X  g   Q h\        \        ^\        ,          4      4      P                  \        ^\         R7      \        \         ) 4      8X  g   Q h\#        \%        ^^4      \        ) 4      P                  \        ^R4      ^^\        ,          ,
          \        ^,          ^,          ,
          \        ^,          ^,          ,
          \        ^,          ^T,          ,
          ^\&        ,          \        \        4      ,          \        \        4      ,          ,
          \	        \        ^,          4      ,           8X  g   Q h\        \        \        4      4      P                  \        ^R4      \        \        4      \        \%        ^^4      ,          ^,          ,
          \        \%        ^^4      ,          ^x,          ,           \	        \        ^,          4      ,           8X  g   Q h\)        \        \         4      P+                  \         ^R7      pVP-                  \         4       Uu0 uF  q"P.                  kK  	  up0 Rm8X  g   Q h\        R4      p\)        V\         4      P+                  \         ^R7      pVP-                  \         4       Uu0 uF  q"P.                  kK  	  up0 Rm8X  g   Q hR# u upi u upi )r!  Nc                  X    \        ^\        ,          4      P                  \        ^R4      # r   N)r&   rF   _eval_nseriesro   rT   rR   r{   -test_function__eval_nseries.<locals>.<lambda>2  s    c!A#h44Q4@rT   )r!  logx)r!  xi>   rF   rG   r_  >   rG   r_  xi0)r   r&   rF   r\  r.   r'   r   r(   r$   r+   rA   r1   r   r*   r"   nseriesrG   r)   r   r   rP   seriesatomsname)r!  s1r   r_  s2s        rR   test_function__eval_nseriesrg  )  sP   sAq61d+q1QT7{:::q1u:##Aq$/1SV8c!f3DqAw3NNNNr1q5z?((At41qAwFFFAqD>''1d3tAwtAqDz7IAaQRdG7SSSSQA,,Q48!Q)AE1-a//!AqD'9: : :
9@AA;$$Q40DGDGOd1gaRSTURVWXRXkFYZ\F\4\_`abdeae_f4ffffA;$$Q40DGD!H4DtAwQRPRVWXYVZ[\V\~G]^`G`4`cdefhieicj4jjjjAaC=&&q!T2Aq3q6!8ac!AaG+, , ,C!H%%a11%51"EEE (1a.1"%33Aq$?	AaC!Q$q&1a47"QT"W,qs48|DG/CCa1gMN N NtAw<%%aD1Q!Xa^#A%%8Aq>(9#(==!Q$GH H H 
1QqA	BHHV,-,qFF,-1AAAA	B	
2qa	 BHHV,-,qFF,-1CCCC . .s   Z(Z-c                  
   \        R RR7      p \        ^V ,          \        ,          V ^^34      p\        V\        4      pVP	                  4       ^8X  g   Q hVP	                  RR7      \        ^V ,          V ^^34      8X  g   Q hR# )r!  TintegerFr  N)r   r   rF   r   rs   )r!  rP   rk   s      rR   	test_doitrk  F  sp    sD!AAEAI1ay!A1aA668r>>66u6QqS1a)!4444rT   c                     ^ RI Hp  \        \        R4      4      \        8X  g   Q h\        \        \        \        R,           4      4      4      \        8X  g   Q h\        \        \        \        R,           4      4      4      \        8X  g   Q h\        \        ^4      4      \        8X  g   Q h\        V ! RR4      4      \        8X  g   Q h\        \        \        ^^4      4      4      \        8X  g   Q hR# )r   r+   g      @      ?g       @N)	'sympy.functions.special.gamma_functionsr+   typer&   r   r!   r   r    r   rm  s    rR   test_evalf_defaultrq  N  s    AC>U"""3q3w< !U***3q3w< !U***A<3	#s#$---HQN#$+++rT   c                  ^  aa \         \        \        ^4      \        P                  .p R p\         ^
,          \        ^,          ,          o\	        V 4       FT  p\        V\        V4      4       F8  oV! S4      '       d   SP                  ! S!   K#  \        \        VV3R l4       K:  	  KV  	  R# )r   c                N  a  S '       g   R# S ^ ,          P                   RJ d   R# \        \        S 4      4       Uu. uF   pS V,          P                   '       g   K  VNK"  	  pp\        \        S 4      4       Uu. uF   pS V,          P                   '       d   K  VNK"  	  pp\        ;QJ d    V 3R lV 4       F  '       d   K   RM	  RM! V 3R lV 4       4      ;'       d;    \        ;QJ d    V 3R lV 4       F  '       d   K   R# 	  R# ! V 3R lV 4       4      # u upi u upi )z-Return True if the input args for diff are okFc              3      <"   T FY  q^,           \        S4      8  g   K  SV^,           ,          P                  ;'       g    SV^,           ,          P                  x  K[  	  R# 5ir[  )r  	is_Symbol
is_Integerr   r   r}   s   & rR   r   .test_issue_5399.<locals>.ok.<locals>.<genexpr>e  sM      -USV^ >Aa!eH&&==!AE(*=*==s   A$ A$#A$Tc              3      <"   T F7  q^,           \        S4      8  g   K  SV^,           ,          P                  x  K9  	  R# 5ir[  )r  ru  rw  s   & rR   r   rx  g  s4      -USV^ #!a%""s
   A"A)ru  ranger  all)r}   r   s_atn_ats   f   rR   oktest_issue_5399.<locals>.ok[  s    Q4>>U" Q=;=aAaDNN=; Q=?=a!=?  -- -- - - -C --CC	.	. -- -	.	 <?s   DD9D"D"c                  $   < S P                   ! S!  # rg   )r   )r   vs   rR   r{   !test_issue_5399.<locals>.<lambda>o  s    277A;rT   N)
rF   rG   r   Halfr>   r?   r  r   rA   r   )r8  r~  r}   r   r  s      @@rR   test_issue_5399r  X  ss    q!A$D. 
Bq!tBT]As1v&A!uuz#67	 ' rT   c                      \         P                  ! 4       p \        \        \	        \         4      \         4      P                  V 4      \        V 4      ,
          4      R 8  g   Q hR# )gV瞯<N)rF   _randomr@  r   r&   doit_numericallyr'   )z0s    rR   test_derivative_numericallyr  r  s?    	
Bz#a&!$55b9CGCDuLLLrT   c                     aa ^ RI Ho  ! V3R lR\        4      oS! \        4      p V P	                  \        4      \        V \        4      8X  g   Q h\        \        V3R l4       R# )r   )ArgumentIndexErrorc                   2   <a  ] tR tRt o ^tV3R ltRtV tR# )/test_fdiff_argument_index_error.<locals>.myfunciz  c                   < Shrg   ro   )selfidxr  s   &&rR   fdiff5test_fdiff_argument_index_error.<locals>.myfunc.fdiff}  s	    $$rT   ro   N)r   r   r   r   r   r  r   r   )r   r  s   @rR   r   r  z  s     	% 	%rT   r   c                  &   < S ! \         \         4      # rg   rQ   r   s   rR   r{   1test_fdiff_argument_index_error.<locals>.<lambda>  s    fQlrT   N)sympy.core.functionr  r   rF   r   r   rA   r   )mfr  r   s    @@rR   test_fdiff_argument_index_errorr  w  sE    6% %
 
B771:B****
9*+rT   c                     \        \        4      p \        V \        4      p\        V\        4      p\        \        4      p\        V\        4      p\        V \        4      V8X  g   Q h\        ^V ,          ^,           \        4      ^V,          8X  g   Q h\        ^V ,          ^,           V,           \        4      ^V,          V,           8X  g   Q h\        ^V ,          ^,           W0,          ,           \        4      ^V,          W,          ,           W,          ,           8X  g   Q h\        ^V ,          ^,           W0,          ,           V 4      ^V,           8X  g   Q h\        ^V ^,          ,          ^V ,          ,           W,          ,           \        4      ^V,          W,          ,           W,          ,           ^V ,          V,          ,           8X  g   Q h\        ^V ^,          ,          ^V,          ,           W,          ,           \        4      ^V,          W,          ,           W,          ,           ^V ,          V,          ,           8X  g   Q h\        ^V ^,          ,          ^V,          ,           W,          ,           V4      ^8X  g   Q h\        ^V ^,          ,          ^V,          ,           W,          ,           V4      ^ 8X  g   Q h\        \	        V 4      \        4      V\        V 4      ,          8X  g   Q h\        \        V 4      \        4      V\        V 4      ,          8X  g   Q h\        \        V 4      \        4      V^\        V 4      ,          ,          8X  g   Q hR# r   )rP   rD   r   rh   r&   r'   r#   r$   )rF   xdxddrG   yds        rR   test_deriv_wrt_functionr    sY   	!A	aB
r1+C	!A	aB1:A	1R'''A	Aq!QVb[000A	AE!1%R!&26)AAAAA	AE!1%Q...QTAE!AE)1-R!&261IEBJ2   QTAF"QU*A.!c'AF2BRV2KEBJ3   AqD1r6!AE)2.!333AqD1r6!AE)3/1444A?b3q6k)))A?b3q6k)))QrQa[1111rT   c                  T   \        4       P                  R J g   Q h\        P                  RJ g   Q h\        \        4      P                  RJ g   Q h\	        \        \        4      \        4      P                  RJ g   Q h\	        \        ^,          \        4      P                  R J g   Q hR# )FTN)r	   	_diff_wrtrF   rP   r   ro   rT   rR   test_diff_wrt_valuer    s~    6u$$$;;$Q4>>T!!!adA((D000adA((E111rT   c            
         \        \        4      p \        \        \        4      \        4      p\        \        \        4      \        \        4      p\        \        V 4      V ^,          ,           V 4      \	        V 4      ^V ,          ,           8X  g   Q h\        \        V4      V^,          ,           V4      \	        V4      ^V,          ,           8X  g   Q h\        \        V4      V^,          ,           V4      \	        V4      ^V,          ,           8X  g   Q h\        V ^,          V4      ^ 8X  g   Q h\        V ^,          V4      ^ 8X  g   Q h\        V^,          V 4      ^ 8X  g   Q h\        V^,          V4      ^ 8X  g   Q h\        V^,          V4      ^ 8X  g   Q h\        W,          V,          V 4      W,          8X  g   Q h\        W,          V,          V4      W,          8X  g   Q h\        W,          V,          V4      W,          8X  g   Q h\        \        \        4      \        4      P                  \        \        4      4      ^ 8X  g   Q h\        \        \        4      4      \	        \        \        \        4      \        4      4      ,
          P                  \        \        4      4      \	        \        \        4      4      8X  g   Q h\        \        V 4      V \        4      \        \        V 4      \        V 4      8X  g   Q h\        \        \        4      4      P                  \        4      \        \        \        4      \        4      \        \        \        \        4      4      \        \        4      4      ,          8X  g   Q h\        \        \        \        4      \        \        4      4      \        4      \        \        \        4      \        4      \        \        \        \        4      \        \        4      4      \        \        4      4      ,          8X  g   Q h\        \        \        \        4      \        \        4      4      \        4      \        \        \        \        4      \        \        4      4      \        \        4      4      \        \        \        4      \        4      ,          \        \        \        \        4      \        \        4      4      \        \        4      4      \        \        \        4      \        4      ,          ,           8X  g   Q h\        \        \        4      4      P                  \        4      \	        \        4      \        \        \        \        4      \        4      \        \        \        4      4      ,          8X  g   Q h\        \        \        \        4      4      \        \        4      4      \        \        \        \        4      4      \        \        4      4      8X  g   Q hR# r   )
rP   rF   r   r&   r'   rh   r   hrG   r   )fxdfxddfxs      rR   test_diff_wrtr    s   	
1B
qtQ-C!aDB"a%$B!B$666C36!3'3s8ae+;;;;D	D!G#T*c$i!D&.@@@@Asq   At!!!Qq   Q"""a"""tR CH,,,tS!RW,,,tT"bf,,,!a=ad#q(((!ID1qM**0016#ad)CCCBQ4BB#7777 QqT7<<?1Q4Jq1w!556 6 6!A$!q!1Q4Jq1qt}ad;;< < <!A$!q!1QqT1Q4=!A$'
1Q4(;;1QqT1Q4=!A$'
1Q4(;;	<= = = AQ3q6$z!A$':As1v"FFG G G !A$1*QqtWad";;;;rT   c                  .   \        \        \        4      4      P                  \        4      P	                  \        \        \        ^\        ,          4      4      P                  4       \        ^\        ,          4      P                  \        4      8X  g   Q hR# r   )rP   rh   rF   r   rX   r   rs   ro   rT   rR   test_diff_wrt_func_subsr    sP    QqT7<<?6!QqS>2779QqsV[[^KKKrT   c                     \        \        \        \        4      ,          4      p \	        R 4      p\	        R4      p\        V \        4      P                  V \        4      \        \        \        4      8X  g   Q h\        V \        4      P                  \        \        4      P                  4       \        V \        4      P                  4       P                  \        \        4      8X  g   Q h\        \        \        \        4      \        4      P                  \        \        4      \        \        \        \        \        4      \        4      \        \        4      8X  g   Q h\        \        \        \        4      \        4      P                  \        \        4      \        \        \        \        \        4      \        4      \        \        4      8X  g   Q h\        \        \        \        4      \        4      P                  \        \        \        \        4      4      \        \        \        \        \        4      \        4      \        \        \        \        4      4      P                  4       8X  g   Q h\        \        \        \        4      \        4      P                  \        \        \        \        4      4      \        \        \        \        \        4      \        4      \        \        \        \        4      4      8X  g   Q h\        \        \        \        4      \        \        4      4      P                  \        \        \        \        4      4      \        \        \        \        \        4      \        4      \        \        4      4      8X  g   Q h\        \        V! \        4      \        \        4      4      \        \        4      4      P                  \        \        4      \        \        \        4      4      \        \        \        V! \        4      \        \        4      4      \        \        4      4      \        \        4      \        \        \        4      4      P                  4       8X  g   Q h\        \        \        \        4      \        4      P                  \        \        4      \        \        \        \        4      \        4      8X  g   Q h\        \        \        \        4      \        4      P                  \        \        \        4      4      \        \        \        \        \        4      4      \        \        4      4      8X  g   Q h\        \        \        \        4      \        \        4      4      \        \        4      4      P                  \        \        4      V! \        4      4      \        \        \        \        4      V! \        4      4      V! \        4      4      8X  g   Q h\        \        \        \        \        \        4      4      \        \        \        4      4      P                  \        \        \        \        3\        \        ,           4      4      \        \        \        \        ,           \        4      \        ^\        ,          4      8X  g   Q h\        \        \        \        \        4      4      \        4      \        \        4      P                  4       \        \        4      \        \        \        4      4      ,          8X  g   Q h\        \        \        \        \        4      4      \        \        4      4      \        \        4      P                  4       \        \        \        4      4      ) 8X  g   Q h\        V! \        \        V! \        \        4      4      P!                  \        4      P!                  \        4      P!                  \        4      \"        4      '       g   Q h\        \        \        3\        ^\        ,          ^\        ,          ,           4      4      p\        \        \        \        \        4      4      P!                  \        ^4      pV! \        V! \        \        4      4      P!                  \        ^4      pVP                  \        V4      P                  4       V,
          P%                  4       ^ 8X  g   Q h\        \        \        4      P!                  \        4      P                  \        ^ 4      P'                  4       9   g   Q h\        \        \        \        \        \        4      4      \        \        4      P                  \        \        \        4      4      \        \        \        \        \        \        \        4      4      \        \        4      \        \        \        4      4      8X  g   Q h\        \        \        \        4      \        4      P                  \        ^ 4      \        \        \        \        \        4      \        4      \        ^ 4      8X  g   Q h\        \        \        \        \        4      4      \        \        34      P                  \        \        4      \        \        \        \        \        4      4      \        \        34      8X  g   Q h\        \        4      P!                  \        4      pVP                  V^4      \(        P*                  J g   Q hVP!                  V4      \(        P*                  J g   Q h\        \        \        \        4      \        \        4      p\        \        \        \        4      \        \        4      pVP                  \        \        \        \        4      \        \        4      ^4      \(        P*                  J g   Q hVP!                  V4      \(        P*                  J g   Q h\        \        \        \        4      \        ^\        ^4      P                  V\        \        \        4      4      \        \        \        \        4      \        ^\        ^4      8X  g   Q h\        \        \        \        \        ,
          4      \        4      P                  \        \        \        ,           4      \        \        \        \        \        \        ,
          4      \        4      \        \        \        ,           4      8X  g   Q hR# )ur  N)r&   rF   r#   rG   r   r   rX   rs   rP   r   rh   r  rH   r   r'   
isinstancer   r	   simplifyrc  r   r   )	exprr  r  Fabstractconcretedfdxydyxs	            rR   test_subs_in_derivativer    s   qQx=DAAdA##D!,
1a0@@@@dA##Aq)..04  "''1-. . .a1gq!&&q!,Z!Q5KQPQ0RRRRa1gq!&&q!,Z!Q5KQPQ0RRRRa1gq!&&q!Aq'2d:a1gq;QSTVWXY[\V]6^6c6c6eeeea1gq!&&q!Aq'2d:a1gq;QSTVWXY[\V]6^^^^a1gqt$))!Qq!W5Aa1gqMSTUVSW9XXXXa!admQqT*//!a1g>Z!A$!qt,adAaG<AACD D Da1gq!&&q!,
1Q7A0FFFFa1gq!&&q!A$/:a1Q4j!A$3OOOOa!admQqT*//!ad;1QqT1Q4=!A$'( ( (a1Q7mQq!W-22	61a&!a% "%)1q5!a1&&& & & 
1QqT7A&3/446#a&SV:LLLL
1QqT7AaD)1c2779c#a&k\IIIa1a1g&++A.33A6;;A>EEEE1vs1Q319~&AAaG}!!!Q'HAaG}!!!Q'HMM!Q$$&1;;=BBB!		!!!!Q'--////a!Aa&k1a(--a1 
*Qq!Aq']Aq11ad;< < < a1gq!&&q! 
*Qq!Wa(!Q/0 0 0 a1Q4j1a&)..q! 
!QqT
QF+, , , 
11B772q>QUU"""772;!%%
Qq!Wa
#C
Qq!Wa
#C88JqAw1-q1QUU:::88C=AEE!!!a1gq!Q*//Qq!W#AaGQ1a89 9 9a1q5k1%**1a!e41QA;"Aq1u9. . . .rT   c                    a  \        \        4      \        \        4      \        ^,          \        \        ,          ^\        ,           \	        \        \        4      \        4      \	        \        \        \        4      4      \        4      3 F  o \        \        V 3R l4       K  	  \        \        \        \        ,          4      \        \        ,          ^ 4      \        \        \        ,          4      8X  g   Q hR# )r   c                  6   < \        \        \        4      S 4      # rg   r   rP   rF   wrts   rR   r{   +test_diff_wrt_not_allowed.<locals>.<lambda>      4!c?rT   N)
r'   rF   r!   rG   r   rP   rA   r   r   r#   r  s   @rR   test_diff_wrt_not_allowedr    s     FBqE1a41a!es1vq!:a!gq#9; 	z23;
 AaC!A#q!S1X---rT   c                       ! R  R4      p \        \        4      P                  \        V ! 4       4      \        \        4      ) 8X  g   Q hR# )c                   &   a  ] tR tRt o R tRtV tR# )"test_diff_wrt_intlike.<locals>.Twoi  c                    ^# r   ro   )r  s   &rR   __int__*test_diff_wrt_intlike.<locals>.Two.__int__  s    rT   ro   N)r   r   r   r   r  r   r   r   s   @rR   Twor    s     	 	rT   r  N)r'   rF   r   )r  s    rR   test_diff_wrt_intliker    s3      q6;;q#% SVG+++rT   c            
      X   \        R 4      p \        \        \        4      p\	        V\        4      ^,          \	        V\        4      ^,          ,
          V ^,          V^,          ,          ,
          ) ^,          p\        \	        W!4      \	        V\	        V\        4      \        4      ,
          \	        V\	        V\        4      \        4      ,
          ^ 4      p\        \	        V\        \        4      \	        V\        \        4      ,
          V ^,          V,          ,           ^ 4      pW48X  g   Q hR# )mN)r   rP   rF   rD   r   r   )r  phiLeqnaeqnbs        rR   test_klein_gordon_lagrangianr    s    sA
Aq'C
sA,/DaL!O
+ad36k
9:1<AQtAtC|Q//$q$sA,2JJAODd31oS!Q/!Q$s(:A>D<<rT   c            
         \        R 4      p \        R4      p\        \        4      pV \        V\        4      ^,          ,          ^,          W^,          ,          ^,          ,
          p\	        \        W24      \        V\        V\        4      \        4      4      p\	        V) V,          V \        V\        \        4      ,          4      pWE8X  g   Q h\        W2\        4      \        V\        V4      8X  g   Q h\        V\        V\        4      \        4      V \        V\        ^4      ,          8X  g   Q h\        V\        \        V\        4      4      V) V,          V \        V\        ^4      ,          ,           8X  g   Q hR# )r  kN)r   rP   rD   r   r   )r  r  rF   r  r  r  s         rR   test_sho_lagrangianr     s   sAsA	!A	$q!*a-AdF1H$Ad1j$q$q!*a01DqbdAd1amO$D<<a=DAqM)))41:q!QtAq!}_4441d1aj!aRTAd1amO%;;;;rT   c                     \        \        4      p V P                  \        4      p\        ^V^,          ,           4      p\        W 4      ^ 8X  g   Q h\        W!4      V\        ^V^,          ,           4      ,          8X  g   Q hR# r[  )rP   rF   r   r$   )r  Fdr  s      rR   test_straight_liner  /  s\    	!A	
BQQYA:??;"T!b!e)_,,,,rT   c                    a	 \         P                  o	R R/V	3R llp \        ^4       EFc  pV ! \        \        VR7      \        \        .8X  g   Q hV ! \        \        4      \        VR7      \        \        \        4      .8X  g   Q hV ! \        \        4      \        \        4      VR7      \        \        4      \        \        4      .8X  g   Q hV ! \        \        4      \        \        4      VR7      \        \        4      \        \        4      .8X  g   Q hV ! \        \        \        4      \        \        4      VR7      \        \        4      \        \        \        4      .8X  g   Q h\        \        4      P                  \        4      pV ! V\        VR7      \        V.8X  g   Q h\        \        4      P                  \        4      pV ! W2VR7      W#.8X  g   Q hVP                  \        4      pV ! WBVR7      W$.8X  g   Q hV ! \        \        4      \        \        4      VR7      \        \        4      \        \        4      .8X  g   Q hV ! \        \        4      \        \        4      VR7      \        \        4      \        \        4      .8X  g   Q hV ! \        \        \        4      \        \        4      VR7      \        \        4      \        \        \        4      .8X  g   Q hV'       d   V ! V\        VR7      \        V.8X  g   Q hV\        .'       g   Q hV'       d7   V ! \        \        4      \        VR7      \        \        \        4      .8X  g    Q h\        \        4      \        .'       g   Q hV'       d[   V ! \        \        \        4      4      \        \        4      VR7      \        \        4      \        \        \        4      4      .8X  g2   Q h\        \        \        4      4      \        \        4      .'       g   Q hV'       dV   V ! \        \        \        4      \        \        4      VR7      \        \        4      \        \        \        4      .8X  d   EK6  Q h\        \        \        4      \        \        4      .'       d   EKd  Q h	  S	! . 4      . 8X  g   Q h\        S	! \        ^3.4      \        \        ^4      .4      '       g   Q hS	! \        \        3\        \        3.4      \        \        \        ,           3.8X  g   Q hS	! \        ^3\        ^\        ,           3.4      \        ^\        ,           3\        ^3.8X  g   Q hS	! \        ^3\        ^3\        ^3.4      \        ^3\        ^3\        ^3.8X  g   Q hS	! \        \        4      ^3\        \        4      ^3\        \        4      ^3.4      \        \        4      ^3\        \        4      ^3\        \        4      ^3.8X  g   Q hS	! \        ^3\        ^3\        ^3\        \        4      ^3\        \        4      ^3\        \        4      ^3.4      \        ^3\        ^3\        ^3\        \        4      ^3\        \        4      ^3\        \        4      ^3.8X  g   Q hS	! \        ^3\        \        4      ^3\        ^3\        \        4      ^3.4      \        ^3\        ^3\        \        4      ^3\        \        4      ^3.8X  g   Q hS	! \        ^3\        ^3\        \        4      ^3\        \        4      ^3\        ^3\        \        4      ^3\        ^3\        ^3.4      \        ^3\        ^3\        ^3\        \        4      ^3\        \        4      ^3\        \        4      ^3.8X  g   Q hS	! \        ^3\        ^3\        \        4      ^3\        ^3\        \        4      ^3\        \        4      ^3.4      \        ^3\        ^3\        ^3\        \        4      ^3\        \        4      ^3.8X  g   Q hS	! \        ^3\        ^3\        \        4      ^3\        ^3\        \        4      ^3\        \        4      ^3\        ^3\        ^3\        ^3\        ^3.
4      \        ^3\        ^3\        ^3\        \        4      ^3\        \        4      ^3.8X  g   Q hS	! \        ^3\        ^3\        ^3\        ^334      \        ^3\        ^3.8X  g   Q h\        S	! \        ^3\        ^3\        ^3.4      ^ ,          \        4      '       g   Q hS	! \        ^3\        \        4      ^3\        ^3.4      \        ^3\        \        4      ^3.8X  g   Q hS	! \        ^3\        ^3\        ^3.4      \        ^3\        ^3\        ^3.8X  g   Q hS	! \        \        4      ^3\        \        4      ^3\        \        4      ^3.4      \        \        4      ^3\        \        4      ^3\        \        4      ^3.8X  g   Q hS	! \        ^3\        ^3\        ^3.4      \        ^3\        ^3.8X  g   Q hS	! \        \        4      ^3\        \        4      ^3\        \        4      ^3.4      \        \        4      ^3\        \        4      ^3.8X  g   Q h\        \        4      P                  \        4      pV^3\        ^3.pS	! V4      V8X  g   Q hS	! V^3\        ^3\        \        4      ^3\        ^3\        \        4      ^3\        ^3.4      \        ^3\        \        4      ^3\        \        4      ^3V^3\        ^3.8X  g   Q h\        \        4      P                  \        4      pS	! V^3V^3.4      V^3V^3.8X  g   Q hVP                  \        4      pS	! V^3V^3.4      V^3V^3.8X  g   Q hR# )reverseFc                    < S! V '       d   \        V4      MT Uu. uF  q"^ 3NK  	  up4       Uu. uF  q"^ ,          NK  	  up# u upi u upi r  )reversed)r  r  r   vsorts   $* rR   vsort0"test_sort_variable.<locals>.vsort09  s_    #"HQK)%,) 12V)%, - . -! - . 	. %, .s
   AA	)r  N)r   _sort_variable_countrz  rG   rF   rP   rh   r   r   rH   r   r   r  r  )
r  Rr  fyfxxr  r  dfyd2fxr  s
            @rR   test_sort_variabler  7  s	   ++E.5 . 1XaA&1a&000adAq)a1Y666adAaD!,1qt<<<adAaD!,1qt<<<a1gqtQ/AaD!Aq'?BBBqTYYq\b!Q'Ar7222qTYYq\ba(RH444ggajcq)bY666eAh!a0QqT584DDDDeAha!4q588LLLLeAqk58Q7!HeAqk<# # 	# #  b!Q'r,  	% % !W	% %  eAh1-uQx2  	1 1$)!Ha=	1 1 #$ eAaDk1Q43aD%!+8  	= =*/!+qt)<	= = '( eAqk58Q7!HeAqk<# # 	E E.3Aqk58-D-D	E E- 0 9??EAq6(OeAqk]33331a&1a&!"1q5zl2221a&1a!e*%&Aq1u:1v*>>>>1a&1a&1a&)*1v1v1v.FFFF1Q4)adAY1q	23	
1q	AaD!9qtQi8) ) ) )1a&1a&1a&1Q4)adAY	
1q	 AAA1q	AaD!9	
1q	   1a&1Q4)aVadAY78aV	
A1q	AaD!9=& & & &1a&1a&1Q4)adAYA	
1q	Aq6Aq6# $)*AAA	
1q	AaD!9qtQi()) ) ) 1a&1a&1Q4)aVadAY	
1q	 AAA1q	AaD!9EF F F1a&1a&1Q4)aVadAY	
1q	Aq6Aq6Aq6Aq63 49:AA	
A1q	AaD!98&& & & 1a&1a&1a&1a&121v1v6FFFFeaVaVaV45a8%@@@@1a&1Q4)aV,-1a&1Q4)1DDDD1a&1a&1a&)*1v1v1v.FFFF1Q4)adAY1q	23	
1q	AaD!9qtQi8) ) ) )1a&1a&1a&)*1v1v.>>>>1Q4)adAY1q	23	
1q	AaD!98   
A$))A,C!Hq!fD;$	a1a&1Q4)aVadAYA@ A	
A1q	AaD!9sAhAE88 8 8 A$))A,C3(S!H%&C8c1X*>>>>88A;D4)c1X&'S!HtQi+@@@@rT   c                      \        \        \        4      P                  \        \        \        \        \        4      \	        \        \        \        4      \        ^3\        ^34      8X  g   Q hR# r   )rP   rF   rG   r   r   ro   rT   rR   test_multiple_derivativer    sG    Q7<<1aA 
!Q!Q!Q01 1 1rT   c                      ! R  R\         4      p V ! \        \        4      \        \        4      p\        V\        \        \        \        4      \        4      \        V\        \        4      4      8X  g   Q h\        V\        \        4      \        4      \        V\        \        4      4      8X  g   Q h\        \        \        4      P                  \        \        \        34      \        \        \        \        4      \        \        \        34      8X  g   Q h\        \        \        4      P                  \        \        ^ 34      \        \        \        \        4      \        4      8X  g   Q hR# )c                   &   a  ] tR tRt o R tRtV tR# )test_unhandled.<locals>.MyExpri  c                L    VP                   P                  R 4      '       g   V # R# )r_  N)rd  
startswith)r  ss   &&rR   r   /test_unhandled.<locals>.MyExpr._eval_derivative  s    66$$T**rT   ro   N)r   r   r   r   r   r   r   r   s   @rR   MyExprr    s     	 	rT   r  N)r	   rP   rF   rG   rH   r   r   )r  r   s     rR   test_unhandledr    s      
!a	BAq!A$"jQqT&::::AaD!
2qt 4444Q7<<1a&!Z!QQF%CCCCQ7<<1a&!Z!Q%;;;;rT   c            	      "   ^ RI Hp  ^ RIHp \	        R4      pV\        ^^4      ,          ^V\        P                  ^,          ,          ,          ^,          ,           pV ! \        V4      V\        ^^4      ,          RV\        P                  ^,          ,          ,          ,           4      '       g   Q hV ! \        VRR7      VR,          RVR,          ,          ,           4      '       g   Q hV\        ^^4      ,          ^W"^,          ,          ,          ^,          ,           pV ! \        V4      V\        ^^4      ,          RW"^,          ,          ,          ,           4      '       g   Q hRp\        V^4      pV ! \        V4      V4      '       g   Q hV ! \        WB,          4      WR,          4      '       g   Q hV ! \        W$,          RR7      W%,          4      '       g   Q h\        \        V\        ^4      ,           4      4      \        V\        \        ^4      4      ,           4      8X  g   Q h\        R4      p\        ;QJ d5    R \        VP                  VR4      4       4       F  '       g   K   RM*	  R	M&! R \        VP                  VR4      4       4       4      '       d   Q h\        R\        R
4      ,          R,           4      R8X  g   Q h\        ^V^,          ,          \        ,           4      V! V^,          ^V^,          ,          ,           ^,           ^ 4      ,          p\!        \        VR	^R7      4      R8X  g   Q h\"        \$        3 F  pV! \        P&                  \        P&                  /4      p\        V4      p	\)        W4      '       g   Q hV ! \+        V	P-                  4       4      P/                  4       \        P&                  \        R4      34      '       d   K  Q h	  \"        \$        3 F  pV! \        P&                  \        P&                  /4      p\        VRR7      p	\)        W4      '       g   Q hV ! \+        V	P-                  4       4      P/                  4       \        R4      \        R4      34      '       d   K  Q h	  \        P&                  .p\        V4      p	\1        V	4      \*        J g   Q hV ! V	^ ,          \        R4      4      '       g   Q hV ! \        \3        V\        P&                  4      4      P4                  \        R4      4      '       g   Q hV ! \        \        R4      4      \        R4      4      '       g   Q hV ! \        \7        \        P&                  4      4      ^ ,          \        R4      4      '       g   Q h\        \3        ^\8        ,
          ^,          ^,          \8        ,           ^ 4      4      \        P:                  8X  g   Q h\        \        P&                  V/.RR7      \        R4      V/.8X  g   Q h\=        ^^.^^..4      p
\=        \        R^5R7      \        R^5R7      .\        R^5R7      \        R^5R7      ..4      pV ! \        V
4      V4      '       g   Q h\?        ^^.^^..4      p
\?        \        R^5R7      \        R^5R7      .\        R^5R7      \        R^5R7      ..4      pV ! \        V
4      V4      '       g   Q h\A        R4      p\        V! ^4      4      PC                  \        4      '       d   Q hR# )r   )r   )rootofrF   T)exponentl   
>V3&Z
 z/x*lamda + lamda**3*(x/2 + 1/2) + lamda**2 + 1/4c              3   8   "   T F  qP                   x  K  	  R # 5irg   )r  )r   r}   s   & rR   r   test_nfloat.<locals>.<genexpr>  s     G+Fa>>+Fs   Fl   y* l   rT g!|=)r  r!  z-0.7*cos(3.0*x**4 + y)g      ?)dkeysz1.0)	precisionz2.0z3.0z4.0rP   NgUUUUUU?gUUUUUU?gni`y)"sympy.core.basicr   sympy.polys.rootoftoolsr  r   r   r   r   r   r   r'   r$   anyr<   rX   rG   strdictr   r  r  listitemspoprp  r   rhsr   r   falser9   r:   r   rc  )r   r  rF   r   big	Float_bigrP   tirk   r!  ABs               rR   test_nfloatr     s\   ).sA	
HQN	Qq1557|^A-	-BF2J8Aq> 1UAaL4H HIIIIF2-q5zUAJ<N/NOOOO	
HQN	QqQ3xZ\	)BF2J8Aq> 1UA!H4D DEEEE
Cc2IF3K++++F35M9;////F16D11<@@@@#a$q'k"#s1vd1g+>'???? 	

;<AsG8AFF1f4E+FGsssG8AFF1f4E+FGGGGG '$z**Z78   
Qq!tVaZ1qAv 115	5Bvb5A./3KKKK Tl 1I!    QWWY++-b	/BCCCC	 
 Tl 1D!!    QWWY++-b	59/EFFFF	 
 
Aq	A7d??AaD%)$$$$F2a=)--uRy9999F1T7OQtW----F5=)!,eBi8888"a!eaZ\A%q)*agg555AFFA;-t,%*a0AAAA 	1v1v&'A

$eER&@	A	u	#U5B%?@	B	CA F1Iq!!!!!Q!Q()A

$eER&@	A	u	#U5B%?@	B	CA F1Iq!!!! 	Aad|!!%(((((rT   c                  X   ^ RI Hp Hp \        R4      p\	        R4      p\	        R4      pV! WV,          ,           4      pV! WV,          ,           4      pVP                  V4      pVP                  V4      pWx8w  g   Q h\        V! V 4      W4      p	\        V! V 4      W4      p
W8w  g   Q hR# )r   )r}   rA  rP   rG   N)	sympy.abcr}   rA  r   r   r   r   )r}   rA  rP   y1y2func1func2func1_yfunc2_yz1z2s              rR   test_issue_7068r    s    A	sB	sBaq&jMEaq&jMEjjnGjjnG	adA	B	adA	B8O8rT   c                     ^ RI Hp  \        \        4      P	                  \        V 4      p\        V 4      V ) \        ,           \        \        \        \        4      \        4      \        V 4      ,          ,           V ) \        ,           ^,          \        \        \        \        4      \        \        4      \        V 4      ,          ^,          ,           V ) \        ,           ^,          \        \        \        \        4      \        \        \        4      \        V 4      ,          ^,          ,           V ) \        ,           ^,          \        \        \        \        4      \        \        \        \        4      \        V 4      ,          ^,          ,           V ) \        ,           ^,          \        \        \        \        4      \        \        \        \        \        4      \        V 4      ,          ^x,          ,           \        V ) \        ,           ^,          \        V 34      ,           pW!8X  g   Q h\        \        4      P	                  \        V 4      pW#8X  g   Q hR# )r   r<  N)	r  r}   rP   rF   rb  r   r   rG   r.   )r}   ans1resans2s       rR   test_issue_7231r    s   Q4;;q!DQ4A264
1Q4 3Q:::BFQ;tJqtQ2Aq99!;<BFQ;tJqtQ15q" ""#$$ BFQ;tJqtQ1a8q" ""$%	% BFQ;tJqtQ1a;q" ""%&& )*A26A+1v(>?C ;;Q4;;q!D;;rT   c                  J   ^ RI Hp  ^ RIHp V ! R4      ! V4      pV ! R4      ! V4      pVP	                  V4      p\        V\        V4      4      '       g   Q h\        4        V ! R4      ! V4      p\        V\        V4      4      '       g   Q hWCP	                  V4      8X  g   Q hR# )r   r   rQ   rP   N)r  r   r  rF   matchesr  rp  r   )r   rF   rP   ffmatch_with_caches        rR   test_issue_7687r    s    ,aA	#q	Bzz!}ab""""M	#q	Bab""""zz!},,,rT   c                      ^ RI Hp Hp V ! R4      p\        4         ! R RV4      pV! R4      p\	        V\        V4      4      '       g   Q hR# )r   )r   UndefinedFunctionrP   c                       ] tR tRtRtR# )test_issue_7688.<locals>.Ai
  ro   Nr   ro   rT   rR   r  r  
  r   rT   r  N)r  r   r  r   r  rp  )r   r  rP   r  r}   s        rR   test_issue_7688r    s@    ?AM 	#Aaa!!!!rT   c                      ^ RI Hp  \        R4      e   Q h\        ^4      \        P                  J g   Q h\        W ^,           ^,          ,          4      W ^,           ^,          ,          P                  4       8X  g   Q hR# )r   rQ   N)r  rF   r2   r   r   r   rQ   s    rR   test_mexpandr    s[    D>!!!A;!%%A1uqjL!aQ
l%:%:%<<<<rT   c                      ^(p R p\        \        V 4       Uu. uF  pRV,          NK  	  up4      p^ RIpVP                  W4      p\	        V\
        4      '       g   Q hR# u upi )(   c                 @    ^^\        W,
          4      ,           ,          # r   )r#   )rE   thetas   &&rR   rh   test_issue_8469.<locals>.g  s    !CL.!!rT   zw%iN)r   rz  	functoolsreducer  r   )Nrh   r   wsr"  r  s         rR   test_issue_8469r&    s\    
A" 
58,8a%''8,	-BA"DdC     -s   A c                      \        \        \        4      \        4      P                  R R7      \        \        \        4      \        4      8X  g   Q hR# )T)fooN)r   r    rF   rs   ro   rT   rR   test_issue_12996r)  #  s6     beQ$$$.*RUA2FFFFrT   c                      \        \        R R \        ,          ,           R,          ^,           4      \        4      '       g   Q hR# )rn  i'  N)r  r&   r   ro   rT   rR   test_should_evalfr+  )  s,    c3Q;.23S9999rT   c                      \        R RR7      w  r\        V 4      P                  V 4      pVP                  V ^,
          V ^,
          W ^,           V ^,           .4      \        P
                  ^,          \        V ^,
          4      \        V ^,           4      ,
          ,          \        ^^4      \        V ^,           4      \        V ^,
          4      ,
          ,          ,           ,
          P                  4       ^ 8X  g   Q hVP                  4       \        V \        P                  ,           4      \        V \        P                  ,
          4      ,
          ,
          P                  4       ^ 8X  g   Q hVP                  V4      \        W\	        ^4      ,          ,           4      \        W\	        ^4      ,          ,
          4      ,
          V,          ,
          P                  4       ^ 8X  g   Q hVP                  V ^V,          ,
          W,
          W,           V ^V,          ,           .4      \	        ^	4      ^V,          ,          \        W,           4      \        W,
          4      ,
          ,          \        P
                  ^0V,          ,          \        V ^V,          ,
          4      \        V ^V,          ,           4      ,
          ,          ,           ,
          P                  4       ^ 8X  g   Q hVP                  . RO^ 4      \        R^4      \        ^ 4      ,          ^\        ^4      ,          ,           \        ^4      ^,          ,
          ,
          P                  4       ^ 8X  g   Q hVP                  W V,           .V 4      \        W,           4      \        V 4      ,
          V,          ,
          P                  4       ^ 8X  g   Q hVP                  W,
          W V,           .W,
          4      \	        ^4      ) ^V,          ,          \        W,
          4      ,          ^V,          \        V 4      ,          ,           \        P
                  ^V,          ,          \        W,           4      ,          ,
          ,
          P                  4       ^ 8X  g   Q hVP                  W,
          W,           V ^V,          ,           V ^V,          ,           V ^V,          ,           .4      ^^V,          ,          \	        ^4      ) ^,          \        W,
          4      ,          \	        ^4      ^,          \        W,           4      ,          ,           \        ^^4      \        V ^V,          ,           4      ,          ,           \        ^^4      \        V ^V,          ,           4      ,          ,
          \        P
                  ^,          \        V ^V,          ,           4      ,          ,           ,          ,
          P                  4       ^ 8X  g   Q h\        V 4      P                  V ^4      pVP                  W,
          W V,           .4      VR,          \        W,
          4      \        W,           4      ,           ^\        V 4      ,          ,
          ,          ,
          P                  4       ^ 8X  g   Q hVP                  V ^V,          ,
          W,
          W V,           V ^V,          ,           .4      VR,          \        R	^4      \        V ^V,          ,
          4      \        V ^V,          ,           4      ,           ,          \        ^^4      \        W,           4      \        W,
          4      ,           ,          ,           \        ^^4      \        V 4      ,          ,
          ,          ,
          P                  4       ^ 8X  g   Q hVP                  V ^V,          ,
          W,
          W,           V ^V,          ,           .4      ^V,          R,          \        P                  \        V ^V,          ,
          4      \        V ^V,          ,           4      ,           ,          \        P                  \        W,           4      \        W,
          4      ,           ,          ,
          ,          ,
          P                  4       ^ 8X  g   Q hVP                  W V,           V ^V,          ,           V ^V,          ,           .4      VR,          ^\        V 4      ,          ^\        W,           4      ,          ,
          ^\        V ^V,          ,           4      ,          ,           \        V ^V,          ,           4      ,
          ,          ,
          P                  4       ^ 8X  g   Q hVP                  W,
          W,           V ^V,          ,           V ^V,          ,           .4      ^V,          R,          \        ^^4      \        W,
          4      ,          \        ^^4      \        W,           4      ,          ,
          \        ^^4      \        V ^V,          ,           4      ,          ,           \        P                  \        V ^V,          ,           4      ,          ,
          ,          ,
          P                  4       ^ 8X  g   Q h\        V 4      P                  V ^4      pVP                  4       \        V \        ^^4      ,
          4      ) ^\        V \        P                  ,
          4      ,          ,           ^\        V \        P                  ,           4      ,          ,
          \        V \        ^^4      ,           4      ,           ,
          P                  4       ^ 8X  g   Q hVP                  V ^V,          ,
          V ^V,          ,
          W,
          W V,           V ^V,          ,           V ^V,          ,           .4      VR,          \        P
                  ^,          \        V ^V,          ,
          4      \        V ^V,          ,           4      ,
          ,          \        V ^V,          ,
          4      ,
          \        V ^V,          ,           4      ,           \        ^^4      \        W,
          4      \        W,           4      ,
          ,          ,           ,          ,
          P                  4       ^ 8X  g   Q hVP                  V ^V,          ,
          W,
          W,           V ^V,          ,           .4      ^V,          R,          \        V ^V,          ,           4      \        V ^V,          ,
          4      ,
          ^\        W,
          4      \        W,           4      ,
          ,          ,           ,          ,
          P                  4       ^ 8X  g   Q hVP                  W V,           V ^V,          ,           V ^V,          ,           .4      VR,          \        V ^V,          ,           4      \        V 4      ,
          ^\        W,           4      \        V ^V,          ,           4      ,
          ,          ,           ,          ,
          P                  4       ^ 8X  g   Q hVP                  W,
          W,           V ^V,          ,           V ^V,          ,           .4      ^V,          R,          \        V ^V,          ,           4      \        W,
          4      ,
          ^\        W,           4      \        V ^V,          ,           4      ,
          ,          ,           ,          ,
          P                  4       ^ 8X  g   Q h\        RRR7      p\        W4      P                  W4      p\        \        V \        P                  ,           V4      V4      \        \        V \        P                  ,
          V4      V4      ,
          pVP                  V R7      V,
          P                  4       ^ 8X  g   Q h\        P                  pW,
          W,           WX,
          WX,           3w  rr\        W4      \        W4      ,           \        W4      ,
          \        W4      ,
          pVP                  4       V,
          P                  4       ^ 8X  g   Q hR# )
zx hTrL   rG   r  N)r   r   r   r~   )r   rP   r   as_finite_differencer   r   r   r  r  r   r   )rF   r  dfdxd2fdx2d3fdx3rG   d2fdxdyref0halfxmxpymypref2s                 rR   $test_Derivative_as_finite_differencer;  .  s   5t$DAQ499Q<D%%qsAaCaC1&=>UU2Xq1va!f}%A!A#q1v(FFHIQWXY Y Y %%'q166z]1QZ=(*+38:; ; ;%%a(qQqT6z]1Q1Q4Z=(!+,-5XZ1= = =%%q1Q3wQS!ac'&BCqT3q5\1QS6AacF?+UUDF^Qq1Q3wZ!A!G*45678@
aH H H
 %%i3b!_QqT!AadF*QqT!V356>hjAF F F%%qA#h2qsVad]A'xzQ/ / /%%qsAsmQS9dUAaC[13!A#ad(*UUAaC[13 !"*(*2 2 2
 %%qsACQqS!ac'1qs7&KL1g"vr{1QS6)AbE2Jqv,==!!Q!ac'
235=a_Qq1Q3wZ5OPr!A!G*,- .. 08xzQ? ? ?
 qTYYq!_F''a16rEQqsVaf_q1v-./08
a@ @ @ ''QqS!#qA#q1Q3w(GHrEXb"%qQqSzAa!A#gJ'>?a^QqsVaf_568@Aqt8KL MMNVhj\]^ ^ ^
 ''QqS!#qsA!G(DEqS2I1qs7aAaCj!8913!AC&12 334<HJ!D D D
 ''aCQqS!ac'(BCrEQqtVa!#h&q1Q3xZ "#AacE(+ ,,-5XZ1= = =
 ''ac1qs7A!G(DEqS2I!Q!#.!Q!#1FFRSUVXYZ[^_`a^aZaXbIbb!ac'
*+ ,,-5XZ1= = = qTYYq!_F'')HQN"##a!aff*o5qQVV}_ Xa^!34567?xzQG G G ''	
QqS!ac'13Q3AaCQqS9;	2q!A!G*qQqSz12Qq1Q3wZ?1qs7&r1oqv!#?@ 	AA CK(*PQR R R ''QqS!#qsA!G(DEqS2I1qs7Aa!A#gJ.AacF1QS6M*+ ,,-5XZ1= = =
 ''aCQqS!ac'(BCrEQq1Q3wZ!_q!AC&1qs7*;'<<=>?GxzQO O O ''ac1qs7A!G(DEqS2I1qs7AacF*AacF1Q1W:-./ 0019qA A A
 	sAgll1 GaAFF
A&*Z!aff*a8H!-LLD((Q(/$6@@BaGGG66DVQVQVQV3NBBR9qy 1R9,qy8D((*T1;;=BBBrT   c                  |   \        R 4      ;_uu_ 4        \        p W ,          pVP                  W4      p W8X  g   Q h RRR4       \        R4      ;_uu_ 4        \        p W ,          pVP                  W4      pV\        ^,          8X  g   Q h RRR4       R#   + '       g   i     Lb; i  + '       g   i     R# ; i)FNT)r6   r   rX   )expr1expr0expr2s      rR   test_issue_11159r@    s    	U		

5'~~	 

 
T		

5(Q	 
	 
	
 
		s   (B4B*B'	*B;	c            	         \        \        \        \        4      \        4      \        \        4      p V P	                  \        4      \        \        \        4      \        \        4      8X  g   Q h\        \        \        \        4      \        4      \        \        ^,          ^,           4      pVP	                  \        4      ^\        ,          \        \        \        \        4      \        \        4      \        \        ^,          ^,           4      ,          8X  g   Q h\        \        \        \        4      \
        ^,          ,           \
        ,
          \
        4      \
        \
        ^,          4      pVP	                  \
        4      ^\
        ,          8X  g   Q h\        \        \        \        \
        ,           4      \
        4      \
        \        ^,          4      pVP	                  \
        4      \        P                  J g   Q h\        \        \        \        4      \        4      \
        \        3\
        \        34      pVP	                  \        4      \        \        \        4      \        \        4      8X  g   Q h\        \        \        4      4      P	                  \        \        4      \        \        4      4      \        \        \        \        4      4      \        \        4      \        \        4      4      8X  g   Q hR# r   )
r   r   rP   rF   r   rG   r   ZerorH   rh   )r#  r$  e3e4e5s        rR   test_issue_12005rF    s   	j1q!1a	(B771:AaD!Q////	j1q!1adQh	/B771:1T*QqT1a"8!QTAXFFFFF	j11q!,aA	6B771:1	j1q51%q1a4	1B771:	j1q!Aq6Aq6	2B771:AaD!Q////QqT7<<!ad#z!AaD'1Q41'FFFFrT   c                     \        R 4      p \        R4      p\        RRR7      w  r#\        \        V! V 4      W34      W34      \        V! V 4      WV,           34      8X  g   Q h\        \        V! V 4      W^,           34      W^,           34      \        V! V 4      WV,           ^,           34      8X  g   Q h\        V! V 4      W34      P                  4       \        V! V 4      W34      8X  g   Q hR# )rF   rP   zm nTri  N)r   r   r   rs   )rF   rP   r  r!  s       rR   test_issue_13843rH    s    AA5$'DAj1v.7:adQTUPUJ;WWWWj1Q3x01c(;z!A$QRXYTY\]T]P^?____adQF#((*j1v.FFFFrT   c                  >   \        R 4      w  r\        RRRR7      p\        RRRR7      p\        WV34      \        V\        V^ 4      3R4      8X  g   Q h\        WV^,           34      \        P
                  J g   Q h\        WV34      \        P
                  J g   Q hR# )zx, yr!  T)rj  nonnegativer  rj  positiveN)r   T)r   r   r%   r   r   rB  )rF   rG   r!  r  s       rR   test_order_could_be_zerorM    s    6?DATt4ATD1Aq6?iBq!HyAAAAq1u:!&&(((q6?aff$$$rT   c                      \        R 4      p \        R 4      p\        R4      p\        R RR7      pW8X  g   Q h\        V 4      \        V4      8X  g   Q hW 8X  g   Q hW8w  g   Q hW8w  g   Q hR# )rP   rh   Tis_realN)r   r   )rP   r   rh   f_reals       rR   test_undefined_function_eqrR    sf    A	#BAc4(F 7N77d2h6M66M6;;rT   c                     \        R 4      p \        R4      p\        RRR7      p\        R^R7      p\        \        RRR7      4      pW#8X  g   Q hW8w  g   Q hV! V 4      V! V 4      8w  g   Q hV! V 4      P                  e   Q hV! V 4      P                  RJ g   Q hV! V 4      P                  RJ d   VP                  R8X  g   Q h\        RRR7      pV! V 4      P                  RJ g   Q hR# )rF   rP   TrL   NrO  )r   r   rP  rd  )rF   rP   rQ  f_real1f_real_inheritf_real2s         rR   test_function_assumptionsrW    s    sAAc%Fs#GfSt45N;;Q46!9Q4<<!9$$$!$$,1D1D1KKK
 sD)G1:%%%rT   c                  `   \        R 4      p V ! R4      P                  '       d   Q h\        R4      p V ! R4      P                  '       d   Q hV ! \        4      P                  4       P                  '       d   Q h\	        R4      pV ! V4      P                  VR/R7      P                  '       d   Q hR# )ceilg333333?r&   rF   g333333?)rX   N)r   	is_numberr   r"  r   )rP   rF   s     rR   test_undef_fcn_float_issue_6938r[    s    AvAvu{{}&&&&&sAtzz#wz'111111rT   c                  H   RR lp \        R 4      p\        R 4      p\        RWVR7      pV! \        4      p\        V4      V8X  g   Q h\	        \        V4      4      P
                  P                  R8X  g   Q hVP                  \        4      \        \        4      8X  g   Q hR# )	r   c                 H    \        V P                  V^,
          ,          4      # r   )r'   r8  )r  argindexs   &&rR   r{   .test_undefined_function_eval.<locals>.<lambda>  s    S8a<)@%ArT   c                     R # rg   ro   rJ   rD   s   &&rR   r{   r_    s    drT   c                     \        V4      # rg   )r&   ra  s   &&rR   r{   r_    s    s1vrT   temp)r  r   _imp_z<lambda>Nr   )	r   r   rD   r7   rp  r  r   r   r'   )r  r   rd  rc  r  s        rR   test_undefined_function_evalre    s     BE*+D-.EF%%@D7D4=D   $$--;;;99Q<3q6!!!rT   c                     \        \        4      p V P                  \        4      pV \        V,          ,           P                  \        V4      ^8X  g   Q hV \        V,          ,           P                  V\        4      ^8X  g   Q h\        V ,          \        V,          V ,          ,           P                  V \        4      \        VP                  \        4      ,          V,           ^,           8X  g   Q h\        V ,          \        V,          V ,          ,           P                  \        V 4      \        VP                  \        4      ,          V,           ^,           8X  g   Q h\        \        4      p\        V4      pVP                  V4      pW2V,          ,           P                  W$4      ^8X  g   Q hW2V,          ,           P                  WB4      ^8X  g   Q hW#,          W$,          V,          ,           P                  W24      W$P                  V4      ,          V,           ^,           8X  g   Q hW#,          W$,          V,          ,           P                  W#4      W$P                  V4      ,          V,           ^,           8X  g   Q hR# r   rP   rF   r   )r  FxrG   GGys        rR   test_issue_15241rk    s   	!A	
B"H??1b!Q&&&"H??2q!Q&&&aC!B$q&Lq!$"''!*r(9A(====aC!B$q&Lq!$"''!*r(9A(====	!A	!A	
B"H??1!Q&&&"H??2!Q&&&C!$q&Lq$''!*r(9A(====C!$q&Lq$''!*r(9A(====rT   c                      \        \        \        \        4      \        \        4      \        \        \        4      4      P                  4       ^ 8w  g   Q hR# rr   )r   r   rP   rG   rF   rh   rs   ro   rT   rR   test_issue_15226rm  
  s3    
1Q4A&1Q405571<<<rT   c                     a  \        \        4      \        \        4      \        \        \        4      \        4      3 F  o \	        \
        V 3R  l4       K  	  R# )c                  6   < \        \        \        4      S 4      # rg   r  r  s   rR   r{   !test_issue_7027.<locals>.<lambda>  r  rT   N)r'   rF   r!   r   rA   r   r  s   @rR   test_issue_7027rq    s2    A1z#a&!45z23 6rT   c                  p   \        \        4      P                  \        4      ^ 8X  g   Q h\        \        4      P                  \        \        \        4      4      ^ 8X  g   Q h\        \        4      P                  \        \        \        4      4      ^ 8X  g   Q h\        \        \        4      4      P                  \        \        \        4      \        \        4      4      ^ 8X  g   Q h\        \        \        4      4      P                  \        \        \        4      \        4      ^ 8X  g   Q h\        \        4      P                  \	        \        4      4      ^ 8X  g   Q h\        \        4      P                  \        \        \        4      P                  \        4      4      ^8X  g   Q h\        \        4      P                  \        4      p \        \        4      P                  V 4      ^ 8X  g   Q h\	        \        4      P                  \        4      pVP                  V 4      P                  4       ^ 8X  g   Q hR# rr   )rP   rF   r   rG   rh   rs   )r  dgs     rR   test_derivative_quick_exitrt    sR   Q499Q<1Q499Q!"""Q499Q!"""QqT7<<1Q41&!+++QqT7<<1Q4#q(((Q499QqT?aQ499Q!		!%***	
11BQ499R=A	
11B772;"""rT   c                     \        \        \        \        4      4      p V P                  \        \        4      \        34      \        \        \        \        \        4      4      \        \        4      \        34      8X  g   Q hV P                  \        ^4      P                  4       \        \        \        \        \        4      4      \        \        4      ^34      \        \        \        4      \        4      ,          \        \        \        \        \        4      \        \        4      \        \        \        4      4      ,           \        \        \        4      \        4      ,          \        \        \        \        \        4      4      \        \        4      4      \        \        \        4      \        ^34      ,          ,           \        \        \        4      \        4      \        \        \        \        \        \        4      4      \        \        \        4      4      \        \        4      ,          ,           \        \        \        \        \        \        4      4      \        ^34      \        \        4      ,           8X  g   Q h\        \        \        \        \        \        \        4      4      \        4      P                  4       \        \        \        \        \        \        \        4      4      \        \        \        4      4      \        \        \        \        4      \        4      ,          \        \        \        \        \        \        \        \        4      4      \        4      \        \        4      ,           8X  g   Q hV P                  \        \        \        4      4      V P                  \        \        4      \        4      8X  g   Q hR# r   )rP   rF   rh   r   rG   r   rs   r   _xi_2_xi_1rD   rD  s    rR   test_issue_15084_13166rx  !  s.   	
1adB77AaD!9Aa1J1q	!BBBB771a=	Aa1J1q		*:adA+>	>Z!UUA.qt<
=>H1	?	!QqT
AaD)*QqTAq6*BB	C 	1Q4DAeQqTNE1Q4!Hq 		 AeQqTNUAJ?J		KL L L !Q!Q !$))+1Q1Q7#Qq!W-j1a!.DDZ%AaG,e4eQ?	@A A A 771adrwwqtQ////rT   c                  (    \        \        R  4       R# )c                  H    \        \        4      P                  \        R4      # )r   r~   )r&   rF   r   ro   rT   rR   r{   &test_negative_counts.<locals>.<lambda>5  s    s1v{{1b1rT   N)rA   r   ro   rT   rR   test_negative_countsr|  3  s    
:12rT   c            
         \        \        R  4       \        \        \        4      P                  \        \        3^ .4      \        \        \        4      8X  g   Q h\        \        \        4      P                  \        \        3^.4      \        \        \        \        \        4      \        4      \        \        \        \        4      \        4      .4      8X  g   Q h\        \        \        4      P                  \        \        \        3\        \        4      \        \        \        \        4      \        \        ^,           3\        ^34      8X  g   Q h\        \        .4      P                  \        ^4      \        ^ .4      8X  g   Q hR# )c                  L    \        \        4      P                  \        ^3^ 4      # r   rg  ro   rT   rR   r{   (test_Derivative__new__.<locals>.<lambda>9  s    adiiA2rT   N)
rA   r   rP   rF   rG   r   r=   r   rH   r,   ro   rT   rR   test_Derivative__new__r  8  s    
923Q7<<!Q$!Q///Q7<<!Q$	1Q7A
1Q7A 638 )9 9 9 9Qq6;;q1a&!Q':	!Q!QUaV,% % % %1#;Aq!VQC[000rT   c                      ! R  R\         4      p V ! 4       P                  V ! 4       4      \        V ! 4       V ! 4       4      8X  g   Q h^V ! 4       ,          P                  V ! 4       4      ^\        V ! 4       V ! 4       4      ,          8X  g   Q h ! R R\         4      pV! 4       P                  V! 4       4      ^8X  g   Q h^V! 4       ,          P                  V! 4       4      ^8X  g   Q hR# )c                       ] tR tRtRtRtRtR# )!test_issue_14719_10150.<locals>.ViC  TFro   N)r   r   r   r   r  	is_scalarr   ro   rT   rR   Vr  C  s    		rT   r  c                       ] tR tRtRtRtR# )!test_issue_14719_10150.<locals>.XiH  Tro   N)r   r   r   r   r  r   ro   rT   rR   Xr  H  s    	rT   r  N)r	   r   r   )r  r  s     rR   test_issue_14719_10150r  B  s    D  388AC=JqsAC0000acE<<*QS!#"6 6666D 388AC=AacE<<!!!rT   c                  2   \        R RR7      p \        RRR7      p\        RRR7      ! V 4      p\        RRR7      ! V4      p\        RRR7      pW$,          V,          pVP                  V4      pVP                  R,          VP                  V4      8X  g   Q hR# )	rF   FrO  rD   rh  Ftr  Nr~   )r   r   r   r8  )rF   rD   r  ftr  r   eqdts          rR   test_noncommutative_issue_15131r  N  s~    s&As&A	$E	*1	-B	$E	*1	-Bs&A	"B771:D99R=BGGAJ&&&rT   c            
      x  aa \        \        \        \        4      \	        \        4      4      \        \        4      \	        \        4      \        4      p \        \        \        \        \        4      \	        \        4      4      \        \        4      \	        \        4      4      \        4      p\        \        \        4      \	        \        4      4      P                  \        \        4      \	        \        4      \        4      p\        \        \        4      \	        \        4      4      P                  \        \        4      \	        \        4      4      P                  \        4      p\        \        \        \        4      \	        \        4      4      \        4      pWW#V3pR  o^\        ^,          ,          \        ^\        ,          4      ,          \        \        ^,          4      ,          \        ^\        ,          4      \        \        ^,          4      ,          \        ^,          ,          ,
          o\        ;QJ d     VV3R lV 4       F  '       d   K   RM	  RM! VV3R lV 4       4      '       g   Q h\        ;QJ d     VV3R lV 4       F  '       d   K   RM	  RM! VV3R lV 4       4      '       g   Q hR# )c           
      &   V P                  \        \        \        \        3\        \        \        ,           4      4      4      P                  \        \        4      ^\        ,          4      P                  \        \        4      \        ^,          4      # r   )rX   rP   r   rF   rG   r#   rh   r  )args   &rR   r{   &test_Subs_Derivative.<locals>.<lambda>`  sO    sxx61a&#a!e*#= 

$qtQqS/$$qtQT*+rT   c              3   r   <"   T F,  pS! V4      P                  4       P                  4       S8H  x  K.  	  R # 5irg   rs   r   r   r   ansrX   s   & rR   r   'test_Subs_Derivative.<locals>.<genexpr>c  s)     ;s!tAw||~$$&#-ss   47FTc              3      <"   T F:  pS! VP                  4       4      P                  4       P                  4       S8H  x  K<  	  R # 5irg   r  r  s   & rR   r   r  d  s2     BctAFFH~""$++-4cs   AAN)r   rP   rh   rF   r  r   r#   r{  )r}   rA  crk   rZ   eqsr  rX   s         @@rR   test_Subs_Derivativer  Y  st   1QqT1Q4=!A$!Q/A:a!admQqT1Q48;A	!A$!1Q41q)A	!A$!1Q41&++A.A1QqT1Q4=!$Aq/C+D
AqD&QqS/#ad)
#c!A#hs1a4y&8A&=
=C3;s;333;s;;;;;3BcB333BcBBBBBrT   c                  B    \        R 4      p V P                  R 8X  g   Q hR# )rP   N)r   rd  r   s    rR   test_issue_15360r  f  s    A66S==rT   c                  v    \         P                  R J g   Q h\        \        R 4       \        \        R 4       R# )Fc                       \        \         4      # rg   r   ro   rT   rR   r{   "test_issue_15947.<locals>.<lambda>m  s    adrT   c                  F    \        \        4      P                  \         4      # rg   rg  ro   rT   rR   r{   r  n  s    adiilrT   N)rP   r  rA   r   ro   rT   rR   test_issue_15947r  k  s)    ;;%
9l#
9*+rT   c                      \        R 4      p \        RRRR7      p\        V ! \        4      \        V34      P                  V\        08X  g   Q hR# )rP   r!  TrK  N)r   r   r   rF   r  )rP   r!  s     rR   test_Derivative_free_symbolsr  q  s@    AsD40A!q!f**q!f444rT   c                     \        R 4      p \        R4      p\        R4      p\        W 4      P                  V ^ 4      pVP                  ! 4       ^ 8X  g   Q h\        ^V 4      P                  V ^ 4      pVP                  ! 4       ^ 8X  g   Q hR# )rF   rG   rH   N)r   r   rX   rs   r   s      rR   test_issue_20683r  w  sq    sAsAsA1a"A668q==1aa"A668q==rT   c                     \        \        ^,          4      \        \        ^,          4      ,          p V P                  \        ^ ^4      ^\        ^,          ,           \        ^,          ^,          ,           \        ^	,          ^,          ,           ^\        ^,          ,          ^,          ,
          \	        \        ^,          4      ,           8X  g   Q hR# )rv   N)r#   rF   r'   rb  r.   r   s    rR   test_issue_10503r    sx    AqD	#ad)A88Aq"QTAqDF!2QT!V!;bBhrk!IAaQSeH!TTTTrT   c                      RR lp \        R4      p\        ^\        V4      ,          \        ^V,          4      ,          ^,
          V\        P                  4      pRpV ! V4      V8X  g   Q hR# )   c                 P    \        \        V 4      P                  ! V3/ VB R R7      # )T)	full_prec)r-   r7   r"  )rZ   r!  optionss   &&,rR   NStest_issue_17382.<locals>.NS  s#    GAJ$$Q2'2dCCrT   rF   zUnion(ImageSet(Lambda(_n, 6.28318530717959*_n + 5.79812359592087), Integers), ImageSet(Lambda(_n, 6.28318530717959*_n + 0.485061711258717), Integers))N)r  )r   r<   r'   r   Reals)r  rF   r  expecteds       rR   test_issue_17382r    s[    D 	sAAAJQU+a/AGG<DZH d8xrT   c                     a  ! R  R\         4      p V ! ^4      \        P                  J g   Q h ! R R\         4      o\        \        V3R l4       S! ^4       R# )c                   0   a  ] tR tRt o ]R 4       tRtV tR# )test_eval_sympified.<locals>.Fi  c                2    V\         P                  J g   Q h^# r   )r   r   r   s   &&rR   r   #test_eval_sympified.<locals>.F.eval  s    ::rT   ro   Nr   r   s   @rR   r  r    s     		 
	rT   r  c                   0   a  ] tR tRt o ]R 4       tRtV tR# )test_eval_sympified.<locals>.F2i  c                    V^ 8X  d   R# R# )r   1Nro   r   s   &&rR   r   $test_eval_sympified.<locals>.F2.eval  s    Av rT   ro   Nr   r   s   @rR   F2r    s     		 
	rT   r  c                     < S ! ^ 4      # r  ro   )r  s   rR   r{   %test_eval_sympified.<locals>.<lambda>  s	    ArT   N)r   r   r   rA   r8   )r  r  s    @rR   test_eval_sympifiedr    sD    H  Q4155==X  <'qErT   c                      \        \        4      ;_uu_ 4         ! R  R\        4      p RRR4       R#   + '       g   i     R# ; i)c                   &   a  ] tR tRt o R tRtV tR# )&test_eval_classmethod_check.<locals>.Fi  c                    R # rg   ro   )r  rF   s   &&rR   r   +test_eval_classmethod_check.<locals>.F.eval  s    rT   ro   N)r   r   r   r   r   r   r   r   s   @rR   r  r    s      rT   r  N)rA   r   r   )r  s    rR   test_eval_classmethod_checkr    s(    					 	 
			s	   2A	c                  (    \        \        R  4       R# )c                  *    \        \        \        4      # rg   )r   rP   rD   ro   rT   rR   r{   "test_issue_27163.<locals>.<lambda>  s    jA.rT   Nr  ro   rT   rR   test_issue_27163r    s    
9./rT   N)sympy.concrete.summationsr   r  r   r   sympy.core.cacher   sympy.core.containersr   r   sympy.core.exprr	   r
   r  r   r   r   r   r   r   r   sympy.core.numbersr   r   r   r   r   r   r   r   sympy.core.powerr   sympy.core.relationalr   sympy.core.singletonr   sympy.core.symbolr   r   r   $sympy.functions.elementary.complexesr    r!   &sympy.functions.elementary.exponentialr"   r#   (sympy.functions.elementary.miscellaneousr$   $sympy.functions.elementary.piecewiser%   (sympy.functions.elementary.trigonometricr&   r'   r(   'sympy.functions.special.error_functionsr)   ro  r*   r+   sympy.matrices.denser,   sympy.printing.strr-   sympy.series.orderr.   sympy.tensor.indexedr0   r1   r2   r3   r4   r5   sympy.core.parametersr6   sympy.core.sympifyr7   r8   sympy.matricesr9   r:   sympy.sets.setsr;   sympy.solvers.solvesetr<   sympy.tensor.arrayr=   sympy.utilities.iterablesr>   r?   sympy.testing.pytestr@   rA   rB   rC   r  rD   rE   rF   rG   rH   rP   rh   r  rz  rw  rv  _xi_3rS   r[   rc   re   ri   rl   rp   rt   r   r   r   r   r   r   r  r  r  r  r  r%  r(  r*  r-  r0  r2  r4  r6  r9  r=  rE  rM  rT  rX  rg  rk  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@  rF  rH  rM  rR  rW  r[  re  rk  rm  rq  rt  rx  r|  r  r  r  r  r  r  r  r  r  r  r  r  r  )r   s   0rR   <module>r     s   ) , ( - +   F F F   $ " 4 4 7 ; 9 : C C : G ' #   (. . - 4 9 % + ( 9 U U # #
'x
(1a(-a11uw1 ue +	/J96**88!%F FR71#1, IV
 4 4
<5+A2@OD"" 	& 	&'D:5,84M

,2.2"<JL4.n.,<-EAP1<B)J 
-"=	!G:
ZCzGG% &,2" > =4
#0$3
1	"'C
,5U

 
00Y, 2s   #I