+
    i;                    N	   ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIH	t	H
t
 ^ RIHt ^ RIHtHtHt ^ RI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Ht ^ R
I H!t!H"t" ^ RI#H$t$H%t% ^ RI&H't'H(t( ^ RI)H*t*H+t+ ^ RI,H-t-H.t.H/t/ ^ RI0H1t1 ^ RI2H3t3H4t4H5t5 ^ RI6H7t7 ^ RI8H9t9H:t:H;t;H<t<H=t=H>t>H?t?H@t@ ^ RIAHBtBHCtCHDtD ^ RIEHFtFHGtGHHtHHItIHJtJHKtK ^ RILHMtMHNtNHOtO ^ RIPHQtQ ^ RIRHStSHTtTHUtUHVtVHWtWHXtXHYtY ^ RIZH[t[H\t\H]t]H^t^ ^ RI_H`t` ^ RIaHbtb ^ RIcHdtdHeteHftfHgtgHhthHiti ^ RIjHktk ^ RIlHmtm ^ RInHotoHptp ^ RIqHrtr ^ R IsHtttHutu ^ R!IvHwtw ^ R"IxHyty ^ R#IzH{t{ ^ R$I|H}t} ^ R%I~HtHtHtHtHtHtHtHt ^ R&IHtHtHtHtHtHt ^ R'IHtHt ^ R(I&HtHtHt ^ R)IHtHtHtHtHtHtHtHtHt ^ R*IHtHtHt ^ R+IHt ^ R,IHt ^ R-IHt ^ R.IvHtHt ^ R/IHt ^ R0IHt ^ R1IHt ^ R2IHt ^ R3IZHtHt ^ RIt]t]! R44      t]! R5R6R7./R87      t]! R94      t]! R:4      t]! R;4      t]! R<4      t]! R=4      t]'       d   ^ RItR>]EPz                  R?&   ]! R@4      w  ttttRA tRB tRC tRD tRE tRF tRG tRH tRI tRJ t]RK 4       t]RL 4       t]RM 4       t]RN 4       t]RO 4       tRP tRQ tRR tRS tRT tRU tRV tRW tRX tRY tRZ tR[ tR\ tR] tR^ tR_ tR` tRa tRb tRc tRd tRe tRf tRg tRh tRi tRj tRk tRl tRm tRn tRo tRp tRq tRr tRs tRt tRu tRv tRw tRx tRy tRz tR{ tR| tR} tR~ tR Et R EtR EtR EtR EtR EtR EtR EtR EtR Et	R Et
R EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR EtR Et R Et!R Et"R Et#R Et$R Et%R Et&R Et'R Et(R Et)R Et*R Et+R Et,R Et-R Et.R Et/R Et0R Et1R Et2R Et3R Et4R Et5R Et6R Et7R Et8R Et9R Et:R Et;R Et<R Et=R Et>R Et?R Et@R EtAR EtBR EtCR EtDR EtER EtFR EtGR EtHR EtIR EtJR EtKR EtLR EtMR EtNR EtOR EtPR EtQR EtRR EtSR EtTR EtUR EtVR EtW ! R R4      EtXR EtYR EtZR Et[R Et\R Et]R Et^R Et_R# )    )productN)raiseswarns_deprecated_sympy)Sum)FunctionLambdadiff)EFloatIRational	all_closeoopi)Eq)S)Dummysymbols)RisingFactorial	factorial)	bernoulliharmonic)Abssign)explog)asinhacoshatanh)floor)MaxMinsqrt)	Piecewise)asinacosatancoscotsinsinctan)sinhcoshtanh)besselibesseljbesselkbesselyjnyn)betabetaincbetainc_regularized)	Heaviside)EierferfcfresnelcfresnelsSiCi)digammagammaloggamma	polygamma)zeta)Integral)AndfalseITENotOrtrue)
DotProductcse)derive_by_arrayArray)ArraySymbol)IndexedBaseIdxlambdify)numbered_symbols)
CoordSys3D)UnevaluatedExpr)expm1log1pexp2log2log10hypotisnanisinf)	logaddexp
logaddexp2aminamaxminimummaximum)cosm1powm1)reimarg)	
chebyshevt
chebyshevulegendrehermitelaguerre
gegenbauerassoc_legendreassoc_laguerrejacobi)MatrixMatrixSymbolSparseMatrix)PrintMethodNotImplementedError)LambdaPrinter)NumPyPrinter)implemented_function	lambdastr)skip)conserve_mpmath_dps)ignore_warnings)import_module)
uppergamma
lowergammanumpyscipyfromlistsparse)import_kwargsnumexpr
tensorflowcupyjaxnumba2TF_CPP_MIN_LOG_LEVELzw,x,y,zc                  d   a  \        . ^4      o \        \        V 3R l4       S ! 4       ^8X  g   Q hR# )   c                     < S ! R4      # )r    fs   a/var/www/html/photoedit/myenv/lib/python3.14/site-packages/sympy/utilities/tests/test_lambdify.py<lambda>test_no_args.<locals>.<lambda>Y   s	    ae    NrV   r   	TypeErrorr   s   @r   test_no_argsr   W   s%    QA
9m$3!8O8r   c                  Z    \        \        ^\        ,          4      p V ! ^4      ^8X  g   Q hR# )   NrV   xr   s    r   test_single_argr   ]   s"    AaCAQ4199r   c                  p    \        \        \        .\        \        ,           4      p V ! ^^4      ^8X  g   Q hR# r   N)rV   r   yr   s    r   test_list_argsr   b   s(    !QQAQ7a<<r   c                    aa \        \        \        ..\        \        .4      oS! ^[^.4      ^[^.8X  g   Q h\        \        V3R l4       \        \        \        3\
        \        3.\        \        \
        \        .4      oS! RR4      . RO8X  g   Q h\        \        V3R l4       \        \        \        ..\
        .\        .\        \        \
        \        .4      p V ! ^
^4..^.^,4      . RO8X  g   Q hR# )[   c                     < S ! ^^4      # r   r   )f1s   r   r   "test_nested_args.<locals>.<lambda>j       bAhr   c                     < S ! ^^4      #    r   )f2s   r   r   r   n   r   r   N)      )I      )r   r   r   r   )
   4      ,   )rV   wr   r   r   r   z)f3r   r   s    @@r   test_nested_argsr   g   s    	Aq6(QF	#Br1g;2q'!!!
9&'	Aq6Aq6"Q1aL	1Bh O333
9&'	1uaj!$q!Ql	3BbRD62,#'7777r   c                     a  \        R R4      o S ! ^^^4      R8X  g   Q hS ! RRR4      R8X  g   Q h\        \        V 3R l4       R# )	zx,y,zzz,y,x      ?       @      @c                     < S ! ^ 4      # r   r   r   s   r   r   test_str_args.<locals>.<lambda>y   	    adr   Nr   r   r   r   r   r   r   r   s   @r   test_str_argsr   t   sF    '"AQ1:"""S#s...
9l#r   c                      R  p \        \        \        \        4      RV /4      pV! R4      ^8X  g   Q hV! ^d4      ^8X  g   Q hR# )c                     ^# r   r   r   s   &r   r   &test_own_namespace_1.<locals>.<lambda>}   s    qr   r*   皙?NrV   r   r*   myfuncr   s     r   test_own_namespace_1r   |   s=    FCFUFO,AS6Q;;S6Q;;r   c                      R  p \        \        \        \        4      RV /4      pV! R4      ^8X  g   Q hV! ^d4      ^8X  g   Q hR# )c                     ^# r   r   r   s   &r   r   $test_own_namespace_2.<locals>.myfunc   s    r   r*   r   Nr   r   s     r   test_own_namespace_2r      s=    CFUFO,AS6Q;;S6Q;;r   c            	         \        \        \        \        4      \        4      p V ! ^ 4      R8X  g   Q h\	        RRR7      w  rp\        \        V\        W#,           4      ,           4      4      p\        WV.WD.\        R7      p V ! RRR
4      p\        P                  ! R4      .^,          p\        WV4       F$  w  rx\        Wx,
          V,          4      R8  d   K$  Q h	  R	# )r           zp q rT)realmodulesr   g NgmCV瞯<Ng Ngm)	rV   r   r*   mathr   absr   rY   zip)	r   pqraeresultsrefvalsresrefs	            r   test_own_moduler      s    CFD!AQ43;;gD)GA!	S?13''(	)B!RHd3AT5!Gxx}oaG)CGS=!E))) *r   c                  J    \        \        R  4       \        \        R 4       R# )c                      \        ^4      # r   rU   r   r   r   r   test_bad_args.<locals>.<lambda>   s    hqkr   c                      \        ^^.4      # r   rU   r   r   r   r   r      s    h1v.r   N)r   r   r   r   r   test_bad_argsr      s    
9)*
9./r   c                      \        \        \        \        ,           R R/4      p V ! ^ 4      R8X  g   Q h\        \        \        \        ,           RR/4      p V ! ^4      R8X  g   Q hR# )r   gQ	@r                 ?Ny      ?      ?)rV   r   r   r   r   s    r   
test_atomsr      sN    BFT4L)AQ44<<AEC9%AQ46>>r   c                  t   ^2\         P                  n        \         P                  ! R4      p \	        \
        \        \
        4      R4      pV! \
        4      \        \
        4      8X  g   Q hRpV) V! \        ^^4      4      P                  4       \        \        V 4      4      ,
          u;8  d	   V8  g   Q h Q hR# )2   40.19866933079506121545941262711838975037020672954020sympyr   N)mpmathmpdpsmpfrV   r   r*   r   evalfr   strsin02r   precs      r   test_sympy_lambdar      s    FIIMJJMNECFG$AQ43q6>>D51Xa^$**,uSZ/@@G4GGGGGr   c                  
  a ^2\         P                  n        \         P                  ! R4      p \	        \
        \        \
        4      R4      oRpV) S! R4      V ,
          u;8  d	   V8  g   Q h Q h\        \        V3R l4       R# )r   r   r   r   皙?c                     < S ! \         4      # Nr   r   s   r   r   "test_math_lambda.<locals>.<lambda>   	    adr   N)	r   r   r   r   rV   r   r*   r   r   )r   r   r   s     @r   test_math_lambdar     sa    FIIMJJMNECFF#AD51S6E>(D(((((
9l#r   c            	        a	 ^2\         P                  n        \         P                  ! R4      p \	        \
        \        \
        4      R4      o	RpV) S	! \         P                  ! R4      4      V ,
          u;8  d	   V8  g   Q h Q h\        \        V	3R l4       \         P                  ! R4      \         P                  ! R4      ^,          ,
          ^\         P                  ! R4      ,          ^,          ,           ^\         P                  ! R	4      ,          ^,          ,
          ^!\         P                  ! R
4      ,          ^(,          ,           p\	        \
        \        3\
        \        ,          ^,
          R4      p\	        \
        \        3\        \
        \        4      R4      p\	        \
        3\        \
        \        \
        4      ,          4      R4      pV! \         P                  ! R4      \         P                  ! R4      ,           \         P                  ! R4      4      pV! \         P                  ! R4      \         P                  ! R4      ,           \         P                  ! R4      4      pV! \         P                  ! R4      4      p\        Wb,
          4      R8  g   Q h\        Wr,
          4      R8  g   Q h\        W,
          4      R8  g   Q hR# )r   r   r   n5z0.2c                     < S ! \         4      # r  r   r   s   r   r   $test_mpmath_lambda.<locals>.<lambda>   r  r   z1e-30z1e-45z1e-60z1e-75z1e-901z1e-15gLoW5g[ݦe2g#aMR/N)r   r   r   r   rV   r   r*   r   r   r   ri   rZ   r[   r   )
r   r   ref2f2af2bf2cans2aans2bans2cr   s
            @r   test_mpmath_lambdar     s   FIIMJJMNECFH%AD51VZZ&'%/6$66666
9l# JJwjj!!#$

7##A%& 

7##A%& G$$R'	(D Aq61a4!8X
.C
Aq65A;
1C
A4qqz*H
5C

3

7 33VZZ5HIE

3

7 33VZZ5HIE

7#$Eu|u$$$u|u$$$u|u$$$r   c                      ^2\         P                  n        \         P                  ! R4      p \	        \
        V R4      pRpV) V! ^ 4      V ,
          u;8  d	   V8  g   Q h Q hR# )r   r   r   r  N)r   r   r   r   rV   r   r   s      r   test_number_precisionr     sR    FIIMJJMNEE8$AD51Q4%<&$&&&&&r   c                      ^d\         P                  n        \        \	        R\
        P                  ! ^d4      R4      ! 4       4      \        \
        P                  ! ^d4      4      8X  g   Q hR# )d   r   Nr   )r   r   r   r   rV   r   r   r   r   r   test_mpmath_precisionr     sA    FIIMxBHHSM84673rxx};MMMMr   c                      ^ RI Hp  V P                  4        F3  w  rV\        P                  9   g   Q hV\
        P                  9   d   K3  Q h	  R# )r   )MATH_TRANSLATIONSN)sympy.utilities.lambdifyr  itemsr   __dict__r   )r  symmats      r   test_math_translr     s>    :%++-enn$$$dmm### .r   c                      ^ RI Hp  V P                  4        F:  w  rV\        P                  9   g
   VR8X  g   Q hV\
        P                  9   d   K:  Q h	  R# )r   )MPMATH_TRANSLATIONSrv   N)r  r   r  r   r  r   )r   r  r  s      r   test_mpmath_translr!     sD    <'--/enn$x77foo%%% 0r   c                      \         '       g   \        R 4       ^ RIHp  V P	                  4        F3  w  rV\
        P                  9   g   Q hV\         P                  9   d   K3  Q h	  R# )numpy not installed.)NUMPY_TRANSLATIONSN)r   r~   r  r$  r  r   r  )r$  r  numps      r   test_numpy_translr&     sL    5#$;'--/	enn$$$u~~%%% 0r   c                     \         '       g   \        R 4       ^ RIHp  V P	                  4        FT  w  rV\
        P                  9   g   Q hV\         P                  9   d   K3  V\         P                  P                  9   d   KT  Q h	  R# )scipy not installed.)SCIPY_TRANSLATIONSN)r   r~   r  r)  r  r   r  special)r)  r  scips      r   test_scipy_translr,    s]    5#$;'--/	enn$$$u~~%1G1G)GGG 0r   c                      \         '       g   \        R 4       \        \        \	        \        4      R4      p V ! R4      ^8X  g   Q hV ! ^4      ^8X  g   Q hR# )r#  r   Nr   )r   r~   rV   r   r   r   s    r   test_numpy_translation_absr.    sB    5#$CFG$AR5A::Q4199r   c                  l   \         '       g   \        R 4       ^ RIHp  Rp\        \
        \        3pV P                  P                  4        Fe  pW19   d   K  \        V4      p\        VR4      '       d   VP                  ^ ,          pM^pVRV p\        Wd! V!  RR7      pV! RV,          !  e   Ke  Q h	  R# )numexpr not installed.)NumExprPrinter_nargsNr   r   )wherecomplexcontainsr   )r   r~   sympy.printing.lambdareprr1  r   r   r   _numexpr_functionskeysr   hasattrr2  rV   )r1  	blacklist	arg_tupler  ssymnargsargsr   s           r   test_numexpr_printerr?    s    7%& 90IAq	I00557v4""KKNEE% T4;	:%+*** 8r   c                     \        \        \        \        4      R 4      p V ! ^ 4      ^ 8X  g   Q hV ! ^4      ^8X  g   Q hV ! ^4      ^8X  g   Q h\        V ! ^4      R,
          4      R8  g   Q hV ! R4      R8X  g   Q hV ! R4      R8X  g   Q hR# )cmath9v?MbP?r                  @Nr   rV   r   r#   r   r   s    r   test_cmath_sqrtrG  2  s    DGW%AQ4199Q4199Q4199qte|u$$$R5B;;R5B;;r   c                  @   \        \        \        \        4      R 4      p \        V ! ^4      ^ ,
          4      R8  g   Q h\        V ! \        P
                  4      ^,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# )rA  r   Nr   )rV   r   r   r   rA  er   s    r   test_cmath_logrJ  <  sq    CFG$Aqtax=5   qzA~&&&quuyy}$%---r   c                     \        \        \        \        4      R 4      p \        V ! ^ 4      \        P                  ! ^ 4      ,
          4      R8  g   Q h\        V ! \
        4      \        P                  ! \
        4      ,
          4      R8  g   Q h\        V ! \
        ) 4      \        P                  ! \
        ) 4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# rA  r   r   N)rV   r   r-   r   rA  r   r   s    r   test_cmath_sinhrM  C      DGW%Aqtejjm#$u,,,quuzz"~%&...q"v

B3'(5000quuzz"~%&...r   c                     \        \        \        \        4      R 4      p \        V ! ^ 4      \        P                  ! ^ 4      ,
          4      R8  g   Q h\        V ! \
        4      \        P                  ! \
        4      ,
          4      R8  g   Q h\        V ! \
        ) 4      \        P                  ! \
        ) 4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# rL  )rV   r   r.   r   rA  r   r   s    r   test_cmath_coshrP  K  rN  r   c                     \        \        \        \        4      R 4      p \        V ! ^ 4      \        P                  ! ^ 4      ,
          4      R8  g   Q h\        V ! \
        4      \        P                  ! \
        4      ,
          4      R8  g   Q h\        V ! \
        ) 4      \        P                  ! \
        ) 4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# rL  )rV   r   r/   r   rA  r   r   s    r   test_cmath_tanhrR  S  rN  r   c                     \        \        \        \        4      R 4      p \        V ! ^ 4      \        P                  ! ^ 4      ,
          4      R8  g   Q h\        V ! \
        4      \        P                  ! \
        4      ,
          4      R8  g   Q h\        V ! \
        ) 4      \        P                  ! \
        ) 4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# rL  )rV   r   r*   r   rA  r   r   s    r   test_cmath_sinrT  [      CFG$Aqteiil"#e+++quuyy}$%---q"v		2#&'%///quuyy}$%---r   c                     \        \        \        \        4      R 4      p \        V ! ^ 4      \        P                  ! ^ 4      ,
          4      R8  g   Q h\        V ! \
        4      \        P                  ! \
        4      ,
          4      R8  g   Q h\        V ! \
        ) 4      \        P                  ! \
        ) 4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# rL  )rV   r   r(   r   rA  r   r   s    r   test_cmath_cosrW  c  rU  r   c                     \        \        \        \        4      R 4      p \        V ! ^ 4      \        P                  ! ^ 4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# rL  )rV   r   r,   r   rA  r   s    r   test_cmath_tanrY  k  s\    CFG$Aqteiil"#e+++quuyy}$%---r   c                  @   \        \        \        \        4      R 4      p \        V ! ^ 4      \        P                  ! ^ 4      ,
          4      R8  g   Q h\        V ! ^4      \        P                  ! ^4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q h\        V ! ^4      \        P                  ! ^4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# rA  r   r   Nr   )rV   r   r%   r   rA  r   s    r   test_cmath_asinr\  q      DGW%Aqtejjm#$u,,,qtejjm#$u,,,quuzz"~%&...qtejjm#$u,,,quuzz"~%&...r   c                     \        \        \        \        4      R 4      p \        V ! ^4      \        P                  ! ^4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q h\        V ! ^4      \        P                  ! ^4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# r[  )rV   r   r&   r   rA  r   s    r   test_cmath_acosr_  z  s    DGW%Aqtejjm#$u,,,quuzz"~%&...qtejjm#$u,,,quuzz"~%&...r   c                  @   \        \        \        \        4      R 4      p \        V ! ^ 4      \        P                  ! ^ 4      ,
          4      R8  g   Q h\        V ! ^4      \        P                  ! ^4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q h\        V ! ^4      \        P                  ! ^4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# rA  r   rD  Nr   )rV   r   r'   r   rA  r   s    r   test_cmath_atanrb    r]  r   c                  @   \        \        \        \        4      R 4      p \        V ! ^ 4      \        P                  ! ^ 4      ,
          4      R8  g   Q h\        V ! ^4      \        P                  ! ^4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q h\        V ! ^4      \        P                  ! ^4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# ra  )rV   r   r   r   rA  r   s    r   test_cmath_asinhrd    s    E!Hg&Aqtekk!n$%---qtekk!n$%---quu{{2&'%///qtekk!n$%---quu{{2&'%///r   c                     \        \        \        \        4      R 4      p \        V ! ^4      \        P                  ! ^4      ,
          4      R8  g   Q h\        V ! ^4      \        P                  ! ^4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# ra  )rV   r   r   r   rA  r   s    r   test_cmath_acoshrf    s    E!Hg&Aqtekk!n$%---qtekk!n$%---quu{{2&'%///quu{{2&'%///r   c                     \        \        \        \        4      R 4      p \        V ! ^ 4      \        P                  ! ^ 4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q h\        V ! ^4      \        P                  ! ^4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q h\        V ! R4      \        P                  ! R4      ,
          4      R8  g   Q hR# )rA  r         ?rD  N      )rV   r   r   r   rA  r   s    r   test_cmath_atanhrk    s    E!Hg&Aqtekk!n$%---qvC(()E111qwT**+e333qtekk!n$%---quu{{2&'%///quu{{2&'%///r   c                     \        R 4      p \        V 4      \        \        V 4      4      \        \	        V 4      4      ,          ,
          \
        \        \        V 4      4      ,          \        \	        V 4      4      ,          ,           p\        V .VRR.R7      p\        P                  ^,          p\        V! VRV,          ,           4      4      R8  g   Q h\        V .\        \
        V ,          4      \        V 4      \
        \        V 4      ,          ,           ,
          RR.R7      p\        V! V4      4      R8  g   Q h\        V .\        V 4      \        \        V 4      4      \        \	        V 4      4      \
        \        \	        V 4      4      ,          ,           ,          ,
          RR.R7      p\        V! VRV,          ,           4      4      R8  g   Q h\        V .\        V 4      \        \        V 4      4      \        \	        V 4      4      ,          \
        \        \        V 4      4      ,          \        \	        V 4      4      ,          ,
          ,
          RR.R7      p\        V! VRV,          ,           4      4      R8  g   Q h\        V .\        V 4      \        \        V 4      4      \        \	        V 4      4      ,          \
        \        \        V 4      4      ,          \        \	        V 4      4      ,          ,           ,
          RR.R7      p\        V! VRV,          ,           4      4      R8  g   Q h\        V .\        V 4      \        \        V 4      4      \        \	        V 4      4      ,          \
        \        \        V 4      4      ,          \        \	        V 4      4      ,          ,           ,
          RR.R7      p\        V! VRV,          ,           4      4      R8  g   Q h\        V .\        V 4      \        \        V 4      4      \        \	        V 4      4      ,          \
        \        \        V 4      4      ,          \        \	        V 4      4      ,          ,           ,
          RR.R7      p\        V! VRV,          ,           4      4      R8  g   Q h\        V .\        V 4      \        V 4      \        V ) 4      ,           ^,          ,
          RR.R7      p	\        V	! V4      4      R8  g   Q h\        \        V 4      4      \        \	        V 4      4      ,           \        \        V 4      \	        V 4      ,          4      ,
          p
\        \        V 4      4      \        \	        V 4      \
        ,          4      ,          \        V 4      ,
          p\        \        \        V 4      4      4      \        V 4      ,
          p\        \        \        V 4      4      4      \        V 4      ,
          p\        \        \        V 4      \	        V 4      ,           4      4      \        V 4      \	        V 4      ,           ,
          p\        \        \        V 4      \	        V 4      ,           4      4      \        V 4      \	        V 4      ,           ,
          p\        V .V
RR.R7      p\        V .VRR.R7      p\        V .VRR.R7      p\        V .VRR.R7      p\        V .VRR.R7      p\        V .VRR.R7      pRp\        V! V4      4      R8  g   Q h\        V! V4      4      R8  g   Q h\        V! V4      4      R8  g   Q h\        V! V4      4      R8  g   Q h\        V! V4      4      R8  g   Q h\        V! V4      4      R8  g   Q hR# )r   rA  r   r   r   gؗҼ<N      @      @)r   r(   rj   r.   rk   r   r*   r-   rV   r   r   r   r   r   )r   exprfunchpifunc_expfunc_cosfunc_sinfunc_cosh_1	func_sinhfunc_cosh_2expr1expr2expr3expr4expr5expr6func1func2func3func4func5func6
test_values                          r   test_cmath_complex_identitiesr    sw   A q6C1Jbe,,q3r!u:~RU/KKDQC'89D
''A+CtC"s(N#$u,,, QCQUs1vCF
':;gvEVWDtCy>E!!! SVc"Q%jC1JSAZ4O&PP!(& 13Hxb3h'(5000 SVs2a5zDAK'?!c"Q%j.SWXZ[\X]S^B^'^_!(& 13Hxb3h'(5000 SVs2a5zDAK'?!c"Q%j.SWXZ[\X]S^B^'^_!(& 13Hxb3h'(5000 A3Q41;RU+Ca$rRSu+oX[\^_`\aXbFb+b c")6!24K{3c>*+e333 !d1gbes2a5z)AARPQUOVYZ\]^Z_V`D`)`a")6!24IyrCx()E111 A3Q3q6CG+;q*@ @7TZJ[\K{3 5((( 1JRU#c"Q%"Q%-&88E1JRUQY'#a&0EBqE
Obe#EBqE
Obe#EBqEBqEM"#r!ur!u}5EBqEBqEM"#r!ur!u}5EaS%'6):;EaS%'6):;EaS%'6):;EaS%'6):;EaS%'6):;EaS%'6):;EJuZ !E)))uZ !E)))uZ !E)))uZ !E)))uZ !E)))uZ !E)))r   c                  (   \         '       g   \        R 4       \        '       g   \        R4       \        R4      p \	        V P
                  R R7      w  r\        W3V \         .RR7      p\        P                  P                  R4      w  rEV! WE4       R# )	r0  r#  zb*a - sqrt(a**2)c                     V P                   # r  )name)ss   &r   r   !test_issue_9334.<locals>.<lambda>  s    166r   )keyF)r   dummifyNr   r   )r   r~   r   r   sortedfree_symbolsrV   random)rn  abfunc_numexprfoobars         r   test_issue_9334r    sp    7%&5#$ D$##)9:DAQE4'EJL||""6*HCr   c            	      |   \         '       g   \        R 4       \        \        \        \
        3\        \        \        ^ 8  3\
        \        R8  34      \         4      p \        \        4      ;_uu_ 4        V ! ^^^*4      ^8X  g   Q h\        V ! R^^*4      4      R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)r0  nanNr   )
r   r~   rV   r   r   r   r$   r   RuntimeWarningr   )r  s    r   test_issue_12984r    s    7%&QqGY16{QBK%H'RL		(	(Ar2&",,,<B+,555 
)	(	(	(s   3,B**B;	c                      \        R 4      w  rW,          ) p\        W.V4      p\        W.V. R7      pV! ^^4      V! ^^4      8X  g   Q hV! ^^4      R8X  g   Q hR# )zx yr   Nr   rV   )r   r   rn  
no_modulesempty_moduless        r   test_empty_modulesr    se    5>DAU8D1&$'JaVT26Ma}Q2222ar!!!r   c                      \        \        \        ^,          4      p V ! R4      ^8X  g   Q hV ! ^ 4      ^ 8X  g   Q hV ! ^4      ^8X  g   Q hV ! R4      ^8X  g   Q hV ! ^4      ^8X  g   Q hV ! R4      R8X  g   Q hR# )r         @      @Nr   rj  r   r   s    r   test_exponentiationr    sr    AqDAR5A::Q4199Q4199R5A::Q4199S6T>>r   c                      \        \        \        \        4      4      p V ! ^ 4      R8X  g   Q hV ! ^4      R8X  g   Q hV ! ^4      R8X  g   Q h\        V ! ^4      R,
          4      R8  g   Q hV ! R4      R8X  g   Q hR# )	r   r   r   r   rB  rC  r  r  NrF  r   s    r   	test_sqrtr    sm    DGAQ43;;Q43;;Q43;;qte|u$$$T7c>>r   c                     \        \        .\        \        4      \        \        4      .R 4      p V ! \        4      pRpV) V^ ,          ^,           u;8  d	   V8  g   Q h Q hV) V^,          u;8  d	   V8  g   Q h Q hV ! R4      pRpV) V^ ,          ^,           u;8  d	   V8  g   Q h Q hV) V^,          u;8  d	   V8  g   Q h Q hR# )r   gdy=n!	@gh㈵>N)rV   r   r(   r*   r   )r   dr   s      r   	test_trigr    s    !s1vs1v&/A	"AD51Q4!8"d"""""51Q4$	'
AD51Q4!8"d"""""51Q4$r   c            	      >   \         '       d   \        '       g   \        R 4       \        \        \        \        ^,          ) 4      4      p \        \        \        V ! \        4      \        \        \        34      4      pV! \        ) 4      pRTu;8  d	   R8  g   Q h Q hR# )r(  giv[?gm[?N)
r   r   r~   r   r   r   rV   r   rF   r   )r   lr  s      r   test_integralr  %  sk    uUU#$q#q!te*AHQqTAq":./A	2#A'K'''''r   c                  :   \         '       d   \        '       g   \        R 4       \        ^^\        ^,          \
        ^,          ,          ,
          ,          \        ^ ^3\
        ^ \        34      p \        \        .V 4      pV! ^4      pRTu;8  d	   R8  g   Q h Q hR# )r(  gX<?g<?N)r   r   r~   rF   r   r   r   rV   )ir  r  s      r   test_double_integralr  .  ss    uUU#$A1QT	M"Q1I1ay9A!aA	!A'K'''''r   c                     \         '       d   \        '       g   \        R 4       Rp \        R4      p\	        ^V4      p\        \        W4      ! V 4      VP                  W4      P                  4       ,
          4      R8  g   Q h\        ^V4      p\        \        W4      ! V 4      VP                  W4      P                  4       ,
          4      R8  g   Q hR# )r(  g@r   :0yE>N)
r   r   r~   r   r4   r   rV   subsr   r5   )
test_pointr   jtestytests       r   test_spherical_besselr  7  s    uUU#$JAq!HEx ,JJq$**,- .045 5 5q!HEx ,JJq$**,- .045 5 5r   c                     a  \        \        \        \        3\        \        \        34      o S ! ^^^4      R8X  g   Q hS ! RRR4      R8X  g   Q h\	        \
        V 3R l4       R# )r   r   r   r   c                     < S ! ^ 4      # r   r   r   s   r   r   $test_vector_simple.<locals>.<lambda>L  r   r   Nr   r   )rV   r   r   r   r   r   r   s   @r   test_vector_simpler  G  sR    !QQ1I&AQ1:"""S#s...
9l#r   c                     a  \        \        R\        ,          ^\        ,          34      o \        \        V 3R l4       S ! ^4      R8X  g   Q hS ! ^4      R8X  g   Q hS ! R4      R8X  g   Q hR# )r   c                     < S ! ^ 4      # r   r   r   s   r   r   +test_vector_discontinuous.<locals>.<lambda>Q  s	    adr   Nr   )g      r   )ri  rh  rj  )rh  ri  )rV   r   r   ZeroDivisionErrorr   s   @r   test_vector_discontinuousr  O  s\    RT1Q3K A
l+Q4;Q4;R5Kr   c                      \        \        .\        \        4      \        \        4      .R 4      p V ! \        4      p\        V^ ,          ^,           4      R8  g   Q h\        V^,          ^ ,
          4      R8  g   Q hR# )r   -C6?N)rV   r   r(   r*   r   r   r   r  s     r   test_trig_symbolicr  W  s\    !s1vs1v&/A	"Aqtax=6!!!qtax=6!!!r   c                      \        \        .\        \        4      \        \        4      .4      p V ! R 4      p\	        V^ ,          ^,           4      R8  g   Q h\	        V^,          ^ ,
          4      R8  g   Q hR# )r  r  N)rV   r   r(   r*   r   r  s     r   test_trig_floatr  ^  sZ    !s1vs1v&'A	'
Aqtax=6!!!qtax=6!!!r   c                     \        \        \        ^,          4      p V ! ^4      ^8X  g   Q h\        \        \        \        .\        \        \        .4      p V ! ^^^4      . RO8X  g   Q h\        \        \	        \        4      4      p V ! ^4      R8X  g   Q h\        \        \        3\        \        \        ,          4      ^,          4      p V ! ^ ^4      ^ 8X  g   Q hR# )r   r   Nr   r   r   )rV   r   r   r   r#   r*   r   s    r   	test_docsr  e  s    AqDAQ4199!QQ1I&AQ1:"""DGAQ43;;!QQqS1%AQ7a<<r   c                  p    \        \        \        3\        \        4      R R7      p V ! ^ ^4      ^ 8X  g   Q hR# )r   r   N)rV   r   r   r*   r   s    r   	test_mathr  p  s*    !QQ0AQ7a<<r   c                     \        \        \        \        4      ^,          4      p \        V ! ^4      \        4      '       g   Q h\        \        \        \        4      ^,          RR7      p \        V ! ^4      \        4      '       g   Q hR# )r   r   r   N)rV   r   r*   
isinstancefloatr   s    r   test_sinr  u  sZ    CFAIAadE""""CFAIv.AadE""""r   c                     \        \        \        \        ,          .\        \        4      ^,           \        \        ,          ..4      p \        ^^.\        ^4      ^,           ^..4      p\        \        \        \        3V RR7      pV! ^^^4      V8X  g   Q h\        \        \        \        3W .3RR7      pV! ^^^4      W.38X  g   Q h\        \        \        \        ,           34      P                  \        \        34      p\        \        \        34      p\        ^^ .^^..4      p\        WCRR7      ! ^^4      V8X  g   Q h\        VP                  VRR7      ! ^^4      V8X  g   Q hR# )r   r   r   N)rv   r   r   r*   r   rV   jacobianT)Asolr   Jvs        r   test_matrixr  |  s(   AaC3q6A:q!t,-.A
1a&3q6A:q/*
+C!QAw/AQ1:!QQHg6AQ1:#u%%%1q5z##QF+A1vA
1a&1a&!
"CA'*1a0C777ACCG,Q2c999r   c                    aa	a
 \         '       g   \        R 4       \        \        \        \        ,          .\        \        4      ^,           \        \        ,          ..4      p \         P                  ^^.\         P                  ^4      ^,           ^..4      p\        \        \        \        3V R.4      p\         P                  P                  V! ^^^4      V4       \        V! ^^^4      \         P                  4      '       g   Q h ! R R\        4      pV! \        \        ^.^.^ ..4      4      o
\        \        S
4      p\         P                  R4      o\         P                  V! S4      ^ 8H  4      '       g   Q hRRRRRR/p\!        \#        RR	RR//VB 4      p\        \        S
VR
7      p\         P                  V! S4      ^ 8H  4      '       g   Q h\!        V4      o	\%        \&        VV	V
3R l4       R# )r#  r   c                       ] tR tRtRtR# )test_numpy_matrix.<locals>.doti  r   N)__name__
__module____qualname____firstlineno____static_attributes__r   r   r   dotr    s    r   r  allow_unknown_functionsFinlineTfully_qualified_modulesuser_functionsprinterc                  4   < \        \        SSR 7      ! S 4      # r  r   )inpp3	x_dot_mtxs   r   r   #test_numpy_matrix.<locals>.<lambda>  s    hq)R@Er   N)   r   r   )r   r~   rv   r   r   r*   r   arrayrV   testingassert_allcloser  ndarrayr   zerosallr{   dictr   	Exception)r  sol_arrr   r  f_dot1	strict_kwp2f_dot2r  r  r  s           @@@r   test_numpy_matrixr    s   5#$AaC3q6A:q!t,-.AkkAq6EIIaL1$4a#89:G!QAy)A	MM!!!Aq!*g6a1aj%--0000h AvsQC!o./Ia#F
++g
C99VC[A%&&&&*E8TC\^cdI	dF5%.FIF	GBaB/F99VC[A%&&&&	i	 B
9EFr   c                     \         '       g   \        R 4       \        ^\        .^ ^..4      p \	        \        V P
                  RR7      p\         P                  P                  V! ^4      \         P                  ^^ .^^..4      4       R# )r#  r   r   N)	r   r~   rv   r   rV   r  r  assert_array_equalr  r  r   s     r   test_numpy_transposer    sg    5#$AA A!acc7+A	MM$$QqT5;;AA7G+HIr   c                     \         '       g   \        R 4       \        \        \        \
        .4      p \        \        \        \
        .\        W 4      RR7      p\        \        \        \
        .\        W P                  4      RR7      p\        \        \        \
        .\        V P                  V 4      RR7      p\        \        \        \
        .\        W P                  4      RR7      pV! ^^^4      V! ^^^4      u;8X  d=   V! ^^^4      u;8X  d-   V! ^^^4      u;8X  d   \         P                  ^.4      8X  g   Q h Q hR# )numpy not installedr   r   N)
r   r~   rv   r   r   r   rV   rM   r  r  r  r   r   r   f4s        r   test_numpy_dotproductr    s    5"#1ayA	1a)Z-w	?B	1a)Z33/	AB	1a)ZQ/	AB	1a)Z33/	ABaA;aA;aA; aA; ;;t	    r   c                     \         '       g   \        R 4       \        ^\        .^ ^..4      p \	        \        V R,          RR7      p\         P
                  P                  V! ^4      \         P                  ^R.^ ^..4      4       R# )r#  r   r   Nr   rj  )r   r~   rv   r   rV   r  r  r  r  s     r   test_numpy_inverser    sg    5#$AA A!aeW-A	MM$$QqT5;;B!a7I+JKr   c            	         \         '       g   \        R 4       \        \        \        \        ,          .\        \        4      ^,           \        \        ,          ..4      p \         P                  ^^.\         P                  ^4      ^,           ^..4      p\        \        \        \        3V R\         P                  /R.4      p\        \        4      ;_uu_ 4        \         P                  P                  V! ^^^4      V4       \        V! ^^^4      \         P                  4      '       g   Q h RRR4       R#   + '       g   i     R# ; i)r#  ImmutableDenseMatrixr   N)r   r~   rv   r   r   r*   r   r  rV   matrixr   PendingDeprecationWarningr  r  r  )r  r  r   s      r   test_numpy_old_matrixr
    s    5#$AaC3q6A:q!t,-.AkkAq6EIIaL1$4a#89:G!QA!7 FPQA	2	3	3%%a1aj':!Aq!*ell3333 
4	3	3	3s   AD77E	c                      \         '       g   \        R 4       \        \        ^ .^ \        ..4      p \        \        \        3V RR7      pV! ^^4      p\        V\         P                  P                  4      '       g   Q hR# )r(  r   r   N)	r   r~   rx   r   r   rV   r  r   
coo_matrix)r  r   Bs      r   test_scipy_sparse_matrixr    sa    5#$q!fq!f%&A!QG,A	!QAa001111r   c            
      `   \         '       g   \        R 4       \        ^\        ,          \        R	8  3\        \        ^8  3^\        ,          R34      p \        \        \        .V RR7      p\         P                  RR7      ;_uu_ 4        \        V! \         P                  ^ 4      \         P                  R4      4      4      ^ 8X  g   Q h\        V! \         P                  ^ 4      \         P                  ^4      4      4      \        R4      8X  g   Q h RRR4       R#   + '       g   i     R# ; i)
r#  Tr   r   ignore)dividerh  infNr   )	r   r~   r$   r   r   rV   errstater  r  )r   r   s     r    test_python_div_zero_issue_11306r    s    5#$1q5!b&/Aq1u:At}=A!QG,A	x	(	(Qu{{1~u{{3'789Q>>>Qu{{1~u{{1~675<GGG 
)	(	(	(s   	BDD-	c                  ^   R R.p \         '       d   V P                  R4       \        '       d   V P                  R4       V  F  p\        \        \
        P                  \        ,          VR7      pV! ^4      R8X  g   Q h\        \        \        \
        P                  \        ,          4      VR7      pV! ^4      ^ 8X  d   K  Q h	  \        \        \        .V 4       FN  w  r4\        \        V! \        4      VR7      pV! R4      ^8X  g   Q hV! ^4      ^8X  g   Q hV! R4      ^8X  d   KN  Q h	  R # )Nr   r   r   r   rh  r   rm  )r   appendr   rV   r   r   Oner    r   r   r   )modsmodr   absfuncr   s        r   test_issue9474r    s    &>DuGvHQa-ts{{QaeeAg4tqyy	  $S#J5Q
G4uzztqyyw!||	 6r   c                  b   \         '       g   \        R 4       \        '       g   \        R4       \        \        ^,          \
        ^,          ,           4      p \        ^V ,          \        4      p\        P                  ^^
^4      ;r#\        P                  R4      R	,          ) VR
,          ,          p\        \        \
        3VRR7      ! W#4      p\        \        \
        3VRR7      ! W#4      p\        P                  P                  WTRR7       \        P                  P                  WdRR7       R# )r0  r#  r   r   r   r   绽|=)rtolNr  rj  )r   r~   r   r#   r   r   r	   linspacerV   r  r  )r   rn  xnr5   fv_exactfv_numpy
fv_numexprs          r   test_issue_9871r$    s    7%&5#$QTAqD[A!Q<DnnQB''B

2""RV+HAg6r>H1a&$	:2BJ	MM!!(5!A	MM!!*U!Cr   c            	      x   \         '       g   \        R 4       \        \        \        ^8  3\        ^,          \        ^8  3R4      p \	        \        V RR7      p\         P
                  P                  V! \         P                  ^
4      4      \         P                  . RO4      4       \	        \        \        \        \        ^ 8  3\        ) \        ^ 8  34      4      p\         P
                  P                  V! \         P                  . RO4      4      \         P                  ^\         P                  ^.4      4       R# )r#  r   r   N)r   T)
r   r   r   r   r   r   $   1   @   Q   r   r   r   )
r   r~   r$   r   rV   r  r  aranger  r  )piecesr   
nodef_funcs      r   test_numpy_piecewiser.    s    5#$1q5zAqD!a%=)<FFG,A	MM$$Qu||B'7%8%*[[1S%TV !Y1q5zQBA;?@J	MM$$ZJ0G%H%*[[!UYY1B%CEr   c                     \         '       g   \        R 4       \        \        \        3\        \        \        4      RR7      p \        \        \        \        3\        \        \        \        4      RR7      p\        \        \        3\        \        \        4      RR7      p\        \        \        \        3\        \        \        \        4      RR7      p\        \        \        \        4      RR7      p\         P                  RR.4      p\         P                  RR.4      p\         P                  RR.4      p\         P                  P                  V ! WV4      \         P                  RR.4      4       \         P                  P                  V! WVV4      \         P                  RR.4      4       \         P                  P                  V! WV4      \         P                  RR.4      4       \         P                  P                  V! WVV4      \         P                  RR.4      4       \         P                  P                  V! V4      \         P                  RR.4      4       R# )r#  r   r   TFN)r   r~   rV   r   r   rG   r   rK   rJ   r  r  r  )and_func
and_func_3or_func	or_func_3not_funcarr1arr2arr3s           r   test_numpy_logical_opsr8    s   5#$AAq	7;H1a)SAq\7CJ1vr!Qx9G!QBq!QKAISVW5H;;d|$D;;t}%D;;e}%D	MM$$Xd%95;;t};UV	MM$$ZD%A5;;PUW\~C^_	MM$$WT%8%++tTl:ST	MM$$Yt4%@%++tUYlB[\	MM$$Xd^U[[$5OPr   c                     \         '       g   \        R 4       \        \        \        .\
        ^\
        ,           ..4      p \        \        ^,          .\        \        4      ..4      p\        \        \        \
        3W,          RR7      p\         P                  P                  V! R^^4      \         P                  R.R..4      4       \         P                  P                  V! R
^^4      \         P                  R.R..4      4       \        \        \        \
        3W ,          V ,          RR7      p\         P                  P                  V! R^^4      \         P                  RR.^^..4      4       R	# )r#  r   r   rh  g      ?      @g      ?g     R@g     ]@Nri  )r   r~   rv   r   r   r   r   rV   r  r  r  )xmatymatmat_funcr   s       r   test_numpy_matmulr>  *  s   5#$Aq6Aqs8$%DAqD6CF8$%DAq	49g>H	MM$$Xc1a%8%++wQTPUFV:WX	MM$$XdAq%95;;RUQVGW;XY!QDIdNG<A	MM$$QsAq\5;;@PADc
@L 4M Nr   c            	         \         '       g   \        R 4       \        '       g   \        R4       \         P                  P	                  ^^^4      w  rp\        \        4      \        \        4      ,           \        \        4      ^,          ,           \        \        \        ,
          4      \        \        \        \        ,          4      4      ,          ,           \        \        \        ,
          4      \        ^\        \        \        ,
          4      ,           4      ,          ,           \        \        ^,          \         \        ^,          ,          ,           4      ,
          p\#        \        \        \        3VRR7      p\#        \        \        \        3VRR7      p\         P%                  V! WV4      V! WV4      4      '       g   Q hR# )r#  r0  r   r   r   N)r   r~   r   r  randnr*   r   r(   r   r,   r   r   r&   r   r   r#   r   rV   allclose)r  r  crn  npfuncnefuncs         r   test_numpy_numexprrE  8  s   5#$7%&ll  C-GA!q6CF?SVQY&QqS$s1Q3x.)@@qs8E!C!H*%%&'+AqD1a4K'89Dq!Qiw7Fq!Qiy9F>>&q/6!?;;;;r   c                  l   \         '       g   \        R 4       \        '       g   \        R4       \         P                  P	                  ^^
4      w  r\        R\        3R\        R 4      /4      p\        \        ^V! \        4      ,
          RR7      p\         P                  V! V 4      V ^,          ) 4      '       g   Q h\        \        R4      R 4      p\        \        \        3V! \        \        4      RR7      p\         P                  V! W4      ^V ,          V,          ^,           4      '       g   Q hR# )	r#  r0  ufevalc                 "    V^,          ^,           # r   r   r   r   s   &&r   r   ,test_numexpr_userfunctions.<locals>.<lambda>M  s    !Q$q&r   r   r   c                 0    ^V ,          V,          ^,           # rJ  r   rK  s   &&r   r   rL  Q  s    AaCE!Gr   N)r   r~   r   r  r@  typer   classmethodrV   r   rA  r|   r   )r  r  rG  ro  s       r   test_numexpr_userfunctionsrP  F  s    5#$7%&<<a$DA	dXL$89:
<BAqAw	2D>>$q'QT7++++	htn.C	DBQFBq!Hi8D>>$q*ac!eAg....r   c                     \         '       g   \        R 4       \        \        \        4      \        ^\        ^,           ,          4      4      p \        \        V RR7      p\         P                  P                  P                  4       ;_uu_ 4       p\         P                  ^ \         P                  R7      pV! V4      P                  VR7      R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)tensorflow not installed.r   r   dtypesessionrh  N)r   r~   r!   r*   r   r   rV   compatv1Sessionconstantfloat32rH  rn  ro  r  r  s       r   test_tensorflow_basic_mathr]  V  s    :()s1vs1ac7|$DAt\2D						%	%	'	'1););<Aw||A|&#--- 
(	'	'	's   ACC/	c                     \         '       g   \        R 4       \        \        \        4      \        ^\        ^,           ,          4      4      p \        \        V RR7      p\         P                  P                  P                  4       ;_uu_ 4       p\         P                  P                  P                  \         P                  R7      pV! V4      P                  W#^ /R7      R8X  g   Q h RRR4       R#   + '       g   i     R# ; irR  r   r   rS  )rV  	feed_dictrh  N)r   r~   r!   r*   r   r   rV   rW  rX  rY  placeholderr[  rH  r\  s       r   test_tensorflow_placeholdersrb  a  s    :()s1vs1ac7|$DAt\2D						%	%	'	'1  ,,:3E3E,FAw||AQ|8C??? 
(	'	'	's   AC33D	c                     \         '       g   \        R 4       \        \        \        4      \        ^\        ^,           ,          4      4      p \        \        V RR7      p\         P                  P                  P                  4       ;_uu_ 4       p\         P                  ^ \         P                  R7      pVP                  VP                  4       V! V4      P                  W#^ /R7      R8X  g   Q h RRR4       R#   + '       g   i     R# ; ir_  )r   r~   r!   r*   r   r   rV   rW  rX  rY  Variabler[  runinitializerrH  r\  s       r   test_tensorflow_variablesrg  l  s    :()s1vs1ac7|$DAt\2D						%	%	'	'1););<	ammAw||AQ|8C??? 
(	'	'	's   A"C;;D	c                     \         '       g   \        R 4       \        \        \	        \
        \        4      \        4      4      p \        \
        \        .V RR7      p\         P                  P                  P                  4       ;_uu_ 4       pV! RR4      P                  VR7      R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)rR  r   r   FTrU  N)r   r~   rJ   rG   rK   r   r   rV   rW  rX  rY  rH  rn  ro  r  s      r   "test_tensorflow_logical_operationsrj  x  s    :()s2a8Q DQFD,7D						%	%	'	'1E4 %%a%0E999 
(	'	'	's   !B77C	c                     \         '       g   \        R 4       \        ^ \        \        ^ 4      3R\        ^ 8  3^\        ^ 8  34      p \        \        V RR7      p\         P                  P                  P                  4       ;_uu_ 4       pV! R4      P                  VR7      R8X  g   Q hV! ^ 4      P                  VR7      ^ 8X  g   Q hV! ^4      P                  VR7      ^8X  g   Q h RRR4       R#   + '       g   i     R# ; i)rR  r   r   rU  Nr   )
r   r~   r$   r   r   rV   rW  rX  rY  rH  ri  s      r   test_tensorflow_piecewiserl    s    :()aAa\BA;AE
;DAt\2D						%	%	'	'1Bx}}Q}'2---Aw||A|&!+++Aw||A|&!+++ 
(	'	'	's   	AC22D	c                  t   \         '       g   \        R 4       \        \        \        ) \        ^,          4      p \	        \        V RR7      p\         P
                  P                  P                  4       ;_uu_ 4       pV! R4      P                  VR7      ^8X  g   Q h RRR4       R#   + '       g   i     R# ; irR  r   r   rU  Nrj  )	r   r~   r!   r   rV   rW  rX  rY  rH  ri  s      r   test_tensorflow_multi_maxro    s{    :()q1"adDAt\2D						%	%	'	'1Bx}}Q}'1,,, 
(	'	'	'   ; B&&B7	c                  t   \         '       g   \        R 4       \        \        \        ) \        ^,          4      p \	        \        V RR7      p\         P
                  P                  P                  4       ;_uu_ 4       pV! R4      P                  VR7      R8X  g   Q h RRR4       R#   + '       g   i     R# ; irn  )	r   r~   r"   r   rV   rW  rX  rY  rH  ri  s      r   test_tensorflow_multi_minrr    s{    :()q1"adDAt\2D						%	%	'	'1Bx}}Q}'2--- 
(	'	'	'rp  c                  D   \         '       g   \        R 4       \        ^ 8  p \        \        V RR7      p\         P                  P
                  P                  4       ;_uu_ 4       pV! ^4      P                  VR7      R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)rR  r   r   rU  TN)r   r~   r   rV   rW  rX  rY  rH  ri  s      r   test_tensorflow_relationalrt    sp    :()6DAt\2D						%	%	'	'1Aw||A|&$... 
(	'	'	's   # BB	c                     \         '       g   \        R 4       \        \        \	        \        4      RR7      p \        \        \        \        4      RR7      p\        \        \        \        4      RR7      p\        \        \        \        4      RR7      p\         P                  P                  P                  4       ;_uu_ 4       p\         P                  R4      pV ! V4      P                  VR7      ^8X  g   Q hV! V4      P                  VR7      ^8X  g   Q hV! V4      P                  VR7      p\        R4      P                  4       p\        Wg,
          4      R8  g   Q hV! V4      P                  VR7      p\        R4      P                  4       p\        Wg,
          4      R8  g   Q h RRR4       R#   + '       g   i     R# ; i)ztensorflow not installedr   r   rU  Ny      ?       @gư>)r   r~   rV   r   rj   rk   r   rl   rW  rX  rY  rZ  rH  r   r   )r}  r~  r  r  r  r  tensorflow_resultsympy_results           r   test_tensorflow_complexesrx    sL   :'(Q1|4EQ1|4EQA5EQA5E						%	%	'	'1 %Qx}}Q}'1,,,Qx}}Q}'1,,,!!HMM!M46{((*$12V;;;!!HMM!M46{((*$12V;;; 
(	'	'	's   C&F55G	c                     \         '       g   \        R 4       \        \        \        ..\        \        ,          \        ,           R4      p \         P
                  P                  P                  4       ;_uu_ 4       pV ! \         P                  RR.4      4      pVP                  VR7      R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)rR  r   r   r   rU        @N)
r   r~   rV   r   r   rW  rX  rY  rZ  rH  )r   r  fcalls      r   test_tensorflow_array_argr|    s    :()1a&1Q37L1A						%	%	'	'1*%%sCj12zz!z$+++ 
(	'	'	's   :7B<<C	c                      \        \        \        \        ,          4      p V ! \        4      \        \        ,          8X  g   Q hR # r  rV   r   r   r   r   s    r   test_sym_single_argr    s&    AEAQ41q5==r   c                      \        \        \        .\        \        ,           \        ,           4      p V ! ^^4      ^\        ,           8X  g   Q hR# r   r~  r   s    r   test_sym_list_argsr    s2    !QQ#AQ7a!er   c            	         \        \        \        \        ^,          ) 4      4      p \        \        \	        V ! \        4      \        \
        ) \
        34      RR7      pV! \        4      \	        \        \        ^,          ) 4      \        \
        ) \
        34      8X  g   Q hV! \        4      P                  4       \        \        4      8X  g   Q hR# )r   r   r   N)
r   r   r   rV   rF   r   r   doitr#   r   )r   r  s     r   test_sym_integralr    s    q#q!te*AHQqTAsB<0'BAQ48CAJRC5555Q499;$r("""r   c                  J   R R /p R R RR /p\         P                  ! R 4      p\         P                  ! R4      p\        \        V! \        4      V R3R7      pV! ^4      R8X  g   Q h\        \        V! \        4      VR3R7      pV! ^4      R8X  g   Q hV! ^4      R8X  g   Q hR	# )
r   c                     R # )first fr   r   s   &r   r   &test_namespace_order.<locals>.<lambda>  s    r   c                     R # )zsecond fr   r   s   &r   r   r    s    r   gc                     R # )
function gr   r   s   &r   r   r    s    r   r   r   r  r  N)r   r   rV   r   )n1n2r   r  if1if2s         r   test_namespace_orderr    s     "	#B
#
%
'BsAsA
1adRM
2Cq6Y
1adRM
2Cq6Yq6\!!!r   c                  B  aa \        R R 4      o\        R R 4      p \        \        S! \        4      4      p\        \        V ! \        4      4      p\        S! \        4      4      \        V ! \        4      4      8X  g   Q hV! ^4      ^8X  g   Q hV! ^4      \        P
                  ! ^4      8X  g   Q h\        P                  ! R4      p\        VR4      '       d   Q h\        VR 4      p\        VR4      '       g   Q h\        R R 4      o\        \        VV3R l4       R# )	r   c                     ^V ,          # rJ  r   r   s   &r   r   test_imps.<locals>.<lambda>  s    AaCr   c                 .    \         P                  ! V 4      # r  )r   r#   r   s   &r   r   r    s    DIIaLr   r   _imp_c                     ^V ,          # rJ  r   r   s   &r   r   r    s    !r   c                     V ^e,           # )e   r   r   s   &r   r   r    s    QWr   c                  D   < \        \        S ! S! \        4      4      4      # r  r   )r   r   s   r   r   r    s    x1RU84r   N)r|   rV   r   r   r   r#   r   r   r9  r   
ValueError)r  l1l2ro  my_fr   r   s        @@r   	test_impsr    s     	S-0AS"89A	!QqT	B	!QqT	Bqt9AaD	!!!a5A::a5DIIaL   >>(#DtW%%%%m4D4!!!!	c#4	5B
:45r   c                     a \        R\        \        34       F.  w  p oV3R lp\        RV4      pV! V 4      pW2! V 4      8X  d   K.  Q h	  R# )r   c                    < V ^ 8X  d   Sh^# r   r   )r  error_classs   &r   r    test_imps_errors.<locals>.myfunc  s    Av!!r   r   N)r   r   r   r   )r   r   r  r|   )valr   r   rn  r  s       @r   test_imps_errorsr    sM     $Oi5LM[	
 !f-vqv~~ Nr   c                  (    \        \        R  4       R# )c                  $    \        \        R  4      # )c                     V # r  r   r   s   &r   r   8test_imps_wrong_args.<locals>.<lambda>.<locals>.<lambda>$  s    1r   )r|   r*   r   r   r   r   &test_imps_wrong_args.<locals>.<lambda>$  s    3CEr   N)r   r  r   r   r   test_imps_wrong_argsr  #  s    
:EFr   c                     \         P                  p \        \        V ! \        4      4      ! ^ 4      ^8X  g   Q h\        \        ^V ! \        4      ,           4      ! ^ 4      ^8X  g   Q h\        \        \        3\        V ! \        4      ,           4      ! ^ ^4      ^8X  g   Q h\        RR 4      p \        \        V ! \        4      4      ! ^ 4      ^d8X  g   Q h\        \        ^V ! \        4      ,           4      ! ^ 4      ^e8X  g   Q h\        \        \        3\        V ! \        4      ,           4      ! ^ ^4      ^e8X  g   Q h\        \        V ! \        4      \        34      pV! ^4      R8X  g   Q h\        \        V ! \        4      \        .4      pV! ^4      ^g^.8X  g   Q h\        \        V ! \        4      V ! \        4      \        3.4      pV! ^4      ^gR.8X  g   Q h\        \        V ! \        4      \        /4      pV! ^4      ^g^/8X  g   Q h\        \        V ! \        4      \        /4      pV! ^4      ^g^/8X  g   Q h\        \        \        V ! \        4      /4      pV! ^4      ^^g/8X  g   Q hRR /p\        \        V ! \        4      V4      pV! ^4      ^g8X  g   Q h\        \        V ! \        4      VRR7      pV! ^4      ^f8X  g   Q hR# )r   r   c                     V ^d,           # )r  r   r   s   &r   r   $test_lambdify_imps.<locals>.<lambda>/  s    AGr   c                     V ^c,           # )c   r   r   s   &r   r   r  A  s    Br   F)use_impsN)g   r   )r   r(   rV   r   r   r|   )r   lamr  s      r   test_lambdify_impsr  '  s<    			AAqtQ1$$$Aq1Q4x #q(((QFA!H%a+q000S"34AAqtQ3&&&Aq1Q4x #s***QFA!H%a+s222
1qtQi
 Cq6X
1qtQi
 Cq6c1X
1qtadAY'
(Cq6c8_$$$
1qtQi
 Cq6c1X
1qtQi
 Cq6c1X
1q!A$i
 Cq6aX	A
1adA
Cq6S==
1adA
.Cq6S==r   c                    aaa \        R 4      o\        R4      o\        R4      o\        R4      p ^S! S4      ^,          ,          S! S4      ,          p\        S! S4      S! S4      3V4      pV! ^^	4      ^8X  g   Q h\        \        S4      ^\        S4      ^,          ,          4      pV! S! S4      4      ^S! S4      ^,          ,          8X  g   Q h\        V S3^V ,          S,           4      pV! ^^4      ^8X  g   Q h\	        \
        VVV3R l4       \	        \
        VV3R l4       \	        \
        VV3R l4       R# )tFGz\alphac                  v   < \        S ! S4      S! S4      ,          S ! S4      S! S4      ,          ^,           4      # )   rU   )r  r  r  s   r   r   $test_dummification.<locals>.<lambda>Y  s(    1!adQqTkAo Fr   c                  ^   < \        ^S ! S4      ,          ^S ! S4      ,          ^,           4      # rJ  rU   r  r  s   r   r   r  Z       QqT1qt8a< @r   c                  ^   < \        ^S ! S4      ,          ^S ! S4      ,          ^,           4      # rJ  rU   r  s   r   r   r  [  r  r   N)r   r   rV   r*   r   SyntaxError)alpha	some_exprr  r  r  r  s      @@@r   test_dummificationr  I  s    AAA IEAaD!Gad"I
AaD!A$<
+Cq!9>>
3q61s1vqy=
)Cqt9AaD!G###
E1:qw{
+Cq!9>>
;FG
;@A
;@Ar   c                      \        R 4      p V P                  4       w  rpW,           p\        W.V4      pV! RR4      pRp\        Wg,
          4      R8  g   Q hR# )Nr   333333?r   Nrh  )rX   base_scalarsrV   r   )r  r   r5   znrn  r   r   r   s           r   8test_lambdify__arguments_with_invalid_python_identifiersr  ^  sT    3A!JBB7D"4 A
C+C
Csw<%r   c                      \         P                  ! R ^^4      p \        W 4      pV! ^4      ^8X  g   Q h\        W RR7      pV! ^4      ^8X  g   Q hR# )z{v}Tr  N)r   rw   rV   )curlyvr  s     r   test_curly_matrix_symbolr  i  sL    q!,F
6
"Cq6199
64
0Cq6199r   c                  b    \        R 4      p V ^,          p\        W4      pV! R4      R8X  g   Q hR# )if      @r   Nr  )	python_ifrn  r   s      r   test_python_keywordsr  r  s0     Iq=D!AS6S==r   c                     \        \        \        \        \        3\        \        ,           \        ,           \        ,           4      p R P                  4       pV P                  P                  4       R\        V4       V8X  g   Q h\        R4      p\        V\        V4      4      p RP                  4       pV P                  P                  4       R\        V4       V8X  g   Q hR# )zOCreated with lambdify. Signature:

func(w, x, y, z)

Expression:

w + x + y + zNza1:26a   Created with lambdify. Signature:

func(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15,
        a16, a17, a18, a19, a20, a21, a22, a23, a24, a25)

Expression:

a1 + a10 + a11 + a12 + a13 + a14 + a15 + a16 + a17 + a18 + a19 + a2 + a20 +...)
rV   r   r   r   r   
splitlines__doc__lenr   sum)ro  r   symss      r   test_lambdify_docstringr  |  s    Q1aL!a%!)a-0D	 jl  <<""$Yc#h/36667DD#d)$D	Y
 jl  <<""$Yc#h/3666r   c                     \        \        \        ^,           4      p Rp\        P                  ! V 4      V8X  g   Q h\        P                  ! V 4      pVP                  R4      '       g   Q hV\        P                  9   g   Q h\        P                  V,          \        V4      RVP                  R4      V38X  g   Q h? \        P                  ! 4        V\        P                  9  g   Q hR# )r   z,def _lambdifygenerated(x):
    return x + 1
z<lambdifygenerated-NT)rV   r   inspect	getsourcegetsourcefile
startswith	linecachecacher  r  gccollect)ro  sourcefilenames      r   test_lambdify_linecacher    s    Aq1uD=FT"f,,,$$T*H45555y&&&??8$VdF<M<Md<SU](^^^^JJL9??***r   c                  H  a ^ RI Ho V3R lp \        \        ^4      \        ^4      ,           4      \        P                  ,           p\        RVRV R7      p\        RVRSR7      p\        RVRS! 4       R7      p\        \        P                  ! ^^4      4      p\        V! 4       V4      '       g   Q h\        V! 4       V4      '       g   Q h\        V! 4       V4      '       g   Q h\        \        \        \        4      R4      ! ^4      p\        \        \        \        4      R4      ! R4      p\        \        \        \        4      R4      ! ^4      pWgV.p	\        P                  ! ^4      p
\        P                  ! R4      p\        P                  ! ^4      pWV.pW8X  g   Q hR# )r   )IntervalPrinterc                 0   < S! 4       P                  V 4      # r  )doprint)rn  r  s   &r   intervalrepr+test_special_printers.<locals>.intervalrepr  s     ((..r   r   )r   r  g?Nr   )r6  r  r#   r   HalfrV   rN  r   mpir  r   rC   )r  rn  func0r}  r~  r  exp1r\   exp3exp_lssol1sol2sol3sol_lsr  s                 @r   test_special_printersr    sE   9/ Q$q'!"QVV+DRxFERxIERx9JKE
vzz!Q
 Cegs####egs####egs#### Ax{H-a0DAx{H-c2DAx{H-b1D$F??1D??3D??2D$Fr   c                  r    \        . \        4      ! 4       R J g   Q h\        . \        4      ! 4       RJ g   Q hR# TFN)rV   rL   rH   r   r   r   test_true_falser    s2    B4'''B E)))r   c                  v   \        \        \        \        33\        \        ,           4      ! ^R4      ^8X  g   Q h\        \        \        \        \        333\        \        ,           \        ,           \        ,           4      ! ^R4      ^
8X  g   Q h\        \        \        ^,           RR7      ! ^4      ^8X  g   Q hR# )r   Fr  Nr  )r   )r   r   )rV   r   r   r   r   r   r   r   test_issue_2790r    s    QAKQ'62a777QQF$a!eai!m4QDJJJAq1ue,Q/1444r   c                  x    \        R R 4      p V ! V ! ^4      4      P                  4       \        ^4      8X  g   Q hR# )r   c                     V ^,          # rJ  r   r   s   &r   r   "test_issue_12092.<locals>.<lambda>  s    AqDr   N)r|   r   r   r   s    r   test_issue_12092r    s.    S.1AQqT7==?eBi'''r   c                       ! R  R\         P                  4      p V ! R4      p^V,          p\        4       P                  V4      pVP	                  RR4      R8X  g   Q hR# )c                   .   a  ] tR tRt o R t]t]tRtV tR# )"test_issue_14911.<locals>.Variablei  c                8    VP                  V P                  4      # r  )r  r  )selfr  s   &&r   	_sympystr,test_issue_14911.<locals>.Variable._sympystr  s    ??499--r   r   N)	r  r  r  r  r  _lambdacode
_numpycoder  __classdictcell____classdict__s   @r   rd  r    s     	.  
r   rd  r     z2*xN)r   Symbolrz   r  replace)rd  r   r   codes       r   test_issue_14911r    sQ    5<<  	A	AA?""1%D<<R E)))r   c                  
   \        \        \        \        3\	        \        \        \        4      4      ! R ^^4      ^8X  g   Q h\        \        \        \        3\	        \        \        \        4      4      ! R^^4      ^8X  g   Q hR# r  )rV   r   r   r   rI   r   r   r   test_ITEr    sZ    Q1Is1a|,T1a8A===Q1Is1a|,UAq9Q>>>r   c                  
   \        \        \        \        3\	        \        \        \        4      4      ! ^^^4      ^8X  g   Q h\        \        \        \        3\        \        \        \        4      4      ! ^^^4      ^8X  g   Q hR# r   )rV   r   r   r   r"   r!   r   r   r   test_Min_Maxr    sZ    Q1Is1a|,Q15:::Q1Is1a|,Q15:::r   c                  F	   \         '       g   \        R 4       \         P                  . RO4      p \         P                  . RO4      p\         P                  . RO4      p\         P                  . RO4      p\         P                  \	        \
        \        3\        \
        \        4      4      ! W4      V8H  4      '       g   Q h\         P                  \	        \
        \        3\        \
        \        4      4      ! W4      V8H  4      '       g   Q h\         P                  \	        \
        \        \        3\        \
        \        \        4      4      ! WV 4      V8H  4      '       g   Q h\         P                  \	        \
        \        \        3\        \
        \        \        4      4      ! WV 4      V8H  4      '       g   Q h\         P                  \	        \
        3\        \
        4      4      ! V 4      V 8H  4      '       g   Q h\         P                  \	        \
        3\        \
        4      4      ! V 4      V 8H  4      '       g   Q h\         P                  \	        \
        \        \        \        3\        \
        \        \        \        4      4      ! WV ^4      . RO8H  4      '       g   Q h\         P                  \	        \
        \        \        \        3\        \
        \        \        \        4      4      ! WV ^4      . RO8H  4      '       g   Q h\	        \
        \        3\        \
        4      \        \        4      .4      ! W4      ^^.8X  g   Q h\         P                  . R	O. R
O. RO.4      p\	        \
        3\        \
        ^ R7      \        \
        ^R7      .4      ! V4      w  rV\         P                  V\         P                  V^ R7      8H  4      '       g   Q h\         P                  V\         P                  V^R7      8H  4      '       g   Q h\         P                  \	        \
        \        3\        \
        \        4      4      ! . RO. RO4      . RO8H  4      '       g   Q h\         P                  \	        \
        \        ^\
        4      4      ! . RO4      . RO8H  4      '       g   Q hR# )r   )axisN)r   r   r   )r   r  r   )r   r  r   )r   r   r   )r   r  r   )r   r   r   )r   r      )r   r  	   )r      r   r   r  )r   r   r   )r   r~   r  r  rV   r   r   rg   rf   r   r   rd   re   r!   r"   )a234a152a254a132r  min_max_s          r   test_amin_amax_minimum_maximumr!    s   5"#;;y!D;;y!D;;y!D;;y!D99Xq!fgam4T@DHIIII99Xq!fgam4T@DHIIII 99Xq!QiAq)9:4tLPTTUUUU99Xq!QiAq)9:4tLPTTUUUU 99XqdGAJ/5=>>>>99XqdGAJ/5=>>>> 99Xq!QlGAq!Q,?@TSTUYbbcccc99Xq!QlGAq!Q,?@TSTUYbbcccc QFT!Wd1g./;1vEEE 	A
 1$aa$qq/ BCAFJD99TUZZZ22333399TUZZZ223333 99Xq!fc!Qi0IF)STTTT99Xq3q!9-i8IEFFFFr   c            
          \         '       g   \        R 4       \        R4      p \        R4      w  r\         P	                  ^^.^^..4      p\        V \        V \        \        3,          \        ^ ^3\        ^ ^34      4      ! V4      ^
8X  g   Q hR# )r   r  zi jN)	r   r~   rS   r   r  rV   r   r   r   )r  r  jr  s       r   test_Indexedr$    sw    5"#CA5>DAaVaV$%AAs1QT7Q1I1ay9:1=CCCr   c                      \        \        \        ^ \        3\        ^ ^
34      p ^B\        ,          pV P	                  4       V8X  g   Q h\        \        .V 4      ! ^4      VP                  \        ^4      8X  g   Q hR# )r   N)r   r   r   r   r  rV   r  )rI  r   s     r   test_Sumr&    s]    A1ay1a*%A
Q$C668s??QCA#((1a.000r   c                  |    \        R 4      p \        R4      p. ROp\        W.W,          4      ! V^4      ^8X  g   Q hR# )r  r  Nr   )rS   rT   rV   )r  r  r  s      r   test_Idxr(  $  s:    CACAAQFAD!!Q'1,,,r   c                  J   \        \        \        3\        \        \        4      R 4      ! ^^4      p \        \        \        3\	        \        \        4      R 4      ! ^^4      pV \        ^^4      P                  4       8X  g   Q hV\	        ^^4      P                  4       8X  g   Q hR# )r   N)rV   r   r   r   r   r   )rw  rx  s     r   test_issue_12173r*  ,  s~    aVZ1-h71=EaVZ1-h71=EJq!$**,,,,Jq!$**,,,,r   c                      \         '       g   \        R 4       \        \        \	        \        4      4      p \        V ! ^4      \	        ^4      ,
          4      P                  4       R8  g   Q hR# )r   r   N)r   r~   rV   r   r+   r   nr   s    r   test_issue_13642r-  4  sH    5"#DGAqtd1g~  "U***r   c                      \        \        \        \        4      R 4      p \        V ! ^4      \        ^4      ,
          4      P	                  4       R8  g   Q hR# )r   r   N)rV   r   r+   r   r,  r   s    r   test_sinc_mpmathr/  ;  s<    DGX&Aqtd1g~  "U***r   c                  D   \        4       p \        W ^,           RR7      pV! ^4      ^8X  g   Q h\        W ^,           4      pV! ^4      ^8X  g   Q h\        R4      p\        W3^,           4      pV! ^4      ^8X  g   Q h\        V..V^,           4      pV! ^.4      ^8X  g   Q hR# )r   Fr  r   Nr   rV   )d1r   f1bd2r   r   s         r   test_lambdify_dummy_argr5  @  s    	B	"1fe	,Ba5A::
2Av
Cq6Q;;	sB	"1f	Ba5A::	B4&"q&	!Bqc7a<<r   c                      \        4       p \        \        V 4      4      p\        W.W,
          4      pV! ^^4      ^8X  g   Q hR# )r   N)r   r   r   rV   )r  dsymr   s      r   %test_lambdify_mixed_symbol_dummy_argsr8  M  s8    A3q6?D!AH%AQ7a<<r   c                      \         '       g   \        R 4       \        \        \        ..\        \        ,          \        ,           R4      p V ! \         P                  RR.4      4      ^8X  g   Q hR# )r   r   r   r   N)r   r~   rV   r   r   r  r   s    r   test_numpy_array_argr:  U  sL    5"#1a&1Q37G,AU[[#s$%***r   c            	      z
   \         '       g   \        R 4       \        \        \        \
        \        \        \        \        \        .	p \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  .	p\         P"                  P%                  ^ 4       \'        W4       EF  w  r#\)        \*        V! \*        4      RR7      p\-        ^4       EFn  p\         P"                  P/                  R^
4      R\         P"                  P/                  R^4      ,          ,           pV\
        8X  d   \         P1                  V4      pV\        8X  d   \         P1                  V4      pV\        8X  d   \         P3                  V4      pV! V4      P5                  4       pV! V4      pV\        8X  d   V! V4      ^ ,          pV\        8X  d   V! V4      ^,          p\1        V! V4      V,
          4      R^\1        V4      ,           ,          8  g   Q h\1        V! V4      V,
          4      R^\1        V4      ,           ,          8  d   EKo  Q h	  EK  	  \6        \8        \:        \<        \>        \@        .p	\         P                  PB                  \         P                  PD                  \         P                  PF                  \         P                  PH                  \         P                  PJ                  \         P                  P@                  .p
\'        W4       EFz  w  r#\)        \*        \L        3V! \*        \L        4      RR7      p\-        ^4       EF=  p\         P"                  P/                  R^
4      p\         P"                  P/                  R^
4      R\         P"                  P/                  R^4      ,          ,           pV\6        \@        39   d   \         P3                  V4      pV\@        8X  d   \1        \O        V4      4      pV! W4      P5                  4       p\1        V! W4      V,
          4      R^\1        V4      ,           ,          8  g   Q h\1        V! W4      V! W4      ,
          4      R^\1        V4      ,           ,          8  d   EK>  Q h	  EK}  	  R# )scipy not installedr   r   r   gvIh%<=N)(r   r~   r:   r;   r<   r   rB   rC   rA   r?   r@   r*  expigammalnpsisicir   r  seedr   rV   r   rangeuniformr   r   r   r   r1   r3   r0   r2   rD   pochjvyvivkvr   int)single_arg_sympy_fnssingle_arg_scipy_fnssympy_fnscipy_fnr   r  tvrw  scipy_resultdouble_arg_sympy_fnsdouble_arg_scipy_fnstv1tv2s                r   test_scipy_fnsrV  _  s   5"#T9eXwPRTVW!MM..0A0A5==CUCU!4!4emm6K6K!MM--u}}/A/A5==CUCUW 
LLa #$8 OQW5rA%%c2.ELL4H4HQ4O1OOB 9$YYr] 8#YYr] 7"ZZ^#B<--/L#B<L 2~'|A2~'|Aqu|+,ua#l:K6K/LLLLqu|+,ua#l:K6K/LLLL1  !P8 ,Wgw#Y0!MM..0@0@!MM,,emm.>.>@P@PRWR_R_RiRik #$8 OaVXa^W=rA,,&&sB/C,,&&sB/"U\\5I5I"a5P2PPCOY77jjo9$#c(m#C-335Lq{\12UAL@Q<Q5RRRRq{Xc%7785!c,FWBW;XXXX  !Pr   c                     \         '       g   \        R 4       \        P                  P	                  ^ 4       \        R4      p \        ^3\        ^3\        ^3\        ^3\        ^3\        ^3\        ^3\        ^3\        ^3.	pRpV EF  w  r4V RV \        3,           p\!        WS! V!  4      p\#        ^
4       EFw  p\        P                  P%                  ^^
4      p\'        \        P                  P)                  ^ ^V^,
          R7      4      p	\        P                  P)                  R^
4      R\        P                  P)                  R	^4      ,          ,           p
V\        8X  d   \        P+                  V
4      p
V\        8X  dL   \        P                  P)                  R
^4      p
\'        \        P                  P%                  ^V^R7      4      p	V3V	,           V
3,           pV! V!  pV! V!  P-                  4       pR^\/        V4      ,           ,          p\/        W,
          4      p W8  g   Q hEKz  	  EK  	  R#   \0         dF    \3        TP5                  \7        T4      \7        T4      \7        T4      \7        T4      TTR7      4      hi ; i)r<  zn k a bzThe random test of the function {func} with the arguments {args} had failed because the SymPy result {sympy_result} and SciPy result {scipy_result} had failed to converge within the tolerance {tol} (Actual absolute difference : {diff})N)sizer   &.>)ro  r>  rw  rQ  r	   tolr=  r>  r   )r   r~   r   r  rC  r   rm   rn   ro   rp   rq   rr   rs   rt   ru   r   rV   rD  randinttuplerE  r   r   r   r   AssertionErrorformatrepr)paramspolysmsgrN  
num_paramsr>  r   _tntparamsrP  valsrQ  rw  atolr	   s                   r   test_scipy_polysri    s.   5"#	LLaYF 
Q	Q	1	!	1	Q			
E	0  !&kz"aT)T8T?+rA%%a,BELL00AJqL0IJG%%c2.ELL4H4HQ4O1OOB7"ZZ^>)\\))"a0 4 4Q 4 CD57?bU*Dd8L#T?002LS../D|23D{"{%  !&,  	$JJ!(^!$Z%),%7%),%7!   " 	s   'H;;AJc                  v    \        \        \        ^,          4      p R\        P                  ! V 4      9   g   Q hR# )r   zx**2N)rV   r   r  r  r   s    r   test_lambdify_inspectrk    s-    AqDA W&&q))))r   c                  ,   \        4       \        4       r\        W.V ^V^/R4      pV! ^^4      ^^^^/8X  g   Q h\        W.W3R4      pV! ^^4      R8X  g   Q h\        . R4      pV! 4       R8X  g   Q h\        W.W.R4      pV! ^^4      ^^.8X  g   Q hR# )r   r   N)r   r   r   r1  )r   r   r   r   r  r   s         r   test_issue_14941rm    s    7EGq 
1&1aA,	0Ba81a|### 
1&1&'	*Ba8v
2t
C5D== 
1&1&'	*Ba81vr   c                    a a \        R 4      ! \        4      o S P                  4       o\        S S3S S,           4      ! ^
^4      ^8X  g   Q h\	        \        S S3S S,          4      4      ! ^
^4      ^8X  g   Q h\        \        V V3R l4       \	        \        S S3S S,          RR7      4      ! ^
^4      ^8X  g   Q h\	        \        SS 3S S,          RR7      4      ! \        ^
4      ^4      \        P                  8X  g   Q h\        S^S,           4      ! ^)4      ^*8X  g   Q h\	        \        S^S,           RR7      4      ! ^)4      ^*8X  g   Q hR# )r   c                  D   < \        \        S S3S S,          R R7      4      # )Fr  )rH  r}   r   fxs   r   r   :test_lambdify_Derivative_arg_issue_16468.<locals>.<lambda>  s    Y2w"e45r   Tr  N)
r   r   r	   rV   rH  r}   r   r  r   r  rp  s   @@r   (test_lambdify_Derivative_arg_issue_16468rs    s   aA	
BQGQV$R+r111	1b'1R4()"a0A555
9 6 7	1b'1R467A>!CCC	2q'1R467"qAQVVKKKBB#r)))	"a"fd34R8B>>>r   c                  :   \        \        4      P                  \        R R7      p \        \        V R.R7      pV! ^4      p\        R4      P	                  4       \        ^4      P	                  4       ,
          R,          p\        W#,
          4      \        V4      ,          R8  g   Q h\        \        ^,          4      P                  \        4      p\        \        VR.R7      pV! R4      pR	V,          p\        Wg,
          4      \        V4      ,          R8  g   Q hR# )
F)evaluater   r   r  gHz>NgW   @g;f?g;f@)rE   r   r	   rV   r   r   )rw  r   ans1ref1rx  r   ans2r
  s           r   test_lambdify_Derivative_zetary    s    GLLUL+E	!UXJ	/Ba5DL a0$6Dt{CI%,,,AJOOAE	!UXJ	/Bf:DD=Dty>#d)#d***r   c                  h  aaa \        R 4      p \        R4      p ! R R\        4      oV ! \        4      P                  \        4      o\	        \
        V3R l4       \        \        .SSR7      pV! ^4      ^*8X  g   Q hV! \        4      P                  \        4      o\	        \
        VV3R l4       R# )r}  r~  c                   &   a  ] tR tRt o R tRtV tR# ):test_lambdify_Derivative_custom_printer.<locals>.MyPrinteri  c                    Vw  pVw  pR # )42r   )r  r>  
seq_ordersrl   orders   &&&  r   _print_Derivative_func1Rtest_lambdify_Derivative_custom_printer.<locals>.MyPrinter._print_Derivative_func1  s    DCFEr   r   N)r  r  r  r  r  r  r	  r
  s   @r   	MyPrinterr|    s     	 	r   r  c                  &   < \        \        .S 4      # r  r   )rw  s   r   r   9test_lambdify_Derivative_custom_printer.<locals>.<lambda>  s    8QC3Gr   r  c                  *   < \        \        .SS R 7      # r  r   )r  rx  s   r   r   r    s    8QCPY3Zr   N)r   r{   r   r	   r   ry   rV   )r}  r~  r   r  rw  rx  s      @@@r   'test_lambdify_Derivative_custom_printerr  	  s    WEWEL  !HMM!E
)+GH	1#ui	0Ba5B;;!HMM!E
)+Z[r   c                  d   \        R 4      w  rp\        R4      ! V 4      pVP                  V ^4      VP                  V 4      W1V3pWP                  V ^4      ,          W#P                  V 4      ,          ,           W,          V,          ,           V^,          ,           pRp^pWP                  V ^4      ,          W#P                  V 4      ,          ,           W,          V,          ,
          V^,          ,           V^,          ,
          pRp	\        . R	ORR.4       F  w  r\	        WEWR7      pV! V!  p\        W,
          4      R8  g   Q h\	        WEV.WR7      pV! V!  p\        V4      ^8X  g   Q h\        V^ ,          V,
          4      R8  g   Q h\        V^,          V	,
          4      R8  d   K  Q h	  R# )
zt, a, br   FNT)rO   r  g-q=)r   r   r  rz  g      @i)FNT)r   r   r	   r   rV   r   r  )r  r  r  r   r>  rw  num_argsrw  rx  r
  r  _cser}  res1func12res12s                   r   3test_lambdify_derivative_and_functions_as_argumentsr    sb   i GA!aA66!Q<A!+DffQlNQvvay[(13q501a47E&H#DffQlNQvvay[(13q501a47!Q$>E*D !4udmD$@h4;%'''$DJ!5zQ58d?#e+++58d?#e+++ Er   c                     \        \        .\        P                  ! \        4      4      p RpV ! V4      VP                  8X  g   Q h\        \        .\        P
                  ! \        4      4      pV! V4      VP                  8X  g   Q hR# )r   Ny      @       @)rV   r   r   rj   r   rk   imag)f_rer  f_ims      r   test_imag_realr  5  s_    QC!%D
C9   QC!%D9   r   c                     \         '       g   \        R 4       \        R^^4      p \         P                  ^^.^^..4      p\	        W R,          4      p\         P                  V! V4      \         P                  RR.RR..4      4      '       g   Q h\	        W ^,          4      p\         P                  V! V4      \         P                  ^%^6.^Q^v..4      4      '       g   Q hR# )r   r  r         ?Nr   g       ri  )r   r~   rw   r  rV   rA  )r  A0r   r  s       r   test_MatrixSymbol_issue_15578r  >  s    5"#S!QA	q!fq!f%	&BGA>>!B%sBi#t-E!FGGGGqDA>>!B%r2hS	-B!CDDDDr   c            	          \         '       g   \        R 4       ^ RIHp HpHpHp ^ RIHp Rw  rVrxVP                  WVWx4      P                  4       p	\        WW#3VP                  WW#4      4      p
V
! WVWx4      p\        W,
          4      R8  g   Q hR# )r<  )r,  r  r   Z)hydrogenr   N)r   r   r   r   )r   r~   	sympy.abcr,  r  r   r  sympy.physicsr  R_nlr   rV   r   )r,  r  r   r  r  nvlvrvZvsympy_valuer   scipy_values               r   test_issue_15654r  I  sx    5"#$$&NBB--/557K!x}}Q189ABB#K{()E111r   c                  H   \         '       g   \        R 4       \        R^^4      p \        R^^4      p\        R^^4      p\        R^^4      p\        R4      p\	        V ^V,          V ,          4      p\	        V ^V,           V ,          4      p\	        V ^V ,          4      p\	        WV3^V,          V,          V,          4      p\         P                  V! \         P                  . RO. RO. RO.4      4      \         P                  ^V,          ^V,          ^V,          .^V,          ^V,          ^V,          .^V,          ^V,          ^V,          ..\        R7      4      '       g   Q h\         P                  V! \         P                  . RO. RO. RO.4      4      \         P                  V^,           ^V,          ^,           ^V,          ^,           .V^,           ^V,          ^,           ^V,          ^,           .V^,           ^V,          ^,           ^V,          ^,           ..\        R7      4      '       g   Q h\         P                  V! \         P                  . RO. RO. RO.4      4      \         P                  . R	O. R	O. R	O.4      4      '       g   Q h\         P                  V! \         P                  . RO. RO.4      \         P                  . R
O. R
O. R
O.4      \         P                  . RO. RO. RO. RO.4      4      \         P                  . RO. RO.4      4      '       g   Q hR# )r   r  r  CDkrS  Nr   )r   r   r  )r   r   r   r   )r   r   r   r   r  )x      ih  i  iX  )r   r~   rw   r   rV   array_equalr  object)	r  r  r  r  r  r   r  hr  s	            r   test_issue_15827r  U  s   5"#S!QAS!QAS!QAS!QAclAQqS!GAQqS!GAAaCA!AaCE!G$AQu{{Iy)+LMN	KK!A#qsAaC1Q3!QqS/AaC1ac?C6KRT T T T Qu{{Iy)+LMN	KK!a%1q!A#'*QUAaC!GQqS1W,EUAaC!GQqS1W&,  ./ / / / Qu{{Iy)+LMN	KKIy124 4 4 4 Qu{{Iy+ABEKKQ]_kmyPzD{	KK/?OTUWX]XcXcee  Y!" " " "r   c                      \         '       g   \        R 4       \        R4      p R p\        W! V 4      RR7      pV! ^4      \         P                  P
                  8X  g   Q hR# )r<  r   c                 >    \         P                  V ^,          ,          # rJ  )r   GoldenRatior   s   &r   r   "test_issue_16930.<locals>.<lambda>u  s    1==1a4'r   r   r   N)r   r~   r   rV   	constantsgolden_ratio)r   r   f_s      r   test_issue_16930r  p  sL    5"#A'A	!QqT7	+Ba5EOO00000r   c                      \         '       g   \        R 4       \        R4      p \        V .\        P
                  ! V R4      RR7      pV! R4      \        P                  ! RR4      8X  g   Q hR# )r<  r   r   r   r   Nr   )r   r~   r   rV   r   LambertWr   lambertw)r   r  s     r   test_issue_17898r  y  sQ    5"#A	1#u~~a+W	=Bc7fooc2....r   c                  
   \         '       g   \        R 4       \        \        \        P
                  ! \        4      4      p \        \        \        P
                  ! \        ^4      4      pV ! . RO4      pV! . RO4      p\        V^ ,          4      P                  4       R8  g   Q h\        V^,          R,
          4      P                  4       R8  g   Q h\        V^,          ^,
          4      P                  4       R8  g   Q h\        V^ ,          4      P                  4       R8  g   Q h\        V^,          ^,
          4      P                  4       R8  g   Q h\        V^,          ^,
          4      P                  4       R8  g   Q hR# )r   r   Nr*  rh  )r   r~   rV   r   r   r9   r   r,  )r   r   r  res2s       r   test_issue_13167_21411r    s   5"#	!U__Q'	(B	!U__Q*	+Bj>Dj>DtAw<>>e###tAw}!E)))tAw{%'''tAw<>>e###tAw{%'''tAw{%'''r   c                  ^    \        \        \        4      p V ! ^4      \        R4      8X  g   Q hR# )   r   N)rV   r   r
   r   r   s    r   test_single_er    s#    AAR5CHr   c                     \         '       g   \        R 4       \        R4      p \        V \        4      p\        V \        3VRR7      p\        \        ^^4      V! ^^4      ,
          4      R8:  g   Q h\        V \        4      p\        V \        3VRR7      p\        \        ^^4      V! ^^4      ,
          4      R8:  g   Q hR# )r<  r  r   r   r  N)r   r~   r   r   r   rV   r   r   )r  r   r  r   s       r   test_issue_16536r    s    5"#A	Aq	B!QW-Az!Q!Aq')*e333	Aq	B!QW-Az!Q!Aq')*e333r   c                  p   \         '       g   \        R 4       \        R4      w  r\        \        P
                  \        W4      4      p\        W V34      p\        W3VRR7      pV ^V^/p\        VP                  V4      V! VP                  4       !  ,
          4      R8*  P                  4       '       g   Q hR# r   zx1 x2r   r   r  N)r   r~   r   r!   r   Zeror"   rP   rV   r   r  valuesr  )x1x2r   r  r  points         r   test_issue_22726r    s    5"#WFBAFFCK A8$A"1g.ABNEu5<<> 223u<AACCCCr   c                     \         '       g   \        R 4       \        R4      w  r\        \	        W4      4      p\        W3VRR7      pV ^V^/p\        VP                  V4      V! VP                  4       !  ,
          4      R8:  g   Q hR# r  )	r   r~   r   r9   r"   rV   r   r  r  )r  r  r   r  r  s        r   test_issue_22739r    sr    5"#WFB#b+A"1g.ABNEqvve}q%,,.112e;;;r   c                     \         '       g   \        R 4       \        R4      w  rV \        \	        V^,          4      4      \        V4      ,
          ,          p\        W.VR4      pV ^
V^/p\        VP                  V4      V! VP                  4       !  ,
          4      R8:  g   Q h\        W.V4      p\        VP                  V4      V! VP                  4       !  ,
          4      R8:  g   Q hR# )r   za tr   r  N)
r   r~   r   r   r)   r(   rV   r   r  r  )r  r  rn  r  r  s        r   test_issue_22992r    s    5"#5>DAc#ac(mc!f$%D!w'AAqMEtyy!U\\^"445>>> 	!Atyy!U\\^"445>>>r   c                      \         '       g   \        R 4       \        \        \        ^,          .4      p \	        \        V R4      pV! ^4      P
                  \         P                  8X  g   Q hR# )r   r   N)r   r~   rQ   r   rV   	__class__r  )rn  r   s     r   test_issue_19764r    sJ    5"#!QTDD'"AQ4>>U]]***r   c                      \         '       g   \        R 4       \        \        \	        \        4      R4      p \         P                  V RR7      ! ^4      R8X  g   Q hR# )znumba not installedr   T)nopythong	T?N)r   r~   rV   r   r*   jitr   s    r   test_issue_20070r    sC    5"#CFG$A99Q9&q)+====r   c                  X   \         '       g   \        R 4       \        \        4      p \	        \        4      p\        \        V RR7      p\        \        VRR7      p\        \        R4      V! R4      ,
          4      R8:  g   Q h\        \	        R4      V! R4      ,
          4      R8:  g   Q hR# )r<  r   r   ?r  N)r   r~   r=   r   r>   rV   r   )r   r   F1F2s       r   test_fresnel_integrals_scipyr    s~    5"#	!B	!B	!R	)B	!R	)Bx}r#w&'5000x}r#w&'5000r   c                      \         '       g   \        R 4       \        \        \        4      p \        \        \        3V RR7      p\        \        RR4      V! RR4      ,
          4      R8:  g   Q hR# )r<  r   r   r  ffffff@r  N)r   r~   r6   r   r   rV   r   r   r  s     r   test_beta_scipyr    sQ    5"#Q
A!QG,AtC~#s+,555r   c                      \        \        \        4      p \        \        \        3V R R7      p\	        \        RR4      V! RR4      ,
          4      R8:  g   Q hR# )r   r   r  r  r  N)r6   r   r   rV   r   r  s     r   test_beta_mathr    sC    Q
A!QF+AtC~#s+,555r   c            	         \         '       g   \        R 4       \        \        \        \
        \        4      p \        \        \        \
        \        3V RR7      p\        \        RRRR4      V! RRRR4      ,
          4      R8:  g   Q hR# )	r<  r   r   gffffff?g@r   rh  r  N)	r   r~   r7   r   r   r   r   rV   r   r  s     r   test_betainc_scipyr    sd    5"#1aA!Q1q'2AwsCc*QsCc-BBCuLLLr   c            	         \         '       g   \        R 4       \        \        \        \
        \        4      p \        \        \        \
        \        3V RR7      p\        \        RRR^4      V! RRR^4      ,
          4      R8:  g   Q hR# )r<  r   r   r   r:  r   r  N)	r   r~   r8   r   r   r   r   rV   r   r  s     r   test_betainc_regularized_scipyr    se    5"#Aq!Q'A!Q1q'2A"3S!4qc37JJKuTTTr   c            	         \         '       g   \        R 4       \        \        \        \
        \        \        \        \        .p V  F  p^VP                  9   d!   V! \        \        4      p\        \        3pRpM2^VP                  9   d   V! \        4      p\        3pR	pM\        R4      h\        W24      pV! V!  pVP                  \!        \#        W44      4      4      P%                  4       p\         P'                  V\)        V4      4      '       d   K  Q h	  \        \        \        3\        \        \        4      \        \        4      4      4      p\+        RV! RR4      ,          R,
          4      R8  g   Q hR# )
r   z:Need to handle other than unary & binary functions in testr   gJz5gn5g!z05g"}t3N)r  g?)r  )r   r~   rZ   r[   r\   r]   r^   r_   rb   rc   r=  r   r   NotImplementedErrorrV   r  r  r   r   rA  r  r   )	funcsro  rn  r>  r  r   result	referencelae2s	            r   test_numpy_special_mathr    s   5"#E4ueY
KE

?1:Dq6D!H$**_7D4DH%&bccT HIId3t#678>>@	~~feI&67777   QFJtAwQ89DsD((723e;;;r   c                     \         '       g   \        R 4       \        \        3\	        \        4      RR7      p \        V ! R4      R,           4      R8  g   Q h\        \        \        \         P                  P                  P                  R4      R,          4      4      R8  pV'       dM   \        \        \        3\        \        \        4      RR7      p\        V! RR	4      R
,
          4      R8  g   Q hR# R# )r<  r   r   g#B;gWw'&l7gN~h.:Nr   Ng333333?rY  g-=gFFg<N)r   r   )r   r~   rV   r   rh   r   r\  maprK  versionsplitr   ri   )cm1have_scipy_1_10pluscm2s      r   test_scipy_special_mathr  %  s    5"#
A4q7
3Cs5zE!"V+++C)>)>)D)DS)I")M NOSZZ1vuQ{G<3sD>N23u<<< r   c                      \         '       g   \        R 4       \        \        3\	        \        4      RR7      p V ! ^4      R8X  g   Q hR# )r<  r   r   rh  N)r   r~   rV   r   r   )berns    r   test_scipy_bernoullir  3  s4    5"#QD)A,8D7c>>r   c                     \         '       g   \        R 4       \        \        3\	        \        4      RR7      p V ! ^4      R8X  g   Q h\        \        \
        3\	        \        \
        4      RR7      pV! ^^4      R8X  g   Q hR# )r<  r   r   r  g      ?N)r   r~   rV   r   r   r   )hnhnms     r   test_scipy_harmonicr  ;  s`    5"#	1$W	5Ba5C<<
Aq68Aq>7
;Cq!9r   c                     \         '       g   \        R 4       \        \        \        ..\        \        ,          \        ,           R4      p V ! \         P                  RR.4      4      pV^8X  g   Q hR\        \        V4      4      9   g   Q hR# )CuPy not installedr   r   r   Nr   r~   rV   r   r   r  r   rN  r   r  s     r   test_cupy_array_argr   E  sf    4!"1a&1Q37F+Atzz3*%&FQ;;Sf&&&&r   c                     \         '       g   \        R 4       \        \        \        ..\        \        ,          \        ,           R4      p V ! \         P                  RR.4      4      pV^8X  g   Q hR\        \        V4      4      9   g   Q hR# )r  r   r   r   r   Nr  r  s     r   test_cupy_array_arg_using_numpyr  O  sh     4!"1a&1Q37G,Atzz3*%&FQ;;Sf&&&&r   c                     \         '       g   \        R 4       \        \        \        \
        .4      p \        \        \        \
        .\        W 4      RR7      p\        \        \        \
        .\        W P                  4      RR7      p\        \        \        \
        .\        V P                  V 4      RR7      p\        \        \        \
        .\        W P                  4      RR7      pV! ^^^4      V! ^^^4      u;8X  d=   V! ^^^4      u;8X  d-   V! ^^^4      u;8X  d   \         P                  ^.4      8X  g   Q h Q hR# )r  r   r   N)
r   r~   rv   r   r   r   rV   rM   r  r  r  s        r   test_cupy_dotproductr  [  s    4!"1ayA	1a)Z-v	>B	1a)Z33/	@B	1a)ZQ/	@B	1a)Z33/	@BaA;
1a
1a 	1a 	

B4	    r   c                  .   \         '       g   \        R 4       \        \        \        ..\        \        ,          \        ,           R4      p V ! \         P
                  P                  RR.4      4      pV^8X  g   Q hR\        \        V4      4      9   g   Q hR# )JAX not installedr   r   r   N	r   r~   rV   r   r   r   r  r   rN  r  s     r   test_jax_array_argr  l  sj    3 !1a&1Q37E*AsyySz*+FQ;;CV%%%%r   c                  .   \         '       g   \        R 4       \        \        \        ..\        \        ,          \        ,           R4      p V ! \         P
                  P                  RR.4      4      pV^8X  g   Q hR\        \        V4      4      9   g   Q hR# )r  r   r   r   r   Nr  r  s     r   test_jax_array_arg_using_numpyr
  v  sj    3 !1a&1Q37G,AsyySz*+FQ;;CV%%%%r   c                     \         '       g   \        R 4       \        \        \        \
        .4      p \        \        \        \
        .\        W 4      RR7      p\        \        \        \
        .\        W P                  4      RR7      p\        \        \        \
        .\        V P                  V 4      RR7      p\        \        \        \
        .\        W P                  4      RR7      pV! ^^^4      V! ^^^4      u;8X  dG   V! ^^^4      u;8X  d7   V! ^^^4      u;8X  d'   \         P                  P                  ^.4      8X  g   Q h Q hR# )r  r   r   N)r   r~   rv   r   r   r   rV   rM   r  r   r  r  s        r   test_jax_dotproductr    s    3 !1ayA	1a)Z-u	=B	1a)Z33/	?B	1a)ZQ/	?B	1a)Z33/	?BaA;
1a
1a 	1a 				    r   c                     R  p R pR p ! R R4      pV! \         \        \        3\         \        ,           \        ,           \         \        ,           \        ,
          ^\         ,          ^\        ,          ,           \        ,
          \         \        ,           ^,          \        \        ,           ^,          ,           .RR7      V! \         \        \        3\         \        P                  ! \         4      ,           \        \        P                  ! \         4      ,           \        \        P                  ! \         ^4      ,           \        \        P                  ! \         ^4      ,          .RR7      V! \         \        \        3\         \        \        4      ,           \        \        \        4      ,           \        \        \        4      ,
          .RR7      V! \         \        \        3\        \         \         \        ,          .\        \        4      ^,           \         \        ,          ..4      \         \        ,          \        \        4      ,           \         \        ,          ,
          \        \         \         ,          \        \        4      \         \        ,          .4      .RRR7      V! \         \        3\         \        ,           ^,
          ^,          \         \         \        ,           \         \        ,           ^\         ,          ^,           ,          \         \        ,           ^,
          ^,          ,           ^\         ,          ^,           \         \        ,           ,          .RR7      .pV Fc  p\        '       g   VP                  '       d   K#  RRW V3 F6  pVP                  VR	7      pV! VP                  !  pVP                  V4       K8  	  Ke  	  R
# )c                 
    RV 3# )Nr   r   )exprss   &r   	no_op_cse$test_lambdify_cse.<locals>.no_op_cse  s    5yr   c                 >    ^ RI Hp V! V \        \        R7      R7      # )r   rN   clsr   )sympy.simplify.cse_mainrO   rW   r   )r  rO   s   & r   	dummy_cse$test_lambdify_cse.<locals>.dummy_cse  s    /5"2u"=>>r   c                 $    ^ RI HpHp V! WR7      # )r   )cse_release_variablesrO   )postprocess)r  r  rO   )r  r  rO   s   &  r   minmem!test_lambdify_cse.<locals>.minmem  s    F5<<r   c                   F   a  ] tR tRt o RR/R ltR tRRRR/R	 ltR
tV tR# )test_lambdify_cse.<locals>.Casei  requires_numpyFc                   Wn         W n        W0n        \        \	        V P                   V P                  4      4      pV Uu. uF!  qfP                  V4      P                  4       NK#  	  upV n        W@n        R # u upi r  )	r>  r  r  r  r   r  r   r   r   )r  r>  r  r  r   	subs_dictrI  s   &$$$$  r   __init__(test_lambdify_cse.<locals>.Case.__init__  s\    IJ$MSDMM:;I;@A5ay)//15ADH"0 Bs    'A7c               F    \        V P                  V P                  VR 7      # )rN   )rV   r>  r  )r  rO   s   &$r   rV   (test_lambdify_cse.<locals>.Case.lambdify  s    DIItzzs;;r   abstolr   reltolc                 aaa V P                   '       do   \        ;QJ d4    VVV3R  l\        V P                  4       4       F  '       d   K   RM)	  RM%! VVV3R  l\        V P                  4       4       4      '       g   Q hR# \        V P                  4       FI  w  rE\	        SV,          V,
          4      pV^ 8X  d   VS8  g   Q hK0  V\	        V4      ,          S8  d   KI  Q h	  R# )c           	   3      <"   T F@  w  r\         P                  SV,          \         P                  V\        R 7      SSR7      x  KB  	  R# 5i)rS  )r  rh  N)r   rA  asarrayr  ).0r  r   r'  r(  r  s   &  r   	<genexpr>Atest_lambdify_cse.<locals>.Case.assertAllClose.<locals>.<genexpr>  sI      <':tq !>>&)U]]1E]5R/5F * D D':s   AAFTN)r   r  	enumerater   r   )r  r  r'  r(  r  r   abs_errs   &fdd   r   assertAllClose.test_lambdify_cse.<locals>.Case.assertAllClose  s    """s <'0':<sss <'0':< < < < < !$((+fQi!m,6"V+++"3q6>F222 ,r   )r>  r  r  r   r   N)	r  r  r  r  r#  rV   r1  r  r	  r
  s   @r   Caser    s.     	1E 	1	<	35 	3 	3 	3r   r3  )r>  r  r  T)r>  r  r  r   FrN   N)r   r   r  )r   r   r  )r   r   r  )r   r   r   )r   r   )r   r   r   r   r9   r+   rv   r*   r   r   rV   r  r1  )	r  r  r  r3  casescaser  r   r  s	            r   test_lambdify_cser6    se   ?=3 36 	QUQYUQYqS1Q3Y]cAX1q 	 "		
 	Q""""1%%eooa##	 "		
 	QQKQKQK
 %	
 	QAaC3q6A:q!t"456!CF
1a4!SVQT*+
  		
 	QEAI>1a!eUQqS1WQQ.1qAE0BD		
Q.E^ u,,,D&Y?D$'A&F' @ r   c                     a \        \        R 7      o\        \        \        ^,          \	        \        ^,          4      .V3R lR7      ! ^4      p V '       g   Q hR# )r  c                    < \        V SR 7      # )r  rN   )rI  r  s   &r   r   "test_issue_25288.<locals>.<lambda>  s    c!T6Jr   rN   N)rW   r   rV   r   r*   )okr  s    @r   test_issue_25288r;    s9    &D	!adC1I&,J	KA	NBI2r   c                      \        4       ;_uu_ 4        \        \        \        0\        \        ,           4       R R R 4       R #   + '       g   i     R # ; ir  )r   rV   r   r   r   r   r   test_deprecated_setr=    s,    		!	!!QQ 
"	!	!	!s   &AA	c                     \         '       g   \        R 4       \        R^^4      p \        W P                  V ,          R4      pV! \         P                  . RO4      4      ^8X  g   Q hV! \         P                  . RO4      4      ^8X  g   Q h\        W V P                  ,          R4      pV! \         P                  . RO4      4      ^8X  g   Q hV! \         P                  . RO4      4      ^8X  g   Q h\        W V P                  ,          V ,          R4      p\         P                  ^.^.^..4      p\         P                  ^.^.^*..4      p\         P                  V! V4      V4      '       g   Q hR# )r#  Xr   Nr   r  )r   r~   rw   rV   r  r  r  )r?  r   r5  r6  s       r   test_issue_13881r@    s    5#$S!QACCE7#AU[[#$***U[[#$***accE7#AU[[#$***U[[#$***qssUAIw'A;;aS1#'D;;bT2$'(DQtWd++++r   c                  P   \        R 4      ! \        4      p \        R4      ! \        4      p\        V ^,          V^,          ,           V ^,          W,          ^,          ,           ,          ,           pVP                  4       p\	        W3\        3VRR7      pV! RR4      pVR8X  g   Q hR# )r   r   TrN   r   g     r@N)r   r   )r   r   r   expandrV   )r   r  rn  	eval_expranss        r   test_23536_lambdify_cse_dummyrE    s~    aAaA1q!tadacAXo..D;;=D1&!d5I
J
$C%<<r   c                   n   a  ] tR tRt o RtRtRtR t]R 4       t	]R 4       t
]R 4       tR tR tR	tV tR# )
LambdifyDocstringTestCasei  Nc                    Wn         W n        R # r  docstring_limitexpected_redacted)r  rJ  rK  s   &&&r   r#  "LambdifyDocstringTestCase.__init__  s    .!2r   c                F    R pV P                   '       g   V P                  # T# )zEEXPRESSION REDACTED DUE TO LENGTH, (see lambdify's `docstring_limit`))rK  EXPR)r  expr_redacted_msgs   & r   expected_expr'LambdifyDocstringTestCase.expected_expr!  s#    c $ 6 6 6tyyM<MMr   c                F    R pV P                   '       g   V P                  # T# )zFSOURCE CODE REDACTED DUE TO LENGTH, (see lambdify's `docstring_limit`))rK  SRC)r  src_redacted_msgs   & r   expected_src&LambdifyDocstringTestCase.expected_src&  s#    c#555txxK;KKr   c                Z    R V P                    RV P                   RV P                   R2pV# )z(Created with lambdify. Signature:

func(z)

Expression:

z

Source code:

z

Imported modules:

)	SIGNATURErP  rU  )r  expected_docstrings   & r   rY  ,LambdifyDocstringTestCase.expected_docstring+  sJ    NN# $!!" #  ! "$% 	 "!r   c                ,    \        V P                  4      # r  )r  rY  r  s   &r   __len__!LambdifyDocstringTestCase.__len__8  s    4**++r   c                h    V P                   P                   R V P                   RV P                   R2# )z(docstring_limit=z, expected_redacted=))r  r  rJ  rK  r\  s   &r   __repr__"LambdifyDocstringTestCase.__repr__;  s@    ~~&&' (#334 5!!%!7!7 8;	
r   rI  )r  r  r  r  rX  rN  rS  r#  propertyrP  rU  rY  r]  ra  r  r	  r
  s   @r   rG  rG    sh     ID
C3 N N L L 
" 
",
 
r   rG  c            	          ! R  R\         4      p \        R4      pV ! RRR7      V ! ^dRR7      V ! ^RR7      V ! ^ RR7      V ! R	RR7      3pV F:  p\        V.VRVP                  R7      pVP                  VP
                  8X  d   K:  Q h	  R# )
c                   "    ] tR tRtRtRtRtRtR# )Ntest_lambdify_docstring_size_limit_simple_symbol.<locals>.SimpleSymbolTestCaseiE  r   z(def _lambdifygenerated(x):
    return x
r   Nr  r  r  r  rX  rN  rS  r  r   r   r   SimpleSymbolTestCaserf  E  s    	 	r   rh  r   NFrI  Tr   rJ  r   )rG  r   rV   rJ  r  rY  )rh  r   
test_cases	test_caselambdified_exprs        r   0test_lambdify_docstring_size_limit_simple_symbolrm  C  s    
8 
 	A 	TUKSEJQ%HQ$GR4HJ  	"C%55	
 &&)*F*FFFF  r   c            	      p    ! R  R\         4      p \        R4      w  rpW.W1V,           V,           ^,          P                  4       .pV ! RRR7      V ! ^RR7      V ! ^2RR7      V ! ^ RR7      V ! R	RR7      3pV F;  p\        WV.VRVP                  R7      pVP
                  VP                  8X  d   K;  Q h	  R# )
c                   "    ] tR tRtRtRtRtRtR# )Htest_lambdify_docstring_size_limit_nested_expr.<locals>.ExprListTestCaseib  x, y, zzK[x, [y], z, x**3 + 3*x**2*y + 3*x**2*z + 3*x*y**2 + 6*x*y*z + 3*x*z**2 +...zdef _lambdifygenerated(x, y, z):
    return [x, [y], z, x**3 + 3*x**2*y + 3*x**2*z + 3*x*y**2 + 6*x*y*z + 3*x*z**2 + y**3 + 3*y**2*z + 3*y*z**2 + z**3]
r   Nrg  r   r   r   ExprListTestCaserp  b  s    	 	
J 	r   rr  rq  NFrI  Tr   ri  r   )rG  r   rB  rV   rJ  r  rY  )rr  r   r   r   rn  rj  rk  rl  s           r   .test_lambdify_docstring_size_limit_nested_exprrs  `  s    

4 

 i GA!sAQQ..01D 	GFtDdCtDJ  	"1I%55	
 &&)*F*FFFF  r   c            	          ! R  R\         4      p \        R4      w  rp\        \        P                  V.W,           V,           W,           V,           ^,          P                  4       ..4      pV ! RRR7      V ! ^RR7      V ! ^2RR7      V ! ^ RR7      V ! R	RR7      3pV F;  p\        WV.VRVP                  R7      pVP                  VP                  8X  d   K;  Q h	  R# )
c                   "    ] tR tRtRtRtRtRtR# )Atest_lambdify_docstring_size_limit_matrix.<locals>.MatrixTestCasei  rq  zNMatrix([[0, x], [x + y + z, x**3 + 3*x**2*y + 3*x**2*z + 3*x*y**2 + 6*x*y*z...zdef _lambdifygenerated(x, y, z):
    return ImmutableDenseMatrix([[0, x], [x + y + z, x**3 + 3*x**2*y + 3*x**2*z + 3*x*y**2 + 6*x*y*z + 3*x*z**2 + y**3 + 3*y**2*z + 3*y*z**2 + z**3]])
r   Nrg  r   r   r   MatrixTestCaserv    s    	 	
0 	r   rw  rq  NFrI  Tr   ri  r   )
rG  r   rv   r   r  rB  rV   rJ  r  rY  )rw  r   r   r   rn  rj  rk  rl  s           r   )test_lambdify_docstring_size_limit_matrixrx    s    
2 
 i GA!AFFA;aeai!^,C,C,E FGHD 	tuEseDrTBqDArTBJ  	"1I%55	
 &&)*F*FFFF  r   c                  h    \        R 4      p RV 33p\        W4      pV! ^4      pVR8X  g   Q R4       hR# )r  z2Lambdify did not handle the empty tuple correctly.Nr   )r   r   r  )r  rn  r   r  s       r   test_lambdify_empty_tuplerz    s=    A:DAqTFZU!UUr   c                      R p \        ^RR4      P                  4       p\        ^^^4      P                  4       pRpR\        ,          p\        WV 4      '       g   Q h\        W$V 4      '       g   Q hR# )r  r   Nrh  gQ@te_޿gF#O3t9)rs   r   r   r   )rZ  sympy_result_integersympy_result_complexmpmath_result_integermpmath_result_complexs        r   (test_assoc_legendre_numerical_evaluationr    sp    
C)!S#6<<>)!Q288:..q0)#FFFF)#FFFFr   c            
         \         .p \        '       d   V P                  R 4       V  EF?  p\        \        \        R\        \        4      3R4      V4      pV! \        R4      54      R8X  g   Q hV! \        R4      ) 4      R8X  g   Q hV! R4      R8X  g   Q h\        \        \        R\        \        4      ,          \        \        4      3R4      V4      pV! \        R4      54      R8X  g   Q hV! \        R4      ) 4      R8X  g   Q hV! R4      R8X  g   Q h\        \        \        R\        \        4      3R4      V4      pV! \        R4      4      R8X  g   Q hV! R4      R8X  d   EK@  Q h	  R# )	r   g      @r   r  g      E@r  N)r   Tg      )
r   r   r  rV   r   r$   ra   r  r   r`   )r   r  r   r   r  s        r   test_Piecewiser    s0   fGuwQ	3a/;?E%,4'''%,4'''v}}aCQKq#:KH#N5<- D(((5<- D(((#w#~~ Q	3a/;?Eu#%%%v}} r   c                     \         '       g   \        R 4       \        RR4      p \        W 4      p\         P	                  V! \         P                  . RO4      4      \         P                  . RO4      8H  4      '       g   Q hR# )r#  r  Nr   r   )r   r~   rR   rV   r  r  )r  r   s     r   test_array_symbolr    sW    5#$CA!A99Qu{{7+,G0DDEEEEr   (`  	itertoolsr   r   r  r  r  r   rA  sympy.testing.pytestr   r   sympy.concrete.summationsr   sympy.core.functionr   r   r	   sympy.core.numbersr
   r   r   r   r   r   r   sympy.core.relationalr   sympy.core.singletonr   sympy.core.symbolr   r   (sympy.functions.combinatorial.factorialsr   r   %sympy.functions.combinatorial.numbersr   r   $sympy.functions.elementary.complexesr   r   &sympy.functions.elementary.exponentialr   r   %sympy.functions.elementary.hyperbolicr   r   r   #sympy.functions.elementary.integersr    (sympy.functions.elementary.miscellaneousr!   r"   r#   $sympy.functions.elementary.piecewiser$   (sympy.functions.elementary.trigonometricr%   r&   r'   r(   r)   r*   r+   r,   sympy.functionsr-   r.   r/   sympy.functions.special.besselr0   r1   r2   r3   r4   r5   &sympy.functions.special.beta_functionsr6   r7   r8   'sympy.functions.special.delta_functionsr9   'sympy.functions.special.error_functionsr:   r;   r<   r=   r>   r?   r@   'sympy.functions.special.gamma_functionsrA   rB   rC   rD   &sympy.functions.special.zeta_functionsrE   sympy.integrals.integralsrF   sympy.logic.boolalgrG   rH   rI   rJ   rK   rL   %sympy.matrices.expressions.dotproductrM   r  rO   sympy.tensor.arrayrP   rQ   sympy.tensor.array.expressionsrR   sympy.tensor.indexedrS   rT   r  rV   sympy.utilities.iterablesrW   sympy.vectorrX   sympy.core.exprrY   sympy.codegen.cfunctionsrZ   r[   r\   r]   r^   r_   r`   ra   sympy.codegen.numpy_nodesrb   rc   rd   re   rf   rg   sympy.codegen.scipy_nodesrh   ri   rj   rk   rl   #sympy.functions.special.polynomialsrm   rn   ro   rp   rq   rr   rs   rt   ru   sympy.matricesrv   rw   rx   sympy.printing.codeprinterry   r6  rz   sympy.printing.numpyr{   r|   r}   r~   sympy.utilities.decoratorr   sympy.utilities.exceptionsr   sympy.externalr   r   r   r   MutableDenseMatrixr   r   r   r   r   r   r   osenvironr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r!  r&  r,  r.  r?  rG  rJ  rM  rP  rR  rT  rW  rY  r\  r_  rb  rd  rf  rk  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r
  r  r  r  r$  r.  r8  r>  rE  rP  r]  rb  rg  rj  rl  ro  rr  rt  rx  r|  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r!  r$  r&  r(  r*  r-  r/  r5  r8  r:  rV  ri  rk  rm  rs  ry  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r  r  r  r
  r  r6  r;  r=  r@  rE  rG  rm  rs  rx  rz  r  r  r  r   r   r   <module>r     s       	   ? ) 8 8 I I I $ " . Q E : ; C C 5 E E :A A A * * W W W W ? _ _ _ Y Y 7 . @ @ < ' 5 6 1 - 6 # + Y Y Y Y Y 2 < <+ + + > = E 3 - D % 9 6 ( J   ggj8*-EF
	
"<(
VEg),BJJ%&Y
1a



8$
*0 H H $ $ % %4 ' ' N N$&&H+..///...///000>*B	6"	((
5 $ ""
#:G:J L42H&D&
EQ$N</ .@	@:	,-./<4	,

#"*6((GDB* 7*
+@*5(
*?
;&GTD1--++

+6Yr9x*$
?+\(,0!E	2"61/(4	D<?$+>
166MU<2='
'"&&"[(z ,*(
 (
VG:GD GFV
G0Fr   