U
    «Ì0e$˜ ã                   @   s‚  d dl mZmZ d dlmZ d dlmZ d dlmZm	Z	m
Z
 d dlmZ d dlmZmZ d dlmZmZmZmZmZmZ d dlmZmZmZmZ d d	lmZ d d
lmZm Z m!Z!m"Z" d dl#m$Z$ d dl%m&Z& d dl'm(Z(m)Z)m*Z*m+Z+m,Z, d dl-m.Z.m/Z/m0Z0 d dl1m2Z2m3Z3m4Z4m5Z5 d dl6m7Z7m8Z8m9Z9 d dl:m;Z; d dl<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZD d dlEmFZFmGZGmHZHmIZI d dlJmKZK d dlLmMZMmNZN d dlOmPZP d dlQmRZR d dlSmTZT d dlUmVZV d dlWmXZX d dlYmZZZm[Z[m\Z\ d dlm]Z] d dl^m_Z_m`Z`maZa d dlbmcZcmdZdmeZe d dlYmfZfmgZgmhZhmiZimjZjmkZkmlZlmmZmmnZnmoZo d d lpmqZq d d!lrmsZs d d"ltmuZumvZvmwZwmxZx d d#lymzZ{ d d$l|m}Z}m~Z~mZm€Z€mZm‚Z‚mƒZƒm„Z„m…Z…m†Z†m‡Z‡mˆZˆm‰Z‰mŠZŠm‹Z‹ dNd&d'„ZŒd(d)„ Zd*d+„ ZŽd,d-„ Zd.d/„ Zd0d1„ Z‘d2d3„ Z’d4d5„ Z“d6d7„ Z”d8d9„ Z•d:d;„ Z–d<d=„ Z—d>d?„ Z˜d@dA„ Z™dBdC„ ZšdDdE„ Z›dFdG„ ZœdHdI„ ZdJdK„ ZždLdM„ ZŸdNdO„ Z dPdQ„ Z¡dRdS„ Z¢dTdU„ Z£dVdW„ Z¤dXdY„ Z¥evdZd[„ ƒZ¦d\d]„ Z§d^d_„ Z¨d`da„ Z©dbdc„ Zªeuddde„ ƒZ«dfdg„ Z¬dhdi„ Z­djdk„ Z®dldm„ Z¯dndo„ Z°dpdq„ Z±drds„ Z²dtdu„ Z³dvdw„ Z´dxdy„ Zµdzd{„ Z¶d|d}„ Z·d~d„ Z¸ewd€ƒdd‚„ ƒZ¹dƒd„„ Zºd…d†„ Z»d‡dˆ„ Z¼evd‰dŠ„ ƒZ½d‹dŒ„ Z¾euddŽ„ ƒZ¿eudd„ ƒZÀevd‘d’„ ƒZÁd“d”„ ZÂd•d–„ ZÃd—d˜„ ZÄeud™dš„ ƒZÅd›dœ„ ZÆddž„ ZÇdŸd „ ZÈd¡d¢„ ZÉd£d¤„ ZÊd¥d¦„ ZËd§d¨„ ZÌd©dª„ ZÍd«d¬„ ZÎd­d®„ ZÏd¯d°„ ZÐd±d²„ ZÑd³d´„ ZÒdµd¶„ ZÓd·d¸„ ZÔd¹dº„ ZÕd»d¼„ ZÖd½d¾„ Z×d¿dÀ„ ZØdÁdÂ„ ZÙdÃdÄ„ ZÚdÅdÆ„ ZÛdÇdÈ„ ZÜdÉdÊ„ ZÝevdËdÌ„ ƒZÞeudÍdÎ„ ƒZßdÏdÐ„ ZàevdÑdÒ„ ƒZádÓdÔ„ ZâdÕdÖ„ Zãd×dØ„ ZädÙdÚ„ ZådÛdÜ„ ZædÝdÞ„ Zçdßdà„ Zèdádâ„ Zédãdä„ Zêdådæ„ Zëdçdè„ Zìdédê„ Zídëdì„ Zîdídî„ Zïeudïdð„ ƒZðdñdò„ Zñdódô„ Zòdõdö„ Zóeud÷dø„ ƒZôeudùdú„ ƒZõdûdü„ Zödýdþ„ Z÷eudÿd „ ƒZødd„ Zùdd„ Zúdd„ Zûdd„ Züd	d
„ Zýdd„ Zþdd„ Zÿdd„ Z dd„ Zdd„ Zeudd„ ƒZdd„ Zdd„ Zdd„ Zdd„ Zdd „ Zd!d"„ Z	d#d$„ Z
d%d&„ Zd'd(„ Zd)d*„ Zd+d,„ Zd-d.„ Zd/d0„ Zd1d2„ Zd3d4„ Zd5d6„ Zd7d8„ Zd9d:„ Zd;d<„ Zd=d>„ Zd?d@„ ZdAdB„ ZdCdD„ ZdEdF„ ZdGdH„ ZdIdJ„ ZdKdL„ ZdMS (O  é    )ÚQÚask)ÚAdd)ÚTuple)Ú
DerivativeÚFunctionÚdiff)ÚMul)ÚGoldenRatioÚTribonacciConstant)ÚEÚFloatÚIÚRationalÚooÚpi)ÚEqÚGtÚLtÚNe)ÚS)ÚDummyÚSymbolÚWildÚsymbols)Úsympify)Úbinomial)ÚAbsÚargÚ	conjugateÚimÚre)ÚLambertWÚexpÚlog)ÚatanhÚcoshÚsinhÚtanh)ÚcbrtÚrootÚsqrt)Ú	Piecewise)ÚacosÚasinÚatanÚatan2ÚcosÚsecÚsinÚtan)ÚerfÚerfcÚerfcinvÚerfinv)ÚIntegral)ÚAndÚOr)ÚMatrix)ÚSparseMatrix)ÚPoly)Ússtr)Údenom)ÚnsolveÚsolveÚsolve_linear)Únfloat)Úsolve_linear_systemÚsolve_linear_system_LUÚsolve_undetermined_coeffs)Ú_filtered_gensÚ_solve_lambertÚ_lambert)
Ú_invertÚunradÚchecksolÚposifyÚ_ispowÚ	det_quickÚdet_permÚ	det_minorÚ_simple_densÚdenoms)Úcm©ÚCRootOf)ÚslowÚXFAILÚSKIPÚraises)Úverify_numerically)ÚaÚbÚcÚdÚeÚkÚhÚpÚxÚyÚzÚtÚqÚmÚRé   c                 K   s   t t| ƒj|f|ŽddS )NT)Z	full_prec)r?   r   Úevalf)ra   ÚnÚoptions© rp   úD/tmp/pip-unpacked-wheel-_6tpq7m6/sympy/solvers/tests/test_solvers.pyÚNS-   s    rr   c                  C   sö   t tdƒ\} }| tƒ|tƒ }}t|t d || d g|t|ƒ||d t| d iks\t‚t||t  d ||gdd|d|digksŒt‚t||d t  t ||gdd|t|digksÀt‚t| dƒd td gddtd	| dƒdigksòt‚d S )
NZfgé   é   é   T©Údictr   é   éþÿÿÿ)Úmapr   re   rB   rf   ÚAssertionError)ÚfÚgZfxZgxrp   rp   rq   Útest_swap_back1   s     ÿ04r~   c              	   C   s0   zt | |ƒ W dS  ttfk
r*   Y dS X d S )NTF)rB   Ú	TypeErrorÚNotImplementedError)ÚeqÚsymbolrp   rp   rq   Úguess_solve_strategy;   s
    
rƒ   c                   C   s  t tdƒtƒst‚t ttƒs t‚t tt tƒs2t‚t dt tƒsDt‚t ttdƒ tƒsZt‚t tdtddƒ  tƒsvt‚t td d tƒsŒt‚t td d tƒs¢t‚t tt t tƒs¸t‚t tttƒ t tƒsÒt‚t ttd  td tdtd  ƒ  tƒst‚d S )Né   rs   rx   ru   )	rƒ   r   re   r{   r]   r+   r   rf   r#   rp   rp   rp   rq   Útest_guess_polyC   s    " ÿr…   c                   C   sv   t ttƒd tƒst‚t ttddƒ ttƒ d tƒs:t‚t dt dttƒ  tƒsXt‚t tdt  t tƒsrt‚d S )Nrx   ru   r„   )rƒ   r+   re   r{   r   rf   rp   rp   rp   rq   Útest_guess_poly_cvS   s     ÿr†   c                   C   s€   t td td d  tƒst‚t ttd  td tdtd  ƒ  tƒsLt‚t ttƒd ttddƒ ttƒ d  tƒs|t‚d S )Nrx   rs   ru   )rƒ   re   r{   rf   r+   r   rp   rp   rp   rq   Útest_guess_rational_cv^   s    " ÿr‡   c                   C   sœ   t ttƒd tƒst‚t dttƒ t tƒs0t‚t ttƒtt ƒ t tƒsPt‚t dt d tƒsft‚t dt  d tƒs~t‚t ttt  t tƒs˜t‚d S )Nrx   rs   ru   é
   )rƒ   r#   re   r{   r1   rf   r]   r^   rp   rp   rp   rq   Útest_guess_transcendentali   s     ÿr‰   c               	      sT	  t dtdi‰ t dt  d dt  dt  d f‰t‡ ‡fdd„ttttfD ƒƒsTt‚tt	ˆŽ t tƒˆ kslt‚ttt d d	 ƒƒt
dƒt
dƒ hks–t‚tt t d
 t t d gƒt d	tdiksÂt‚tt tt ƒ t ddtt ƒgksæt‚tdƒtdt ƒ  krg ksn t‚tddgƒg ks$t‚ttdƒgt gƒg ks@t‚ttdd„ ƒ ttdd„ ƒ tt t ttgddgkszt‚ttdd„ ƒ ttdd„ ƒ tt t ttgddgks´t‚ttd
 thƒd
gksÐt‚ttd
 t thƒtd
igksòt‚tt t d
 t tgƒd
t tfgkst‚tt t d
 t tgddt d
t igksJt‚tt t d
 ƒt d
t igksnt‚tttt   d ttgƒtdtdiksšt‚ttt t  t t ttgƒtt ttiksÌt‚tt d  tt   t t t d d	t t  d	 t  } t| tttgtttgd}|tt dt  td	t t td  d	t  tdd	t  iksbt‚t| tttgdd|gks‚t‚t| tttgddtttgt dt  dd	t  d	t t td  d	t  fhfksÜt‚t| tttgtttgddtt dt  td	t t td  d	t  tdd	t  iks8t‚tt t  td  d ttf}t|Ž td tt   d t  tfgks‚t‚ttt  td t d	   d
t   d	t   ttddttd  t  d
t d
   dt d   d	t   d t d t d	   igkst‚tddt  t ttƒ  ƒg ks*t‚ttdd„ ƒ tttt ƒt  gƒt tdƒ tdigksft‚ttt ƒt  ttƒt fƒt tdƒ ttdƒ igks¢t‚tttt ƒt  gt tƒtdƒ dfgksÐt‚tt d t tƒt d gksòt‚tg t gƒg kst‚tt d d	 td ft tƒddgks2t‚tt d d	 td ftt ƒddgks\t‚tt d d	 t td t ftttt ddtttt gtttd td	t ƒ ftttd td	t ƒfhfksÌt‚tt t d d	 t t d gƒt t d igkst‚tt t d dt  dt  d	 fƒt t d iks:t‚ttt d d ƒƒd gksXt‚tdtt dƒgt gddt digks‚t‚ttt t ƒtt dƒtt t d ƒgt gddg ks¸t‚ttt t d ƒt dk gt ƒrÚt‚ttt dƒt d dk gƒtt dƒkst‚ttt t ƒtt t d ƒgt ƒg ks,t‚tdt ƒg ks@t‚tt d dgt gddg tƒ fksht‚tt t t d  d td t  t dt  gddd!t tgdt tft dfhfksÂt‚tttd t td
ƒt  fƒ ¡ ƒt tgksôt‚tt d t gtt fddtt gtƒ fk	s"t‚tt d t gtt hddt tgtƒ fk	sPt‚d S )"Néýÿÿÿrx   rt   rs   é   rl   c                 3   s"   | ]}t |ˆƒttƒˆ kV  qd S ©N©rB   re   rf   )Ú.0Ú	container©ÚansÚeqsrp   rq   Ú	<genexpr>y   s     z"test_solve_args.<locals>.<genexpr>r„   ru   éÿÿÿÿT©Zimplicité*   c                   S   s   t td td ftttƒS ©Nru   rs   r   rp   rp   rp   rq   Ú<lambda>…   ó    z!test_solve_args.<locals>.<lambda>c                   S   s   t tttƒS rŒ   ©rB   re   rp   rp   rp   rq   r˜   †   r™   ©Úexcluder   c                   S   s   t td td ftttƒS r—   r   rp   rp   rp   rq   r˜   Š   r™   c                   S   s   t tttƒS rŒ   rš   rp   rp   rp   rq   r˜   ‹   r™   rv   ©ÚsetF)rœ   Úsimplifyé   é   c                   S   s$   t ttƒttƒ ttƒ ttƒ ƒS rŒ   )rB   r#   re   r3   rf   rp   rp   rp   rq   r˜   ±   r™   )ry   rs   )rs   rs   )rs   ry   ç        )rž   Úcheck)re   rf   ÚallÚtupleÚlistrž   Ú	frozensetr{   rB   r   r   r#   r+   r[   Ú
ValueErrorr]   r^   r_   rc   rd   rb   r€   r"   r   rg   r   Úkeys)r   ÚsolÚargsrp   r   rq   Útest_solve_argsu   s¢    $
ÿ*,$("*.$,28D >ÿ
8ÿ
,2Fÿ
& ÿ.ÿÿ
."***
þÿ
68*6"*((. ÿÿ
2.r¬   c                  C   sÎ  t dt d tƒtddƒgks"t‚t tdt dƒtƒtddƒgksFt‚tt td d tƒƒtj tjhksnt‚tt ttd dƒtƒƒtj tjhks˜t‚t ttd  tƒtd gks¸t‚t	tdƒ} t ttd  tƒ| |  d t
dƒt |  d  |  d t
dƒt |  d  gkst‚tdƒ\}}}}}}t |t |t  | |t |t  | gttƒt|| ||  || ||   t|| ||  || ||   iks¦t‚ttjttji}t tt tt fttƒ|ksØt‚t tt tt fttfƒ|ksüt‚t tt tt fttgƒ|ks t‚tt td dt  d tƒƒddtj  tdƒddtj  hksft‚tt td d d t tƒƒt
dt
tƒ ƒt
dt
tƒ ƒ t
dt
tƒ ƒt
dt
tƒ ƒ hksÊt‚d S )Nru   rs   rx   úa11,a12,a21,a22,b1,b2rl   r„   ry   )rB   re   r   r{   r   rž   r   ÚOnerf   r*   r+   r   r   ÚZeroÚHalfr]   )ÚrxÚa11Úa12Úa21Úa22Úb1Úb2Úsolutionrp   rp   rq   Útest_solve_polynomial1Ý   sD    "$(* 
  ÿ.  þÿ
"$$ý ÿÿr¹   c                   C   s   t dtƒg kst‚d S )Nr„   ©rB   re   r{   rp   rp   rp   rq   Útest_solve_polynomial2  s    r»   c                   C   s´   t ttƒd tƒdgkst‚t ttƒd tƒdgks8t‚t ttddƒ d tƒdgksZt‚t ttddƒ d tƒdgks|t‚t ttƒttddƒ  ttddƒ  tƒdgks°t‚dS )	zŽ
    Test for solving on equations that can be converted to a polynomial equation
    using the change of variable y -> x**Rational(p, q)
    rx   rs   r„   r¡   ru   é   r   N)rB   r+   re   r{   r   rp   rp   rp   rq   Útest_solve_polynomial_cv_1a  s
    ""r½   c                   C   sj   t tdt dtttƒ   tƒƒtjdtd  hks8t‚t ttttdƒd  tƒƒtjtdƒhksft‚d S )Nr„   rx   rs   ru   r¼   )	rž   rB   re   r]   r+   r   r¯   r{   r*   rp   rp   rp   rq   Útest_solve_polynomial_cv_1b  s    8r¾   c                   C   sv   t tdt  d tƒtjttdƒ d  tjttdƒ d  gtjttdƒ d  tjttdƒ d  gfksrt‚dS )z‰
    Test for solving on equations that can be converted to a polynomial equation
    multiplying both sides of the equation by x**m
    rx   ru   rs   N)rB   re   r   r°   r   r+   r{   rp   rp   rp   rq   Útest_solve_polynomial_cv_2  s
    **ÿÿr¿   c                  C   s  t d dt d   dt d   dt   d } t| dd	}|D ]&}|  t | ¡ ¡ ¡ }t|d
ƒs<t‚q<t d dt d   dt d   dt   d } t| ƒ}|D ]}|jtksœt‚qœttt d dt d   d ƒd
 ddtt d dt d   d d
ƒ ¡ ksþt‚d S )Nrt   én   ru   é7   rs   i	  iÓ  F©r£   r   rl   rˆ   é   é   ©Úexponent)	re   rB   Úsubsrn   Útnr{   ÚfuncrW   rD   ©r|   ÚsÚrÚresrp   rp   rq   Útest_quintics_1   s    ,,	& ÿrÎ   c               
   C   s®  t d dt   d } t| dd}|D ]&}|  t | ¡ ¡ ¡ }t|dƒs$t‚q$t d dt d   dt d   d	t   d
 } t| ƒ}|D ]}|jtks„t‚q„tt d dt d   dt d   t  d ƒtt d dt d   dt d   t  d dƒtt d dt d   dt d   t  d dƒtt d dt d   dt d   t  d dƒtt d dt d   dt d   t  d dƒtt d dt d   dt d   t  d dƒgksªt‚d S )Nrt   rl   r    FrÂ   r   ru   rs   rˆ   rÃ   r‹   rx   r„   )re   rB   rÇ   rn   rÈ   r{   rÉ   rW   rÊ   rp   rp   rq   Útest_quintics_27  s     ,*,,,,,ûrÏ   c                  C   sF   t d t d  dtddƒ  } t| ƒt|  ƒ  kr<g ksBn t‚d S )Nrt   ru   rs   rx   )re   r   rB   r{   ©rf   rp   rp   rq   Útest_quintics_3K  s    rÑ   c                  C   s>   t td dt  d ƒ} tdd„ | D ƒƒr6t| ƒdks:t‚d S )Nr‹   rs   c                 s   s   | ]}t |tƒV  qd S rŒ   )Ú
isinstancerW   ©rŽ   Úirp   rp   rq   r“   S  s     z&test_highorder_poly.<locals>.<genexpr>)rB   re   r¤   Úlenr{   ©rª   rp   rp   rq   Útest_highorder_polyP  s    r×   c                   C   s<   t ttd  td tdtd  ƒ  tƒtd gks8t‚dS )z!Test solve for rational functionsru   rs   rx   N)rB   re   rf   r+   r{   rp   rp   rp   rq   Útest_solve_rationalV  s    rØ   c                   C   s&   t ttƒd t ƒdt gks"t‚dS )z)Test solve for simple conjugate functionsru   N)rB   r   re   r   r{   rp   rp   rp   rq   Útest_solve_conjugate[  s    rÙ   c                   C   sˆ   t td td  ttddtt ittigks2t‚t td td ttƒ  ttddtt tttƒƒ itttttƒƒ igks„t‚d S )Nrs   Trv   )rB   re   rf   r{   r#   r+   rp   rp   rp   rq   Útest_solve_nonlinear`  s    26ÿrÚ   c                  C   sl   t dƒ} tt| d d| d d   dd| d d   ƒ| ƒg ksDt‚tt| d|   d|  ƒ| ƒg ksht‚d S )Nre   rs   rx   r„   )r   rB   r   r{   ©re   rp   rp   rq   Útest_issue_8666f  s    <rÜ   c                   C   s:   t ddtd  dt   d tƒtddƒtjgks6t‚d S )Nr„   rs   é   rŠ   )rB   re   r   r   r°   r{   rp   rp   rp   rq   Útest_issue_7228l  s    rÞ   c                   C   s0   t ttd ƒttd ƒ tƒtdƒgks,t‚d S )Nru   rˆ   )rB   r$   re   r+   r{   rp   rp   rp   rq   Útest_issue_7190p  s    rß   c                  C   s<   t dƒ} | t| d d ƒ }| | ¡}t|| ƒg ks8t‚d S )Nre   rs   rx   )r   r+   r   rB   r{   )re   r|   Zf_diffrp   rp   rq   Útest_issue_21004t  s    
rà   c                  C   st   t dƒ} ttt| t| dƒ| dkB fƒdƒƒ}|dgks:t‚ttt| t| dƒ| dkB fƒdƒ| dd}|dkspt‚d S )Nre   r   rx   rÖ   T)r   rB   r   r,   r{   rM   )re   rÌ   rp   rp   rq   Útest_issue_24650{  s
    $*rá   c               	   C   s¸  t dƒ\} }}}}t| d | | | d|  |d g| |gƒg ksDt‚t| d | | | d|  | d g| |gƒg ksvt‚t| d | d | | | d|  g| |gƒg ks¨t‚t| d|  d d|  d|  d g| |ƒ| d|diksät‚tdd||d  |d d dg|d |d d	| d |d  dgd
ddddggƒ}t|| |||ƒ| || d  | |d||| d  | iksxt‚t| | | | | | g| |||ƒ| | || iks´t‚d S )Nzx, y, z, t, nrx   rs   rt   rŠ   r‹   rl   r   ry   r”   )r   rB   r{   r<   rE   )re   rf   rg   rh   rn   ÚMrp   rp   rq   Útest_linear_systemƒ  s    222<"þ*ÿ
rã   c                  C   sV   t ddddgddddgddddgd	dddggƒ} t| tttƒtdtd
tdiksRt‚d S )Nr   g      .@g      $@g     à…@rx   g      Y@g      @g      i@g      Àg      NÀg      d@)r<   rE   re   rf   rg   r{   )râ   rp   rp   rq   Útest_linear_system_xfail—  s    


ýrä   c                  C   sš   t dƒ} t| ddƒ| ddƒ | ddƒ | ddƒ | ddƒ | ddƒ g| ddƒ| ddƒ| ddƒ| ddƒƒ| ddƒ| ddƒ | ddƒ| ddƒ iks–t‚d S )Nr]   r   rx   )r   rB   r{   ©r]   rp   rp   rq   Útest_linear_system_function¢  s    >   ÿ&ÿræ   c                  C   s2   dd„ } t ddƒD ]}| |ƒ\}}t||ƒ qd S )Nc           
         sÔ   d|  d }t ddd\‰ }}t d | ¡dd}t d | ¡dd}t d |d ¡dd}t‡ fd	d
„t|ƒD ƒƒ}g }t| ƒD ]L}	| | ˆ |	¡ ˆ |i¡||	  ¡ | | ˆ |	¡ ˆ |i¡||	  ¡ q~||fS )Nrs   rx   z	x, x0, x1T©Úrealzy0_:{}zy1_:{}zc_:{}c                    s   g | ]\}}|ˆ |  ‘qS rp   rp   )rŽ   ÚoZcoeffrÛ   rp   rq   Ú
<listcomp>³  s     zMtest_linear_system_symbols_doesnt_hang_1.<locals>._mk_eqs.<locals>.<listcomp>)r   ÚformatÚsumÚ	enumerateÚrangeÚappendr   rÇ   )
ZwyÚorderÚx0Úx1Zy0sZy1sr_   Úexprr’   rÔ   rp   rÛ   rq   Ú_mk_eqsª  s    $&z9test_linear_system_symbols_doesnt_hang_1.<locals>._mk_eqsrx   rÝ   )rî   rB   )rô   rn   r’   r_   rp   rp   rq   Ú(test_linear_system_symbols_doesnt_hang_1¨  s    rõ   c               '   C   s¸  t ddddddddd	d
ddddd	dddddgdddddddddddddddd d!d"d#d$gdd%d!d&d'd
dd(d)dd*d+d,ddd-d.dd%d/gdd0d1d(d2d3d4d5d6dd7d8dd9dd7d$dd:dgd;ddd<ddd9d&ddd8d=d>dd?d@dAdBdCd6gddDddddEddddddFdGdHd"d8dFd!d2dIgd+dAdEddd'dJddKdHd9dLd3d6dEd5dDdddgdMd<d0d2ddNd'd6d5d1d4dOd4d9d)dd>ddBdgd-d"d dddPddQdRdSdd.dTdd7d)d#dUdNd&gddd?d*d6dd:dddCd	dVddd@d&d/dddSgd#dHdWdVdUd*dXdd ddYdHdUdZdYdJdId[dFdgd1dVdHd%dd!dEd7dEdGd1dd\dPddd>dYdGdgd>dd]d(dPd4dd@d[dd^d@dGd0dd#dUdKddEgd dRddddd7ddQdLdGd
dd&d
dEd7dd;dgdd_dXd#dTddTd>dddEdZd/dXdRdddId`dRgdNd1d,dTd
dJdad:ddd8dddBd#dd`d%ddXgdGdAdCdPdXd ddadPdddHdLd]dSdTd&d/dHdgdddPdddd_d$dHdQd#d\dXdUd	dAddd4dPgd@d=d5d3d#dPdKd)d!d[ddBd6dd\ddd+dad/ggƒ} tdbƒ }\}}}}}}}}	}
}}}}}}}}}}|tdcƒ dd |tdeƒ df |tdgƒ dh |tdiƒdj |tdkƒ dl |tdmƒdn |tdoƒ dd |	tdpƒ dq |
tdrƒdj |tdsƒ dl |tdtƒ dl |tduƒ dv |tdwƒdv |tdxƒ dj |tdyƒdz |td{ƒ dj |td|ƒdn |td}ƒ dj |td~ƒdl i}t| t |d ƒ ƒ}t||ƒ|ks€t‚td€ƒ}t||  t |d ƒ ƒ}t||ƒ|ks´t‚d S )NéB   é   é'   é2   éX   é(   é%   é`   r¡   éA   é   é   éH   é   rÁ   é   éL   rˆ   é]   é"   éb   é;   é,   éC   éJ   é^   éG   é=   é<   é   r‹   rs   é9   rÝ   é   éN   é[   é   é@   é5   éM   éU   é:   éW   rÄ   é$   ru   éF   rl   éD   é+   éV   éS   éQ   é   é.   é   é?   éE   é   éY   é>   é   é&   é   rÃ   r    é   é-   éc   éa   éR   é#   é	   éZ   é)   r–   é!   éK   é4   rt   é    é3   éO   é   é1   éP   rx   é6   é/   r   é0   éI   é\   é8   éT   é   zx:19l	   ³fœX·j"Ìbµ!SBs= l	   Ì0e7HPÈég%Oï0 l   B>é tsypYÎ/l   s LYÀr%ú9És;Ll   eAnA²&d%â$ÌI%%l	   æ ˜2$(äJôs’gw l   ydx#ZçcCj×GæY_l	   ˜`Jn ‘+ÒOKßa l	   I\<ße:‘B	W9òP l	   È
 _J²a³woâZ% l	   :îN1âS:leÛ)ÀB l	   d/%ÙpYA»7qmÎ l	   m:.v,¦&WCa0 l   àxmK¤qe@ Agd5l   Ÿ[ioäšzkÄz« l	   NƒnÚ:!=ƒEùl2 l	   [R!`ª8rq§wÛ„+Ò l	   [fîPîo/”kš#8o	 l	   ëKºdLJ¤w0jG3Y)9r l	   ²È„Rlx¬`Ý[¸6gI l	   vJ²¦1¨vÐBT l   x™c°ykiö&õ_#Ol   ¿)à]’y½RH-®-TWl   ¨IÄS·ððsÔf
rWl   
…t‰[T”Fl	   ñ\CQâæl2ñGÝBª3 l	   1]* À}ŽcûÂkkw l	   ]bSE:_jVÒH}†S ©rx   rf   )r<   r   r   r¦   rB   r{   r   )râ   Úsymsrñ   rò   Úx2Úx3Úx4Úx5Úx6Úx7Úx8Úx9Úx10Zx11Zx12Zx13Zx14Zx15Zx16Zx17Zx18rª   r’   rf   rp   rp   rq   Ú(test_linear_system_symbols_doesnt_hang_2Å  s„    *******************í2    
  
   
    
  
  
  
írS  c               
   C   sš   t dƒ} tddddgddd|  dgdd| d dggƒ}t|tttgƒtd| d d	|    tdd
|  | d d	|     td|  | d d	|    iks–t‚d S )Nrn   rx   rs   r   ru   r„   r”   rŠ   r-  r    r‹   )r   r<   rF   re   rf   rg   r{   )rn   râ   rp   rp   rq   Útest_linear_systemLUü  s    ."  þrT  c                     s  ddl m} m} tttƒd tƒtdƒgks0t‚tt| t | ttƒd  tƒƒ| |  tdƒhksht‚tt	tƒt
 tƒtt
ƒ dt  tt
ƒgks˜t‚tdt	tƒ t
 tƒtt
d ƒ dt  tt
d ƒgksÔt‚ttt	tƒttƒƒtƒtd gksút‚ttttƒtt ƒ t
 tƒƒtt
d tt
d d ƒd  ƒtt
d tt
d d ƒd  ƒhtt
tt
d d ƒ ƒtdƒ tt
tt
d d ƒ ƒtdƒ htt
d tt
d t
d  ƒd  ƒtt
d tt
d t
d  ƒd  ƒhfksæt‚tttƒd tƒtdƒgkst‚ttttƒdƒtƒtdƒgks,t‚tttƒd tƒtdƒgksNt‚ttdt ƒd tƒtddƒgksvt‚tdtd  tƒg ks’t‚tddt  tƒg ks®t‚ttdt  tƒttdƒƒ tdƒ gksÞt‚tdt d tdt d ƒ tƒtddƒtdttddƒƒ d ƒd  gks0t‚tdt tdt ƒ tƒttddƒƒd gksdt‚ttdt d	 d	ttƒ  tƒƒtd
ƒtd	ƒtt  hks¤t‚dtdt d ƒ d ‰ tˆ tƒ}t|ƒdkrìt‡ fdd„|D ƒƒsðt‚tdtdt d ƒ d tƒttddƒƒd d gks,t‚tttƒd tƒtt gksNt‚ddt d d  dddt d    ‰ tˆ tƒ}tdƒ }dtddƒ }tdd| d  ƒ}tdƒ}tdƒ}|t|d ƒ }	|d }
ddtdƒ  }| }|t|d ƒ }|d }||dt||	 |
  ƒ   ||dt||	|
  ƒ   ||dt|||  ƒ   ||dt|||  ƒ   ||dttdd| d  ƒ ƒ   g}||ks¦t|ƒ‚tˆ  ¡ tƒ|ks¾t‚ttt	tƒ t
 tƒtt
t ƒ dt  tt
t ƒgksüt‚ttt	dt ƒ t
 tƒtt
t ƒ d t tt
t ƒd gksBt‚ttt	ttƒƒ t
 tƒtttt
t ƒƒ ttt
t ƒdt  ƒt ttt
t ƒdt  ƒ ttt
t ƒƒgks¸t‚ttt	tƒ tƒtd ttddƒ gksæt‚tt
|t | t   tƒ|  t
 t
|  g| t
 |t
  gfks,t‚tt
|t| t ƒ  tƒ| tt
| ƒ gks^t‚tt
|d| t    tƒ|t
 | t
  gt
| | t
   gfks¤t‚tt
| t|   tƒt
|  d|  gksÒt‚ttt t
 tƒtt
ƒttƒ gksüt‚tdt d tƒdtdƒtdƒ  gks*t‚ttt
 ƒtdit
digksLt‚ttt
 gƒtdit
digkspt‚ttt
 d ƒtdit
digks–t‚ttt
 d gƒtdit
digks¾t‚ttt
 td t
d   ƒtditt
 itt
it
digksþt‚ttt
 td t
d   gƒtditt
 itt
it
digk	s@t‚tttdƒt ƒdt  tƒdgk	sjt‚tttdƒt ƒttdƒt ƒ tƒdgk	sœt‚tdƒ‰tt
ˆtdƒt ƒ t
ˆtdƒt ƒ  tƒdgk	sÞt‚tˆtƒˆdƒ tƒdgk
s t‚tˆtƒˆdt ƒ tƒdgk
s&t‚tt‡fdd„ƒ tt‡fdd„ƒ tt‡fdd„ƒ tt‡fdd„ƒ ttdd„ ƒ ttdd„ ƒ ttttƒƒƒdtd gk
s¬t‚tdddd\} }ttt| d t	t| ƒd  ƒ|ƒƒd!k
sìt‚tt
dt  t tƒtt
ƒttƒ gkst‚d S )"Nr   ©r]   r^   ru   rs   r„   r¡   rt   iíÿÿÿrÝ   éüÿÿÿc                 3   s&   | ]}ˆ   t|¡jd ddkV  qdS ©T)Zchopr   N©rÇ   re   rn   ©rŽ   r]   ©r   rp   rq   r“   )  s     z,test_solve_transcendental.<locals>.<genexpr>rx   r‹   rÄ   r4  ia	  rÃ   rˆ   r|   c                      s   t ˆ ttƒˆ ddƒ tƒS ©Nrx   rs   r   rp   ©r|   rp   rq   r˜   e  r™   z+test_solve_transcendental.<locals>.<lambda>c                      s   t ˆ ttƒˆ dt dƒ tƒS ©Nrs   r   rp   r\  rp   rq   r˜   f  r™   c                      s   t ˆ ttƒˆ dt ƒ tƒS ©Nrx   r   rp   r\  rp   rq   r˜   g  r™   c                      s   t ˆ ttƒˆ dƒ tƒS r^  r   rp   r\  rp   rq   r˜   h  r™   c                   S   s0   t ttƒtttƒƒ ttƒtttƒƒ  d ƒS ©Nru   )rB   r'   re   r&   rp   rp   rp   rq   r˜   n  s    c                   S   s   t td t t d tƒS ©Nrs   ru   r   rp   rp   rp   rq   r˜   r  r™   za, bTF)rè   Únegativeç      à?zP[2.0 - 0.318309886183791*acos(1.0 - 2.0*a), 0.318309886183791*acos(1.0 - 2.0*a)])Ú	sympy.abcr]   r^   rB   r#   re   r$   r{   rž   r1   rf   r-   r   r   r3   r+   r   r"   r   r   rÕ   r¤   Úexpandrg   r.   r   r[   r€   r¨   r   Ústr)r]   r^   r‘   Úresultrñ   rò   rJ  rK  rL  rM  rN  rO  rP  rQ  rR  rp   )r   r|   rq   Útest_solve_transcendental	  s¼     80<&þþ""þú	"$"(0 (ÿ
4@
*<"(

$ü>F  þ.F2F.*."$&(@B*2:"&""ÿ
rg  c                  C   s  t dƒ} tdƒ| ƒ}tdƒ| ƒ}tdƒ\}}}}}}t|| ||  | || ||  | g||ƒ}	|	||| ||  || ||   ||| ||  || ||   iks°t‚t|d |ƒdgksÈt‚td| d |ƒtddƒgksêt‚t|| | ¡ || | ¡  | || | ¡ || | ¡  | g| | ¡| | ¡ƒ}	|	| | ¡|| ||  || ||   | | ¡|| ||  || ||   iks˜t‚t| | ¡d | | ¡ƒdgks¾t‚td| | ¡ d | | ¡ƒtddƒgksît‚d| d d| d h}
t|
||hƒ|tddƒ|diks,t‚t dƒ}td	ƒ}|d ||ƒd  d|  d }t| |¡t||ƒ|ƒƒ| d ||ƒ gkst‚t dƒ}tdƒ| ƒ}t|| || | ¡  | || || | ¡  | g|| | ¡ƒ}	|	| | ¡|| ||  || ||   ||| ||  || ||   iks:t‚t dƒ}td	ƒ}t||ƒ |¡||ƒ |d¡ d ||ƒ |¡||ƒ |d¡ g||ƒ |¡||ƒ |d¡ƒ}	|	||ƒ |d¡tdƒd ||ƒ |¡tdƒd iksät‚t||ƒ |d¡||ƒ |d¡ d d||ƒ |d¡ ||ƒ |d¡ d||ƒ |d¡ g||ƒ |d¡||ƒ |d¡ƒ}	|	||ƒ |d¡d
||ƒ |d¡diksŒt‚d S )Nrh   re   rf   r­   rx   ru   rs   r„   r|   r   )r   r   r   rB   r{   r   r   r   )rh   re   rf   r²   r³   r´   rµ   r¶   r·   ÚsolnÚeqnsr|   ÚFrp   rp   rq   Ú$test_solve_for_functions_derivatives€  s~    0  þ
",ÿÿ ÿ( ÿ&0& 4 ÿÿ ÿ( ÿ@ ÿ<6ÿÿ ÿrk  c                  C   st   t dƒ} td | tƒd  dt  d }| t¡}t|| tƒ t¡ƒdt | tƒ gtd | tƒ  gfkspt‚d S )Nr|   rs   r„   rx   )r   re   r   rB   r{   )r|   rj  ra   rp   rp   rq   Útest_issue_3725³  s     
rl  c               	   C   s„  t dƒ\} }}}tdd| |||gƒ}tddddddgƒ}tddddddgƒ}t|| | | |||gƒ| d|tddƒ|d|diks„t‚t|| | g| |||gƒ| d|tddƒ|d|diks¾t‚tt|| |ƒ| |||gƒ| d|tddƒ|d|diksøt‚t|| ||  g| |||gƒ| ||td	dƒ| iks4t‚t|| ||  g| |||gƒ| || |tddƒ| ikstt‚t|| ||  || ||  g| |||gƒ| ||d|diks¸t‚tt|| || ƒg| |||gƒ| ||td	dƒ| iksöt‚tt|| || ƒg| |||gƒ| || |tddƒ| iks8t‚tt|| || ƒt|| || ƒg| |||gƒ| ||d|diks€t‚d S )
Núa b c drs   r   rŠ   rx   ru   r„   r”   ry   )r   r<   rB   r   r{   r   )r]   r^   r_   r`   ÚAÚBÚCrp   rp   rq   Útest_issue_3870º  s    8::<@D>Brq  c                  C   sV  t dƒ} tttƒdkst‚tttgddks0t‚tt| gddksFt‚tttdt  ƒttd ftdt ffkstt‚tttdt  tgdtdt fksœt‚tdt t dƒttd ftdt ffksÊt‚tdt t dtgƒttd fksðt‚tdt t dtgƒtdt fkst‚ttd t dƒttd fks<t‚t| tƒ| tft| ffks\t‚tttƒd ttƒd  d t ƒtd	ttƒd  ttƒd  fks¦t‚tttƒd ttƒd  d t tgddksÚt‚tttdƒƒtdfksöt‚tddt d  ƒd
kst‚ttd tt ƒ tgdtdfks>t‚ttd ttƒ tgdtd ttƒ dfksrt‚ttttd  ƒ tgdtdfksœt‚tdt d ƒdt d dfksÂt‚tddtd   ƒtdfksät‚tttƒd  tttƒd   t }t|ƒdkst‚ttƒd ttƒd  }t|ƒdksDt‚t	t
dd„ ƒ d S )NÚw©r   rx   r›   ©r   rs   ru   r   rx   ry   ©r   r   r”   c                   S   s   t ttdƒdƒS r_  )rC   r   re   rp   rp   rp   rq   r˜   ç  r™   z#test_solve_linear.<locals>.<lambda>)r   rC   re   r{   rf   r1   r3   r   r#   r[   r¨   )rr  r   rp   rp   rq   Útest_solve_linearÍ  s6    .(.&($ "ÿ
4*4*&"$rv  c                  C   s`  t ttd  ttd   tt  dt t  t d tttgtƒtdtdtdiksVt‚t tt ttd   dt d td t   ttgtƒtdtdiksžt‚t td t td  td t td   td t t  td d t t  td d  td  tttgtƒtdtdtdiks"t‚ttt ttt    } }}t|  t|  t|  |  d|  d|  }tttf}ttf}t ||ƒtdtdtdiksœt‚t |||ƒtdtdtdiks¾t‚t ||f|žŽ tdtdtdiksät‚t tt t d tgƒg kst‚t td t dt  tgƒtditdigks8t‚t dtgƒg ksNt‚t dtgdd	g ksht‚t dtgdd
g i fks†t‚t dtgƒg ksœt‚tt dt  t d }tth}t ||tƒtdtdiksÚt‚t ||tdd
ttgdhfksþt‚t ttt ƒtdt ƒ tfƒd ks(t‚t tt tt  dt  ttfƒtdt iks\t‚d S )Nrs   rx   ry   r”   ru   r„   r   Trv   r   )rs   ru   )rG   r]   re   r^   r_   r{   rf   r3   )ÚXÚYÚZr   ÚcoeffsrI  ZabeqrË   rp   rp   rq   Útest_solve_undetermined_coeffsê  s’    2  ÿþÿ ÿ
ÿ&ÿÿ
ÿÿ ýü
,
     ÿ
     ÿ     ÿ" ÿ$*r{  c               
   C   s   t dƒ} ttj| k | tk ƒ}t| d dkƒ|ks4t‚t| d dkgƒ|ksNt‚t| d dkg| ƒ|ksjt‚t| d dkg| gƒ|ksˆt‚t| d d dƒt| d d dƒg}t|ƒtt	ttt
dƒ | ƒt| dƒƒttd| ƒt| t
dƒƒƒƒtddƒƒksüt‚t ddd} t| d d dƒt| d d dƒg}t|ƒt	ttt
dƒ | ƒt| dƒƒttd| ƒt| t
dƒƒƒƒksrt‚t| d | d  dk | ƒttd| ƒt| dƒƒks¨t‚t| | d  dk| ƒttt | ƒt| dƒƒksÜt‚tt| ƒtjkƒttd	 | k | ttd
d	ƒ k ƒkst‚ttd| dk ƒƒtj| k| tk @ ks>t‚ttd| dk ƒƒt | k | dk @ ksht‚tt| dk dƒƒtj| k| tk @ ks’t‚tt| dk dƒƒt | k | dk @ ks¼t‚ttd| ƒƒdksÔt‚ttd| ƒƒdgksît‚ttd| ƒƒdkst‚ttd| ƒƒdgks t‚ttd|  ƒƒdks:t‚ttd|  ƒƒdksTt‚ttd| ƒƒdkslt‚ttd| ƒƒ| t k| tk @ t| dƒ@ ksœt‚d S )Nre   rx   rs   r   r”   Trç   ru   r‹   rt   F)r   r:   r   r¯   r   rB   r{   r   r   r;   r+   r   r3   r°   r   r   r®   r   )re   rª   Úsystemrp   rp   rq   Útest_solve_inequalities  sD    $ÿÿÿ$6ÿ
648****r}  c               	      sÒ  t dt ƒg kst‚t tddt   ƒdgks2t‚t tttƒ d ƒdgksPt‚t dt  dt d  ddt   ƒg ks~t‚t td  dt  td d  d ƒg ks¬t‚t ttd  d d ƒg ksÌt‚t tttd d ƒ tƒdgksðt‚t ttƒt tƒttƒgkst‚t ttƒƒg ks(t‚t td t ttƒd  ttƒd  d tƒddgddgfkslt‚dddt d   d	 ‰ t ˆ tƒ} t	| ƒdkr´t
‡ fd
d„| D ƒƒs¸t‚t ttd ƒtd ttƒ  ttddttgttttƒttd ƒ ƒfttttƒttd ƒ ƒ fhfks(t‚t td td  td td   ƒtt ittitdigksjt‚t td ddtd    ƒg kst‚t ttt  t tƒdgks²t‚ttdd„ ƒ ttdd„ ƒ d S )Nrx   rt   rs   ru   ry   r   r”   r„   rÄ   c                 3   s&   | ]}ˆ   t|¡jd ddkV  qdS rW  rX  rY  rZ  rp   rq   r“   F  s     z"test_issue_4793.<locals>.<genexpr>Tr   c                   S   s   t ttƒttƒ tƒS rŒ   )rB   r$   re   r#   rp   rp   rp   rq   r˜   M  r™   z!test_issue_4793.<locals>.<lambda>c                   S   s   t dt ttƒ d ƒS r`  )rB   re   r#   rp   rp   rp   rq   r˜   N  r™   )rB   re   r{   r+   r#   rf   r$   r3   r1   rÕ   r¤   rg   r[   r€   ©r‘   rp   rZ  rq   Útest_issue_47939  s,    .. $"D
*&8þB&"r  c                  C   s<  t ttƒƒt ttd ƒƒ  kr*dgks0n t‚t ttd ƒƒdgksJt‚tdƒ} t d|  ttƒ tƒg kspt‚t dt td  d tƒdgks”t‚tt td dt   t¡ƒƒtjtdƒhksÄt‚t	d	ƒ}t dd
t |tƒ  |tƒ |tƒƒtt
d
dƒ gkst‚t dtd
t d
ƒ d tƒt
ddƒgks6t‚t ttƒtttƒƒ d ƒt
ddƒtdƒd  d gkstt‚tt ttttƒƒttt ƒƒ d ƒƒƒttdƒ d d ƒttdƒd d ƒhdttdƒ d ƒ dttdƒd ƒ htdtdƒ d ƒtdtdƒ d ƒhfkst‚tt tttƒtt ƒ d ƒƒƒttdƒ d ƒttdƒd ƒhksht‚tt tt tdt   d tƒƒt
ddƒtd
ƒd  dt  t
ddƒtd
ƒd  dt  hksÌt‚t ttt ƒtt t ƒ d tƒtt tdƒ gkst‚t tt tt  d tƒtdƒttƒttƒ  gtdƒttt ƒ gfksXt‚tj}t tdt ƒtdƒ tƒdt|t
ddƒtdƒt d   ƒt|t
ddƒtdƒt d   ƒgdt| d tdƒ| t d  ƒt| d tdƒ| t d  ƒgfks
t‚tddd}t d| d |d  ƒg ks8t‚d S )Nru   r   rx   r]   rŠ   rs   rÄ   rG  r|   rt   r4  i´~ûÿi©æ  r„   r”   r%  rV  rd   T©Úpositive)rB   r+   re   r{   r   rž   r   r   r¯   r   r   r*   r>   r#   r$   rf   rg   ÚExp1r   )r]   r|   r   rd   rp   rp   rq   Útest_PR1964Q  sH    0$0<.>(((&ýÿ
  ÿ
 :ÿ
< ÿ.ÿ
DDþrƒ  c                  C   s  t ddd} t| d d | ƒg ks&t‚t dddd}t|d |d  d| d  |ƒdgks`t‚t ddd} t d	ƒ}t| d
|  d d|  d|  d g| |ƒg ks¨t‚t| | d|d  g| |ƒtdƒtdƒ fgksÜt‚t d	dd}t| d |d t| ƒ  || dd|| t| d ƒ igks(t‚tddd\} }}t|d | d  |d |d  t| ƒ  || |dd|| t| d ƒ igksŒt‚d S )Nre   Trç   rs   rx   rn   )Úintegerr  r€  rf   rt   rŠ   r‹   rl   rv   zx y z)r   rB   r{   r+   r#   r   )re   rn   rf   rg   rp   rp   rq   Útest_issue_5197~  s    ,44@r…  c                   C   s¸   t ttttt   tddƒttƒtjttƒ hks8t‚t ttttt   tddƒttƒttƒ hkslt‚tddt d  dtd  d fƒg ks˜t‚tddt d  ƒg ks´t‚d S )NFrÂ   Trx   rs   ru   )rž   rB   re   rf   r+   r   r¯   r{   rp   rp   rp   rq   Útest_checking  s    ÿÿ4,r†  c               	   C   s€  t ttd d ƒd ƒtdƒtdƒ gtdƒ tdƒgfks@t‚t dttd t ƒ d td d  tƒtttdtt tdƒ  ƒ ƒ tttdtt tdƒ  ƒ ƒgks°t‚t	dƒ\} }t
dƒ}t | |td   t|tƒ ƒ |tƒƒttd | td  |  ƒgkst‚tdƒ}tj}t dt|dtd   ƒ tƒt| | ƒ d t| | ƒd gt| | ƒd t| | ƒ d gfksŽt‚t t|d	 td  ƒ| tƒtd
|d	  ƒ td
|d	  ƒgtd
|d	  ƒtd
|d	  ƒ gfksöt‚t dt|dtd   ƒ tƒt| | ƒ d t| | ƒd gt| | ƒd t| | ƒ d gfksft‚t |d d t|t ƒt|t ƒ  tƒt d|  gks¦t‚t dt|t ƒt|t ƒ  tƒtdƒ| gksÜt‚tt dt|t ƒt|t ƒd   tƒƒtdtdƒ ƒ| ttdƒ d ƒ| ttdƒ d ƒ| tdtdƒ ƒ| hks\t‚t ttƒd ƒtdƒgks|t‚d S )Nrs   rx   rt   rl   zC1 C2r|   r]   r„   rŠ   r”   ru   ry   )rB   r+   re   r{   r#   rf   r$   r   r   r   r   r   r   r‚  r3   r1   r'   r&   rž   r/   r4   )ZC1ZC2r|   r]   r   rp   rp   rq   Útest_issue_4671_4463_4467š  sB    &ÿ
(  ÿ
L$$þ  þ$$þ@6(& ÿÿ
r‡  c               	   C   sL  t dƒ\} }tt| td  td  t|ƒtt  gttgƒƒt| t|ƒd  ƒ dt| t|ƒd  ƒ t|ƒ ft| t|ƒd  ƒt| t|ƒd  ƒt|ƒ fhks¨t‚tt	tƒt
tƒ dt d gttgƒtt
tddƒƒƒtddƒfgksðt‚tt	tƒt
tƒ dt	tƒ d gttgƒtt
tdƒƒ ƒtdƒ fgks>t‚ttt	tƒt
tƒ td d gttgƒƒtt
dƒ ƒtdƒ ftt
dƒƒtdƒfhksšt‚t	tƒd t
tƒ td  dt	tƒ d g}t|ddttgtdƒ tt	dt ƒ t
tdƒƒ ƒftdƒ tt	dt ƒ t
tdƒƒ ƒ fhfks2t‚t|ttddttgttt	dt ƒ t
tƒ ƒfttt	dt ƒ t
tƒ ƒ fhfksŽt‚tt|ttƒƒtttd  t
tdƒƒ ƒ ƒtdƒ fttd  t
tdƒƒ ƒd tdƒ fhksöt‚tt|ttƒƒtdƒ tt	dt ƒ t
tdƒƒ ƒ ftdƒ tt	dt ƒ t
tdƒƒ ƒfhks^t‚t	tƒd t
tƒ t dt	tƒ d g}t|ddttgtdƒ t	dt ƒ t
tdƒƒ fhfksÆt‚t|ttddttgtt	dt ƒ t
tƒ fhfks t‚tt|ttƒƒttt t
tdƒƒ ƒ ƒtdƒ ftt t
tdƒƒ ƒd tdƒ fhks`t‚t|ttƒt	dt ƒ t
tdƒƒ tdƒ fgks˜t‚tttd td  ƒtd	ƒ tt d fddttgtjtdƒftdƒtjfhfksòt‚ttttd td  ƒtd	ƒ tt d fttƒƒtjtdƒftdƒtjfhksHt‚d S )
Nzr,trs   r”   rx   ru   r„   Tr   rˆ   )r   rž   rB   re   rf   r4   r+   r1   r{   r#   r3   r$   r   r   rg   r®   )rÌ   rh   r’   rp   rp   rq   Útest_issue_5132·  sx    0 ÿ.þÿ$ÿ(ÿ
(*ÿ
,
&(þÿ
<þ(&þÿ
(&þÿ
("ÿ ÿ$"þ
$ÿ
. ÿ2ÿrˆ  c                  C   s´   t dƒ\} }}d}d}| dt  |dtd   t  |t d t  |dtd   t dt  |t  tt | g}tt|g}tt||dddƒdksšt‚tt||ƒƒdks°t‚d S )Núlam a0 concç{®Gázt?çÌ«¢Ã;Êç?rs   rx   T)ÚmanualZminimal©r   rf   re   rÕ   rB   r{   ©ZlamZa0Zconcr]   r^   r’   Úsymrp   rp   rq   Útest_issue_5335ã  s    ."
þ
r  ZHangsc                  C   sœ   t dƒ\} }}d}d}| dt  |dtd   t  |t d t  |dtd   t dt  |t  tt | g}tt|g}tt||ddƒdks˜t‚d S )Nr‰  rŠ  r‹  rs   rx   F©Zrationalr  rŽ  rp   rp   rq   Ú_test_issue_5335_floatð  s    ."
þ
r’  c                   C   sH   t ttd t d gtgƒƒtt d ƒ ftt d ƒfhksDt‚d S )Nrs   r„   )rž   rB   re   rf   r+   r{   rp   rp   rp   rq   Útest_issue_5767ý  s     ÿr“  c                  C   s  t dddd\} }}}}}t dddd\}}}t dddd}	dtdƒd  ttdƒd   | tdƒd	 td |	d    d
|tdƒd   |	tdƒd    dtdƒd  ttdƒd   | d|tdƒd   |	tdƒd     }
dtdƒ t d }|
||	fS )NzD, R, H, B_g, V, D_cT)rè   r  zSigma_f, Sigma_a, nure   rs   ru   iÁ‡ i'  r‹   rx   rÝ   rÄ   éd   iá  )r   r   r   r+   )ÚDrk   ÚHZB_gÚVZD_cZSigma_fZSigma_aÚnure   r   Úexpectedrp   rp   rq   Ú_make_example_24609  s    >"ÿFþÿrš  c                  C   sP   t ƒ \} }}t| |dd|gks$t‚t|  ¡ |ƒ\}t|| ¡  ƒdk sLt‚d S )NT©rŸ   g›+¡†›„=)rš  rB   r{   rn   Úabs)r   r™  re   Z	solapproxrp   rp   rq   Útest_issue_24609  s    r  c                  C   s(   t ƒ \} }}tt| |ƒƒ|gks$t‚d S rŒ   )rš  rÕ   rB   r{   )r   r™  re   rp   rp   rq   Útest_issue_24609_xfail  s    rž  c                   C   sê   t ttd dt  d tt d gttgƒƒtjtdƒfdtdƒ dtdƒ fdtdƒ dtdƒ fhksnt‚ttd t d td t gƒg ks–t‚ttd t d tt d gttfƒttd t d tt d gttfƒksæt‚d S )Nrs   ru   rx   rt   r„   )rž   rB   re   rf   r   r®   r+   r{   rp   rp   rp   rq   Útest_polysys,  s    ,"ÿÿ(,ÿÿ
ÿÿrŸ  c            	   
      sÆ  t tdd„ ƒ t tdd„ ƒ tdtd‰‡fdd„} ‡fdd	„‰td
ƒd ksPt‚| tttƒƒtg fƒsjt‚| tttƒd
 ƒtd
 g fƒsŒt‚| tttƒttdƒ d ƒˆd ˆd  d ˆˆd t gfƒsÐt‚| tttƒttdƒ d ƒtd d g fƒst‚| tttƒtd
 t	d
dƒ  ƒtd td
 d  g fƒs@t‚| tttƒttd
 ƒ tdt ƒ ƒdtdƒ t dt  d
 g fƒsŒt‚| tttƒttd
 ƒ d ƒdt d g fƒsÀt‚| tttƒttd
 ƒ td
t ƒ ƒdtd  dt  g fƒst‚| tt
ttƒ tttƒ  tttƒ  tttƒ  ƒt
ttƒ tttƒ  d tttƒ tttƒ  d  g fƒs|t‚| tttƒtd
t ƒ ƒdt d
 g fƒs¬t‚| tttƒtd
t ƒ d ƒtd t d g fƒsät‚| tttƒtd
t ƒ tdt ƒ ƒdtd  dt  d
 g fƒs,t‚tttƒtd
t ƒ tdt ƒ d ƒdtd  dtd   dtd   dt  d g fdtd  dtd   dtd   dtd   d g ffksÆt‚tttƒtd
t ƒ tdt ƒ td
dt  ƒ ƒdtd  dtd   d td   d!t  d g fks4t‚| tttƒttd
 ƒ ƒtjg fƒs^t‚ttƒttd
 ƒ td
ttƒ ƒ }| t|ƒdtd  dt  g fƒsªt‚tt|d"d#ƒtjt	ddƒhksÐt‚t|ƒg ksât‚ttttƒttd
 ƒ td
ttƒ ƒ ƒƒtjt	ddƒhks$t‚| tttƒttd
 dƒ dttƒ  tƒtd$ƒg fƒs`t‚| tttd
t  ƒtd
 t	d
dƒ  ƒtd td  td  dtd   t d
 g fƒs¾t‚| tttd
t  ƒdttƒ  tƒdt t t dt  g fƒst‚| tttƒtd
t ƒ d tƒtd t d g fƒs>t‚tttttd ƒƒƒdgks`t‚tttttd ƒ dƒƒdgks†t‚ttd
ttdt d ƒ ƒƒg ks®t‚ttttdt d ƒd tƒƒƒtj tdƒhksæt‚ttttdt d
 ƒttd ƒ dƒƒƒtdƒtd%ƒhks&t‚ttttd& ƒd tdt ƒƒƒd'gksTt‚tdt d t	d
dƒ d ƒdgks~t‚tttd
 ttd dtd   t dƒ ƒƒt	d(dƒt	d(dƒhksÆt‚tttdtd  d& ƒdt  ƒƒtdƒ tdƒhkst‚ttdt d ƒttd
 ƒ ttd ƒ ƒd)gks:t‚tttd ƒtdt d
 ƒ dttd
 ƒ  ƒdgksvt‚tttƒttd& ƒ d* ƒdgksžt‚tttd ƒttƒ d ƒdgksÆt‚ttdtd  d ƒdt d  ƒd)gksöt‚tttƒd d ƒd+gk	st‚tttd ƒttƒ d ƒg k	s<t‚tttd
 ƒt d& ƒd,gk	s`t‚tttd ƒd ƒd-gk	s€t‚ttd.t ttd d ƒ ƒd& ƒdgk	s°t‚tttƒttd
 ƒ tttƒƒ ƒg k	sÞt‚tdt d
 ƒttƒ tdd
t  ƒ }t|ƒd) }t|ƒg k
s$t‚t|ƒg k
s6t‚t|dt  ƒt	d(d/ƒgk
sXt‚t|dt  ƒg k
srt‚tttd
 dƒttdƒ ƒtd td  dtd   dt  d
  g fk
sÂt‚| ttttdƒ ttdƒd  ttƒ tƒˆd ˆd  ˆ ttƒ ˆˆd t gfƒs t‚| tttƒttdƒ t ƒˆd ˆd  t ˆˆd t gfƒsft‚tttƒttdƒ d ƒd
gksŒt‚t td0d„ ƒ t td1d„ ƒ tttttdƒ ƒttt dƒ tƒttt	d
dƒ t t	ddƒ  gksöt‚| tttƒttd
 dƒttd ƒ  d ƒˆd, dˆd   d2ˆd   d*ˆd   d3ˆd   d!ˆd   d4ˆd   d5ˆ  d6 ˆˆd t gfƒs”t‚ttd
 dƒttdƒ }t|ƒdt d
 g fksÊt‚ttƒttd
 ƒ td
t ƒ dtdƒ d  }| t|ƒd7td  d8td   d9td   d:t  d; g fƒs>t‚| tttdƒttdƒd  d
 ƒˆd ˆ d
 ˆˆd t gfƒs†t‚| tttdƒttdƒd  d
 ƒtd dtd   t d
 g fƒsÎt‚ttd< ƒd ksät‚| ttttt dƒ ttt dƒd  ƒˆd ˆ t ˆˆd t t gfƒs8t‚| ttttt dƒ ttt dƒd  tƒˆd ˆ t ˆˆd t t gfƒsŽt‚| ttttt dƒ ttt dƒd  tƒˆd ˆd  ˆ t ˆˆd t t gfƒsìt‚| tttd
 dƒttd
 dƒ tddƒ ƒˆd ddt	d
dƒ  ˆd   ˆd  d,dt	ddƒ  ˆd   d,dt	ddƒ  ˆd   ddt	ddƒ  ˆ  d ˆˆd t d
 gfƒsªt‚t td=d„ ƒ tttdƒttdƒ d ƒd
gksàt‚ttƒttd
 ƒ td
t ƒ dtdƒ d  }| t|ƒdt d d>td  d?td   d@t  dA  g fƒsTt‚tdBƒ‰ t|ƒˆ ksnt‚| tttttd
 dƒ ƒttd
 dƒ d ƒˆd ˆd  dˆ  d ˆˆd t d
 gfƒsÒt‚ttd d
 dƒttd d
 dƒ d }| t|ƒˆd d,ˆd   dCˆd   dDˆd   dDˆ  dE ˆˆd td  d
 gfƒsZt‚ttttd
 dƒ ƒttd
 dƒ d }| t|ƒˆd dˆd   d&ˆd   dˆd   dFˆd   dˆ  d ˆˆd t d
 gfƒsêt‚| t|dGdHˆd dIˆd   dJˆd   dKˆd   dLˆd   dMˆ  dN ˆˆd t ttd
 ƒ gfƒs^t‚| ttttttdƒd
 ƒ ƒttdƒ d ƒˆd* dˆd   dˆd&   dˆd   ˆd  dˆd   dOˆd   dPˆ  d. ˆˆd t gfƒsút‚ttttƒdƒt ttd
 dƒ d
 ƒtdQ td ttƒd   dtd  ttƒd   dt ttƒd   ttƒd   g fks‚t‚ttdRƒƒd ks˜t‚| ttdRƒtƒˆdt  ˆ d
 ˆˆd t t gfƒsÖt‚tttjt  t tƒtd
t  td  g fkst‚ttttƒt td  d
 tƒƒdks8t‚ttdStd  dTtd t	d
dƒ  td   dUtd t	ddƒ  t  dt  dV td"dWƒdks t‚tdXƒ}t|tƒdtdƒd  d-t d-ttd ƒ  td
ƒd   tdƒ dY dZt d[ tdZƒd[  td
ƒd  td
ƒ d tdƒt d    dtdƒd  d-t d-ttd ƒ  td
ƒd   tdƒ dY dZt d[ tdZƒd[  td
ƒd  td
ƒ d tdƒt d    dtdƒd  d-t d-ttd ƒ  td
ƒd   tdƒ dY dZt d[ tdZƒd[  td
ƒd   gkst‚ttd
 dƒttdƒttdƒ  }| t|ƒdˆd%  dˆd/   ˆd  d
 ˆˆdQ t gfƒs„t‚| t|d ƒdˆd%  dˆd/   dˆd,   ˆd  d*ˆd   dˆd   d*ˆd   d*ˆd   d& ˆˆdQ t gfƒst‚| tttdƒttd
 dƒd  ttd dƒ ƒˆd\ˆd  d]ˆd   d^ˆd&   ˆd  d_  ˆˆd t d
 gfƒs†t‚| tttdƒttd
 dƒ ttd dƒd  ƒd[ˆd%  d`ˆd*   dTˆd/   dZˆd,   daˆd   dbˆd   d_ˆd&   dcˆd   ddˆd   deˆ  ˆˆd t d
 gfƒsDt‚| tttdƒd ttd
 dƒ ttd dƒ ƒdeˆd%  ddˆd*   d_ˆd/   dZˆd,   dcˆd   dbˆd   dTˆd&   daˆd   d`ˆd   d[ˆ  ˆˆd t d
 gfƒst‚| tttdƒd ttd
 dƒ ttd dƒ d ƒdeˆd%  dfˆd*   dgˆd,   dhˆd   diˆd   djˆd&   dkˆd   dlˆd   dmˆd   dnˆd   doˆd   dpˆ  dq ˆˆd t d
 gfƒsàt‚tttƒttd
 ƒ td
t ƒ tdt ƒ ƒ‰ tˆ ƒd
kr8tˆ d) ƒd d… drks<t‚tdsƒ}|dt dt  ttd td  ƒ  }|t	dd&ƒ tdƒ| dI  ‰ t|td"d#}t|ƒD ]F}ttt  t|¡ t¡td"d"dt}t ‡ fdudv„|D ƒƒr  qòq d sòt‚tttd
 ƒttdƒ d ƒtdwƒkst‚ttttd
 ƒƒtt	d
dƒ  d ƒtdxƒksRt‚tttƒtttƒd
 dƒ d ƒtdyƒks‚t‚tdzƒ}| t|ƒˆˆd  tdƒˆd  t  d{dt	ddƒ  dt	d
dƒ  ˆd   d|d*t	d
dƒ  ˆd   d}dt	ddƒ  dt	ddƒ  ˆd  t  d~ˆd   d~tdƒ ˆd  t  dd€t	d
dƒ  ˆd   d dtdƒ t    ˆˆd d‚t  tdƒtdƒtd  d„t  d… ƒ  d† gfƒsºt‚t|ƒg ksÌt‚ttdƒttdƒ ttdƒ }| t|ƒˆdQ dˆd%   dˆd/   ˆd  t ˆˆdQ t gfƒs6t‚ttdƒttdƒ ttt dƒ }| t|ƒˆt ˆd*  dˆd/  t  dˆd,  td   ˆd td   dˆd  td   dYˆd&  td   dˆd  td   dˆd  td   dˆd  td   td   ˆˆd tt  gfƒs.t‚t td‡d„ ƒ tttd
ƒd   ttd
ƒd   dtd
ƒd   d(tdƒd  dtd
ƒd    ƒ}| t|ƒˆd  ˆd  dtd
ƒd   d(tdƒd  dtd
ƒd    ˆˆdQ t gfƒsôt‚ttƒd
 ‰tˆd ˆd  ƒtd dtd   dt  d g fks>t‚tttd
  d d tƒd ksbt‚ttt ƒt!tttt ƒ ƒ t!tttt ƒ ƒ }t|tƒtd
 gks°t‚t|ƒd ksÂt‚d S )ˆNc                   S   s,   t ttƒttd ƒ tdttƒ ƒ d ƒS ©Nrx   ru   )rL   r+   re   rp   rp   rp   rq   r˜   8  s    ztest_unrad1.<locals>.<lambda>c                   S   s*   t ttƒtd tddƒ  dttƒ  ƒS )Nrx   ru   rs   )rL   r+   re   r   rf   rp   rp   rp   rq   r˜   :  s    rË   )Úclsc                    sd   t | d ƒt |d ƒkst‚|d r.ˆ | |ƒS | d  ¡ }|d  ¡ }||| fkob| d |d kS ©Nrx   r   )Úboolr{   rd  )Úrvr‘   ra   r]   )Ús_checkrp   rq   r£   A  s    
ztest_unrad1.<locals>.checkc                    sØ   t | ƒ} | d  t¡}t t|ˆ gt|ƒ ƒƒ}| d  |¡ ¡ | d d  |¡| d d  |¡gf} |d  |¡ ¡ |d d  |¡|d d  |¡gf}t| d ƒt|d ƒt|d  ƒfkoÖt| d ƒt|d ƒkS )Nr   rx   )r¦   Úatomsr   ÚziprÕ   rÇ   rd  re  )r¤  r‘   r`   Úreps©rË   rp   rq   r¥  I  s    66&ÿztest_unrad1.<locals>.s_checkrx   ru   rs   r‹   rt   r  ry   r¡   r4  r„   r#  ix  iè  ià  i  rÝ   iÜ  iæ	  i¼  é©   r6  rû   éè   é    FrÂ   z32*sqrt(x)*(x + 1)**(1/3) + x - 4*y + (x + 1)**(2/3)r  rÄ   iúÿÿÿr”   r   r    r>  rˆ   r¼   r%  r   c                   S   s(   t ttƒttdƒ ttd dƒ d ƒS )Nru   rx   rt   rs   )rB   r+   re   r*   rp   rp   rp   rq   r˜   ±  s    c                   S   s   t tdƒ ttƒt  ƒS r]  )rB   r+   r&   re   rp   rp   rp   rq   r˜   ´  r™   r÷   r.  éÔ   éÀ   rE  i	=  iÈ£ im i { i  rb  c                   S   s6   t ttdƒttdƒ ttdƒ  ttd t d ¡ƒS )Nrs   ru   r„   rt   rx   )rL   r*   re   rÇ   rp   rp   rp   rq   r˜   Î  s    i5  iì  iÀ‰ i D z¥
        [4/5, -1484/375 + 172564/(140625*(114*sqrt(12657)/78125 +
        12459439/52734375)**(1/3)) +
        4*(114*sqrt(12657)/78125 + 12459439/52734375)**(1/3)]rø   r?  r+  r=  T)Z_reverserG  rC  é»   é  éä   r)  r  r:  rl   z!(x+y)**(2*y/3) + (x+y)**(1/3) + 1é þÿÿé@  é˜  é®  ©Z_unradz9-x + (7*y/8 - (27*x/2 + 27*sqrt(x**2)/2)**(1/3)/3)**3 - 1r(  i   iW  i   iÀ  rB  iÀ  iX  i+  iÐ  i¥  éØ   iÙ  iÚ  i@H  i¥ú iúí iÀê i Z	 iÕë2 i ` iÀÞl i@HM i©9  iÒ z0.73rj  ©rŸ   r£   c                 3   s   | ]}|ˆ    ¡ jV  qd S rŒ   )rd  Úis_zerorY  r~  rp   rq   r“   3  s     ztest_unrad1.<locals>.<genexpr>z_
        [(-11/(9*(47/54 + sqrt(93)/6)**(1/3)) + 1/3 + (47/54 +
        sqrt(93)/6)**(1/3))**3]a<  
        [(-sqrt(-2*(-1/16 + sqrt(6913)/16)**(1/3) + 6/(-1/16 +
        sqrt(6913)/16)**(1/3) + 17/2 + 121/(4*sqrt(-6/(-1/16 +
        sqrt(6913)/16)**(1/3) + 2*(-1/16 + sqrt(6913)/16)**(1/3) + 17/4)))/2 +
        sqrt(-6/(-1/16 + sqrt(6913)/16)**(1/3) + 2*(-1/16 +
        sqrt(6913)/16)**(1/3) + 17/4)/2 + 9/4)**3]z]
        [(-(81/2 + 3*sqrt(741)/2)**(1/3)/3 + (81/2 + 3*sqrt(741)/2)**(-1/3) +
        2)**2]a  
        -x + (1/2 - sqrt(3)*I/2)*(3*x**3/2 - x*(3*x**2 - 34)/2 + sqrt((-3*x**3
        + x*(3*x**2 - 34) + 90)**2/4 - 39304/27) - 45)**(1/3) + 34/(3*(1/2 -
        sqrt(3)*I/2)*(3*x**3/2 - x*(3*x**2 - 34)/2 + sqrt((-3*x**3 + x*(3*x**2
        - 34) + 90)**2/4 - 39304/27) - 45)**(1/3))é™   r;  éf   iT  i06  r-  i`2 i2  iìy  ix… i,ð  i*  c                   S   s&   t ttdƒttdƒ ttt dƒ ƒS )Nru   rt   )rL   r*   re   rf   rp   rp   rp   rq   r˜   Y  r™   )"r[   r€   r   r   rL   r{   r+   re   r*   r   r]   r^   r_   rf   r`   r   r®   rž   rB   r¯   r   rN   r   rh   r&   r°   rÕ   rr   r   ÚreversedrÇ   r   Úanyr#   )	r£   r   rg   rd   ra   rj  rw  Úxirx  rp   )r‘   rË   r¥  rq   Útest_unrad16  s2   ÿ
ÿ"ÿÿ
ÿ
$ÿ
ÿ
$ÿ
4:ÿ
ÿ
ÿ
$ÿ
&26þ22ÿ
*$ÿ
&*ÿ
(
ÿ
&.ÿ
"ÿ
ÿ
"&(8@.*,ÿ
<8<((0 &$ 0.("( ÿ**ÿ
"ÿ
&$ÿ*Nÿÿÿÿ
02ÿ
 ÿ
 ÿ
("ÿ
*"ÿ
**ÿ
*Bÿÿÿÿÿ
(02ÿ
,.ÿ
(6ÿÿ
(Bÿÿ
Bÿÿ
,Jÿÿÿÿ
&F
ÿþ	&ÿ
6,,ÿÿÿ ÿÿ
H
ÿ
ÿÿÿ
ÿÿÿ

ÿ
ÿÿÿÿ
ÿÿÿ"ÿü"2ÿ
N
ÿÿÿÿ
.2ÿÿ
.:
ÿ
ÿ
ÿ
ÿÿÿÿÿ
.:
ÿ
ÿ
ÿ
ÿÿÿÿÿ
2:
ÿ
ÿ
ÿ
ÿ
ÿ
þþþþÿ

ÿ
ÿ,("

,40Fÿ*ÿ
ÿþþþý"ÿÿÿýÿ
:ÿ
"Bÿÿÿÿþþþÿ
ÿVPÿ
>$4r¿  c                  C   s\   t dt ddtd   ƒ ƒtdt ddt ddtd   ƒ  ƒ   } t| ƒtjgksXt‚d S )Nrx   r„   rs   )r+   re   rB   r   r°   r{   rZ  rp   rp   rq   Útest_unrad_slowl  s    DrÀ  c                   C   s¬   t ttd dtd   dƒd t ƒtddƒgks6t‚t ttd dƒttd d dƒ d ƒddttd td  dtd   dtd   dt  d d	ƒd  gks¨t‚d S )
Nru   rs   rx   rt   r”   r„   rÝ   rˆ   r   )rB   r*   re   r   r{   rW   rp   rp   rp   rq   Útest_unrad_failt  s
    6& @ÿrÁ  c                     s  t dƒ\‰ } }}|ˆ d  | d  }| t|ƒ tt|ƒd d ƒ ˆ t|ƒ t|ƒ tt|ƒd d ƒ i}t||ƒdks~t‚ttˆ dƒˆ diƒdksšt‚ttˆ dƒˆ diƒdks¶t‚ttˆ dk dƒˆ diƒdksÖt‚ttˆ dk dƒˆ diƒdksöt‚ttˆ dk dƒˆ diƒdkst‚ttˆ dk dƒˆ diƒdks:t‚ttˆ d ˆ d d ƒˆ diƒdksdt‚tˆ d ˆ d d gˆ dƒdksŠt‚tˆ d ˆ d d gˆ dƒdks°t‚ttˆ d d ƒˆ dƒdksÒt‚tdi ƒdksæt‚tdˆ d gˆ dƒdkst‚tddˆ gˆ dƒdks t‚t| ˆ dƒdks6t‚tˆ d ˆ ddd	dksTt‚tˆ d ˆ ddd	dksrt‚ttd
ˆ  ƒˆ t	tdƒd ƒiƒdksžt‚ttd
ˆ  ƒˆ t	tdƒd ƒt
t  iƒdksÒt‚tdˆ d  ˆ dƒdksðt‚tt‡ fdd„ƒ tt‡ fdd„ƒ d S )Nz
x, y, r, trs   rx   TFr   g»½×Ùß|Û=rb  ©Z	numericalrD  rt   iè  c                      s
   t ˆ dƒS r^  ©rM   rp   rÛ   rp   rq   r˜   –  r™   ztest_checksol.<locals>.<lambda>c                      s   t g ˆ dƒS r^  rÃ  rp   rÛ   rp   rq   r˜   —  r™   )r   r+   r4   rM   r{   r   r   r>   r#   r$   r   r   r[   r¨   )rf   rÌ   rh   r   Zdict_var_solnrp   rÛ   rq   Útest_checksol}  s8     $ÿ  ""*&&",4rÄ  c                   C   s¢   t td ƒdtfkst‚t dƒdks(t‚t tdt ƒd tƒdtdƒ tfksRt‚t tdt tt  ƒd tƒtd tdƒ tfksˆt‚t ttƒtdfksžt‚d S )Nrs   )rs   r   rx   ru   r   )rK   re   r{   r#   r$   r]   rp   rp   rp   rq   Útest__invertš  s
    *6rÅ  c                   C   sž   t t t dt ttƒ  tƒttd ƒgks2t‚t tt ƒg ksFt‚t tt d ƒtttdƒƒƒgkslt‚t td td  td td   ƒdgksšt‚d S )Nrs   ru   r„   )rB   r]   re   r$   r#   r{   r"   rp   rp   rp   rq   Útest_issue_4463¢  s    2&rÆ  c                  C   s:  t dƒ\} }}}}}}}}}	}
}}}}}}}| |||||
|f}|||  ||  |d| d|  d|   ||  ||  |d| d|  d|	   ||  ||  |d| d|  d|   ||  |
|  |
d| d|  d|   ||  ||  |d| d|   |
|  g}tt||ddddƒdks6t‚d S )Nza:rrx   TF)rŒ  r£   rŸ   )r   rÕ   rB   r{   )r]   r^   r_   r`   ra   r|   r}   rc   rÔ   Újrb   Úlrj   rn   ré   rd   ri   rÌ   rI  r’   rp   rp   rq   Útest_issue_5114_solvers¨  s    ,****ûrÉ  c                     s  t dƒ\} }}}}}t dƒ\}}}}	}
}| | | || | || | |  | | d|  d|  d|  d|  |d  d | |	 | | d| d|  d|  |
 |d|  d|  | f	}| || |d| d|  d	|  d
|  d ||| |	|| || d d| d  |d  |||
d| d|  d|  ig‰ | ||
|||||	f‰t|fˆžddddœŽˆ ksrt‚t|fˆždddœŽ‡fdd„ˆ D ƒks t‚t|fˆžddiŽg ks¾t‚t|fˆžŽ g ksÖt‚‡ fdd„|D ƒdd|| | | dddddg	kst‚d S )NúI1:7údI1,dI4,dQ2,dQ4,Q2,Q4ry   rs   ru   r    rV  rÝ   r„   r‹   r÷   TF)rŒ  r£   rw   ©rŒ  r£   c                    s"   g | ]‰ t ‡ fd d„ˆD ƒƒ‘qS )c                    s   g | ]}ˆ   ||¡‘qS rp   )ÚgetrÓ   rå   rp   rq   rê   Ù  s     z.test_issue_5849.<locals>.<listcomp>.<listcomp>©r¥   )rŽ   )Úvrå   rq   rê   Ø  s    z#test_issue_5849.<locals>.<listcomp>rŒ  c                    s   g | ]}|  ˆ d  ¡‘qS ©r   )rÇ   )rŽ   Úeir~  rp   rq   rê   ß  s   ÿÿr   ©r   rB   r{   ©ZI1ZI2ZI3ZI4ZI5ZI6ZdI1ZdI4ZdQ2ZdQ4ZQ2ZQ4ra   rp   )r‘   rÏ  rq   Útest_issue_5849¸  sN    


*÷  "     ù	"ÿ
ÿÿrÔ  c                  C   sä   t dƒ\} }}}}}t dƒ\}}}}	}
}| | | || | || | |  | | d|  d|  d|  d|  |d  d | |	 | | d| d|  d|  |
 |d|  d|  | f	}t|| ||
|||||	ƒ	g ksàt‚dS )a  Same as test_issue_5849 but solved with the matrix solver.

    A solution only exists if I3 == I6 which is not generically true,
    but `solve` does not return conditions under which the solution is
    valid, only a solution that is canonical and consistent with the input.
    rÊ  rË  ry   rs   ru   r    NrÒ  rÓ  rp   rp   rq   Útest_issue_5849_matrixã  s    



*÷rÕ  c                  C   s°  t dƒ \} }}}}}}}| |  | d| d  d| d  d| d  d|  d  | | d| d  |d  | | |d  | d| d	 d| d	  d|  d	  | | |d  d
| d  |  | | | |d	  | d  d| d |d  |  d| d d|  d|  d  | g	}| d|d|d|d|d|di| d|| |d|tdƒd |d|di| d| |d|||d|tdƒd	 |dig}	t||dd}
|
|	ks¬t|
|	fƒ‚d S )Nza, b, c, d, f, g, krt   r‹   rs   r4  r„   ru   r  r-  rÃ   r   ry   Trv   )r   r   rB   r{   )r]   r^   r_   r`   r|   r}   rb   ZunknownsZ	equationsZanswerÚgotrp   rp   rq   Útest_issue_21882þ  s"    <" ÷$&ýr×  c                     s  t tdƒ\‰ } }tdƒ}tˆ tƒtƒ}t| |ƒ|ƒ}tˆ tƒˆ tƒ t¡ ˆ tƒƒ| gks`t‚tˆ tƒd ˆ tƒƒdgks€t‚tˆ tƒdˆ tƒ t¡  ˆ tƒƒd| gks²t‚tˆ tƒdˆ tƒ t¡  gˆ tƒƒˆ tƒd| iksìt‚tˆ tƒdˆ tƒ t¡  ˆ tƒd t d gˆ tƒtƒd| d|d  d fgksFt‚tˆ |ƒd  | |ƒd  ˆ |ƒd ||ƒd   | |ƒ |¡ ||ƒ| |ƒdd||ƒ| |ƒgt	ˆ |ƒd | |ƒd  | ƒ ˆ |ƒ | |ƒft	ˆ |ƒd | |ƒd  | ƒˆ |ƒ | |ƒfhfksfttˆ |ƒd  | |ƒd  ˆ |ƒd ||ƒd   | |ƒ |¡ ||ƒ| |ƒddƒ‚ˆ tƒ td¡ˆ tƒ| tƒ  d| tƒd  gˆ tƒ| tƒg}t|d	diŽd
 t	dƒ t	dƒft	dƒt	dƒ fhksàt‚ˆ tƒd | tƒ dˆ tƒ t¡  | tƒd d g}t|ˆ tƒ| tƒddˆ tƒ| tƒgt	d| d ƒ t
dƒft	d| d ƒt
dƒft	d| d ƒ t
dƒ ft	d| d ƒt
dƒ fhfks¨t‚tt‡ fdd„ƒ tˆ tƒˆ tƒ t¡ tgdˆ tƒtˆ tƒtƒ d
fksút‚tˆ tƒttttfƒ tgdˆ tƒttttfƒ d
fks:t‚tˆ tƒttttfƒ t tgdtˆ tƒ ttttfƒ d
fks‚t‚tˆ tƒttttfƒ t tgdtˆ tƒ ttttfƒ fksÈt‚ttˆ tƒ|  ˆ tƒd
 |  tgdtd
| fkst‚tttdt tƒ ƒtdfks(t‚tttttƒ tgdtdfksNt‚tttttƒ d tgdtdtd
  fks€t‚tttttƒd  ttƒƒƒt	t ƒ t	t ƒhksºt‚ttttƒ tddttƒ gksât‚tttƒttƒ tddg kst‚ttttƒ tddttƒgks,t‚ttd t d tddtd  d gks\t‚ttd t d td ddt d gksŒt‚d S )NZfghr]   ru   rs   r„   r4  Tr   rž   rx   c                      s$   t ˆ tƒˆ tƒ t¡ ˆ tƒgdS )Nrt  )rC   re   r   rp   r\  rp   rq   r˜   =  r™   z!test_issue_5901.<locals>.<lambda>rt  ry   r   r•   )rz   r   r   r   re   rB   r   r{   rf   r+   r   r[   r¨   rC   r9   rž   r#   r1   r3   )r}   rc   r]   r•  ÚGr«   r’   rp   r\  rq   Útest_issue_5901  s¸    ÿÿ"ÿ$ÿ8ÿ
@  ÿ0.þþ@  ÿü>"ÿ
6üÿ
 
ÿÿ
ÿ
"ÿ
"ÿ
(
ÿ
ÿ
ÿ
ÿ
ÿ

ÿ
$ÿ
ÿ

ÿrÙ  c                  C   sº   t ttd t d ddƒtjtdƒd  tdƒ d tj hksFt‚ttd t d dd} t| ƒdkr|tdd	„ | D ƒƒs€t‚ttd t d ƒ} t| ƒdkr²td
d	„ | D ƒƒs¶t‚d S )Nrs   çš™™™™™¹?Tr‘  r3  rˆ   Fc                 s   s   | ]}|j V  qd S rŒ   ©Z	is_NumberrY  rp   rp   rq   r“   `  s     z"test_issue_5912.<locals>.<genexpr>c                 s   s   | ]}|j V  qd S rŒ   rÛ  rY  rp   rp   rq   r“   b  s     )	rž   rB   re   r   r°   r+   r{   rÕ   r¤   r~  rp   rp   rq   Útest_issue_5912\  s    $ÿ"rÜ  c                  C   s”  dd„ } t td ddd js"t‚t td ddd js<t‚t ttj ddd jsXt‚t td d dd jsrt‚t ttj d dd jsŽt‚| tdd	t  ƒd
dt  ƒs°t‚tt	t
fD ]D}t|dd	t  gƒƒ}t|ƒ|krú| t|ƒd d
dt  ƒsºt‚qºttd	t dd	t  giƒ ¡ ƒd \}}| |d	t ƒrR| |d d
dt  ƒsVt‚| ttd	t ƒƒtdt ƒƒszt‚| tdtd	  ƒdtd	  ƒsžt‚| tdtd	  dddtd  ƒsÆt‚| ttd	t ƒƒtdt ƒƒsêt‚| ttd ƒtd ƒst‚| ttd d	t  ttddƒƒ d ƒtd dt  d ƒsHt‚dt t t }t dt | d dt | d t| d fƒg kst‚d S )Nc                 S   s   t |  t¡ƒt | t¡ƒkS rŒ   )rÕ   r¦  r   ©Úe1Úe2rp   rp   rq   Útestf  s    z!test_float_handling.<locals>.testrb  Tr‘  r   Frx   rs   ç      ð?g       @ru   g      @rÅ   r„   g!ÌÈ,‹ÿ?r”  gffffffæ?g333333ã?gš™™™™™É?g333333Ó?rÚ  )rB   re   Zis_Rationalr{   Zis_Floatr   r°   rD   r¦   r¥   rž   ÚtypeÚitemsr1   r#   r   r_   rg   rh   )rà  Zcontainr‘   rb   rÏ  Ztotrp   rp   rq   Útest_float_handlinge  s,    ",*,$$($&ÿ
rä  c                  C   s*   t ddd} t| d d ƒdgks&t‚d S )Nre   Tr€  rs   rx   rÒ  rÛ   rp   rp   rq   Útest_check_assumptions  s    rå  c                   C   sì   t ttd ƒttd ƒ d ƒg ks(t‚t ttd ƒttd ƒ d ƒtt tddƒ t t d tt d tt tddƒ gks†t‚t ttd ƒttd ƒ d d ƒtt tddƒ t t d tt d tt tddƒ gksèt‚d S )Nru   rx   rŠ   r„   rs   )rB   r(   re   r{   r   r   r   rp   rp   rp   rq   Útest_issue_6056„  s    (8ÿ"8ÿræ  c                  C   sV   t  ttttt ƒƒƒttt ƒƒ ƒ } t| t dƒdks:t‚t| t dddd ksRt‚d S )Nrs   TFrÂ  )re   r#   r"   r$   rM   r{   rZ  rp   rp   rq   Útest_issue_5673Œ  s    &rç  c            
      C   s¸  t dƒ\} }}}}}}}t ddd}|| | |d| | d|     |d| d|   ||  || | || | d|     ||   | | g}	t|	|| |  d||||  | d d	  ||  |  |||d	| |||  |   |||  | | d
|  |||  |   i|d|d|d|digks.t‚t|	|||gd||||d	 |d	  t|d|  ||  ƒd	  | |d
|  t|d	 d| |  d|d	   ƒ d	| | |  ||||  | i||||d	 |d	  t|d|  ||  ƒd	  | |d
|  t|d	 d| |  d|d	   ƒ d	| | |  ||||  | ig||||d	 ||  |d	  |d	|   |||| d	  ||d	|    | ||| |d	|    igfks´t‚d S )Nz$R, C, Ri, Vout, V1, Vminus, Vplus, sÚRfTr€  ry   rx   r”   r›   rs   ru   r   rt   r‹   )r   rB   r{   r+   )
rk   rp  ZRiZVoutZV1ZVminusZVplusrË   rè  r’   rp   rp   rq   Útest_exclude’  st    ÿ"(ý "   &ü    üú  * > ü  * > üû  "  üöré  c                  C   sV   t d dt d   dt d   tddƒ } tt| ƒƒtt| d dd ¡ ƒksRt‚d S )Nrt   r„   ru   rs   rÄ   ZZZ)Údomain)re   r   rž   rB   r>   Z	all_rootsr{   r©  rp   rp   rq   Útest_high_order_rootsº  s    *rë  c                     sÜ  dddœ} dddœ}t tt d dt t d gf| ŽtdtdiksHt‚t tt d dt t d gf|Žtdtdiks|t‚dd	„ }|t tt t tt t t gf| Žƒdks´t‚|t tt t tt t t gf|Žƒdksät‚|t tt t tt t gf| Žƒdkst‚|t tt t tt t gf|Žƒdks@t‚tdddd
ddd
dd
d
dddd
gddd
ddd
dd
dd
ddd
d
gddd
d
dd
d
d
d
d
ddd
dgdd
ddd
ddd
d
ddd
dd
gdd
dd
d
dd
d
d
d
dd
ddgdd
d
dd
d
dd
d
d
dd
d
dgd
dddd
d
d
dddd
ddd
gd
ddd
d
d
d
dd
d
d
dddgd
dd
dd
d
d
d
dd
d
dd
dgd
d
ddd
d
d
d
d
dd
d
ddgd
d
d
d
ddddddd
d
d
d
gd
d
d
d
ddd
dd
d
d
d
d
d
ggƒ}ttdddƒ}tdgdgd
gd
gd
gd
gd
gd
gd
gd
gd
gd
ggƒ}|| | }t |ƒg kst‚t |ddg ks,t‚t	dd„ t tt t tt t gƒ 
¡ D ƒƒs`t‚dD ]d‰ t	dd„ t tt t tt t gˆ dd 
¡ D ƒƒr¢t‚tt‡ fdd„ƒ tt‡ fdd„ƒ qdttdd„ ƒ d S )NT©ÚquickÚ
particularFrt   rs   rx   ru   c                 S   s   t dd„ |  ¡ D ƒƒS )Nc                 S   s   g | ]}|d kr|‘qS rÐ  rp   )rŽ   re   rp   rp   rq   rê   Å  s      z>test_minsolve_linear_system.<locals>.count.<locals>.<listcomp>)rÕ   Úvalues)Zdicrp   rp   rq   ÚcountÄ  s    z*test_minsolve_linear_system.<locals>.countr   r”   zv:14©r„  ry   ©rî  c                 s   s   | ]
}|V  qd S rŒ   rp   ©rŽ   rÏ  rp   rp   rq   r“   Þ  s     z.test_minsolve_linear_system.<locals>.<genexpr>)TFc                 s   s   | ]
}|V  qd S rŒ   rp   ró  rp   rp   rq   r“   à  s     c                      s   t td gˆ dS )Nrx   )rí  rš   rp   ©Z_qrp   rq   r˜   ä  r™   z-test_minsolve_linear_system.<locals>.<lambda>c                      s   t td gˆ ddS )Nrx   Frì  rš   rp   rô  rp   rq   r˜   å  r™   c                   S   s   t td ddS )Nrx   Trò  rš   rp   rp   rp   rq   r˜   è  r™   )rB   re   rf   r{   rg   r]   rh   r<   r   r¤   rï  r[   r¨   )ZpqtZpqfrð  rn  rÏ  ro  r’   rp   rô  rq   Útest_minsolve_linear_system¿  sT    

4400..ô&  ÿ4
 þrõ  c                  C   s4   t ddd} tt| d | d  d ƒƒdks0t‚d S )Nre   Trç   rt   ru   rx   )r   rÕ   rB   r{   rÛ   rp   rp   rq   Útest_real_rootsë  s    rö  c                  C   sl   dt d  dt   dtd   d dt d  dt  t  dtd   d	 g} tt| tt d
dƒdksht‚d S )NicË†rs   iQÖAiTâkl   1ö'	 iýûa5iPQRiçäžl    d(	 FrÂ   r„   )re   rf   rÕ   rB   r{   )r’   rp   rp   rq   Útest_issue_6528ñ  s    "&þr÷  c                  C   s’   t ddd} td|  d ƒd tdd|   ƒd	 g}t|| ƒtjfgksLt‚t|| dd
tjfgksht‚t|| dddtjftdƒfgksŽt‚d S )Nre   Trç   r„   rÄ   rt   ru   rÝ   rx   ©rŒ  FrÌ  )r   r   rB   r   r°   r{   )re   r’   rp   rp   rq   Útest_overdeterminedú  s
    (rù  c                  C   sÀ   t dƒ} td| d  d| d   ƒddt t tdƒ gks@t‚t ddd} td| d  d| d   ƒdgksrt‚td	ƒttdƒƒ ttdƒƒ }td| d  dd|    ƒ| |gks¼t‚d S )
Nre   r„   rs   ru   r   Trç   rt   r‹   )r   rB   r   r   r$   r{   r+   )re   r^   rp   rp   rq   Útest_issue_6605  s    8& rú  c                   C   s,   t td ƒst‚t tƒrt‚t dƒr(t‚d S )Nrs   T)rO   re   r{   rp   rp   rp   rq   Útest__ispow  s    rû  c               	   C   sä   t tt d t dt  tj d  ƒ t td  d t dtd  dtd   dt  d ƒd  tddƒ d td d t t dtd  dtd   dt  d ƒd  tddƒ d  ƒ } t| tddd}t|ƒdksàt‚d S )Nrs   r„   rÝ   rx   Fr¸  rt   )	r+   rj   ri   r   r°   r   rB   rÕ   r{   ©r   rª   rp   rp   rq   Útest_issue_6644  s*    8"ÿÿÿÿ"ÿÿÿÿÿrý  c                   C   sd   t td t tt gttgƒddgks*t‚t td tt  tt gttgƒdt t fgks`t‚d S )Nrs   )r”   r”   ru  )rB   r]   r^   r{   r_   rp   rp   rp   rq   Útest_issue_6752  s    *rþ  c                   C   s¶   t ttd d  td  td t d  ƒdddttd t d dƒttd t d dƒttd t d dƒttd t d dƒttd t d dƒttd t d dƒg	ks²t‚d S )	Nrx   rs   r‹   r”   r   ru   r„   rt   )rB   re   rW   r{   rp   rp   rp   rq   Útest_issue_6792  s    *      ýrÿ  c                     s  t ddd\‰ } ttˆ d ƒdtˆ d ƒ  ƒddgks<t‚ttˆ ƒd tˆ ƒt gˆ ƒdgksdt‚tttˆ d	 ƒd
 ƒƒtj tdƒhkst‚tt	t
ˆ d ƒt
ˆ d d	 ƒ dƒˆ ƒtddƒtdƒd  tdƒ d tj gksæt‚tdtˆ ƒ tˆ d ƒ ƒdtddƒgkst‚t dƒ‰ ttˆ ƒd tˆ ƒd gˆ ƒtˆ ƒdˆ ddt  tˆ ƒdigksdt‚ttˆ ƒd tˆ ƒd  ƒd }t|ƒt|ˆ ƒksœt‚t ddd}tt|ƒd ƒdt dt gksÎt‚tt‡ fdd„ƒ t ddd}tdˆ |  d| |   |ƒtˆ |  | d |ƒks&t‚t ddd\‰ } tˆ | t  d ƒ| dˆ diks\t‚tˆ dt  ƒdgksxt‚t ddd\‰ } tˆ | t  d dt  ƒˆ dt | dt iks¾t‚t ddd‰ tˆ |  d dt  ƒˆ d| dt iksøt‚tdƒ}t|ˆ d ƒ|dˆ  d ƒ ƒdgks,t‚ttˆ d ƒtdˆ  d ƒ ƒdgksXt‚t dƒ‰ tdˆ  dˆ   ƒtt tdƒ gksŒt‚d S )Núx yTrç   ru   rs   rx   r4  )ry   rÄ   rÝ   rl   r”   r  r'  re   rÔ   ©Z	imaginaryrŠ   c                      s   t tˆ ƒd ƒS r_  )rB   rœ  rp   rÛ   rp   rq   r˜   >  r™   z6test_issues_6819_6820_6821_6248_8692.<locals>.<lambda>rr  rñ  r„   r   ry   r|   )r   rB   rœ  r{   r   r   rž   r   r®   r   r   r   r+   r°   r!   r    r   r[   r€   r   r$   )rf   r   rÔ   rr  r|   rp   rÛ   rq   Ú$test_issues_6819_6820_6821_6248_8692&  s@    ,(,& ÿ
0ÿ &:&6.,,r  c                   C   s  t dtdt ƒ ttƒ tdt ƒd d  dktƒt tk ttdƒd k @ ksTt‚t dtdt ƒ d ttd ƒ ttƒd d  dktƒt tk ttdƒd k @ ks¬t‚t ttƒd td  tdt d ƒ ttƒd d  dktƒt tk ttk @ kst‚d S )Nrs   r   r„   )rB   r#   re   r   r$   r{   rp   rp   rp   rq   Útest_issue_17638V  s    TXr  c                  C   s4  t dƒ\} }}}}}| d | | | |  | |  d ||  | |   }t dddd\}}}	|dd||    |	|    }
||
  ¡ }|t|ƒ ¡ 9 }t|| ƒ}| ¡ }|||	g}t||dd} t| ƒdksÐt‚|||  |||   ||| |	|| ||  i}|D ](}| d |  ¡ ||  ¡ kst‚qd S )	Nzs, tau_c, tau_1, tau_2, phi, Krs   rx   zK_C, tau_I, tau_DT)r  Znonzerorv   r   )	r   Ztogetherr@   rŸ   r>   rz  rB   rÕ   r{   )rË   Ztau_cZtau_1Ztau_2ÚphiÚKÚtargetZK_CZtau_IZtau_DZPIDr   r_   ÚvarsZknownsolutionÚvarrp   rp   rq   Útest_issue_14607^  s0    ÿ6 ÿ

  þr	  c                     sj  ddl m‰ m‰ ttˆ dˆ   tˆ ƒ ˆ ƒˆ ƒˆ tˆ ƒhksBt‚tˆ ˆ ƒg ksTt‚tˆ d dˆ   d  	ˆ t
ˆ ƒdˆ   ¡ƒtdtj ƒd gks˜t‚tˆ d dˆ   d  	ˆ t
ˆ ƒdˆ   d d ¡ƒtdttdƒ ƒ ƒd tdttdƒƒ ƒd gkst‚tˆ d dˆ   d  	ˆ t
ˆ ƒdˆ   ¡ƒtdtdtdƒ ƒ ƒd tdtdtdƒ ƒ ƒd gksnt‚ˆ tˆ ƒ d  	ˆ ˆ tˆ ƒ ¡} t| ƒtdttdƒ ƒ ƒgks´t‚tt‡ ‡fdd„ƒ ddtt
dƒ d ƒ t
dƒ g}tˆ d dˆ   ˆ ƒ|ks
t‚ttdt
ˆ ƒ ˆ t
dƒ  ƒƒt|ƒks8t‚ttdˆ  ƒˆ ˆ ƒˆtˆƒ d gksft‚d S )	Nr   ©re   rf   rx   rs   ru   c                      s   t ˆ tˆ ƒtˆˆ  ƒ  ˆ ƒS rŒ   )rB   r3   r$   rp   r
  rp   rq   r˜   ‡  r™   z+test_lambert_multivariate.<locals>.<lambda>rŠ   )rc  re   rf   rH   r>   r#   r{   rJ   rB   rÇ   r$   r"   r   r‚  r+   r[   r€   rž   )r   r‘   rp   r
  rq   Útest_lambert_multivariate{  s"    2D20ÿ
*6ÿ
 &" .r  c                   C   sn   t dttƒ ttdƒ  tƒdgks(t‚tt tt tt  ƒtƒtt tttƒ t ƒ ttƒ hksjt‚d S r_  )rB   r3   re   r{   rž   r]   r"   r$   rp   rp   rp   rq   Útest_other_lambertŽ  s
    ( ÿr  c            
      C   sT	  t td t ttd t ƒ d ƒtddƒtddtdƒ  ƒd  tddƒtddtdƒ  ƒd  gkslt‚t td t ttd t d ƒ d ƒtddƒtddtdƒ  ƒd  tddƒtddtdƒ  ƒd  gksÜt‚t tt ttd ƒ tƒdtt d ƒ gkst‚t tt ttd ƒ  t¡tƒdttdƒ ttƒ d ƒ dttdƒttƒ d ƒ gkspt‚t dt ttd ƒ  t¡tƒdttdƒ d ƒ dttdƒd ƒ dttdƒ d dƒ gksÖt‚t tt	tƒ dt  d tƒtdttdƒ ƒ ƒgkst‚t td  dt  tƒdddtt	dƒd ƒ t	dƒ gksRt‚t td dt  tƒdddtt	dƒd ƒ t	dƒ gkst‚t dt d dd	t d   tƒ} t
| ƒdkr| d
  ¡ td	dƒtdtddƒ t	dƒ d ƒdt	dƒ   kst‚t dt d dtddt  ƒ  tƒtddƒtdttddƒƒ d ƒd  gks\t‚t t	tƒt  ttd d ¡ƒt ttdƒ d ƒ tdtdƒ ƒgksªt‚tdt d  }t dt	|ƒ tt	|ƒ  | tƒ} dt	tƒ }tdƒt }td }|td| ƒ td  }|tddƒ d }| |t	|| d  ƒ |t	||d  ƒ |t	|ƒ d gksht‚ttddƒƒ}td	 }dtddƒ  }dtddƒ t }|tddƒ |tddƒ  d }t dt	|ƒ | tƒ} | |t	d| | ƒ d |t	|||  ƒ |t	|||  ƒ gkst‚tddd}ddd| d   d|  d }	t|	|tt|	ƒ|ƒƒtddƒtdt	dƒ ƒdt	dƒ   gksŽt‚tt dttƒ ttƒd  ƒƒtdƒtdtt	dƒ d ƒ t	dƒ ƒhksÞt‚t dt	tƒ dt	tƒ  t	tt	tƒ t	tƒ ƒ tƒtt tdtd  tdt ƒ ƒd  ƒt gksJt‚t tt ttd ƒ  td¡tƒ} t tddƒ }tdƒt }|d }| dt|d ƒ dt|| d  ƒ dt||d  ƒ gksÒt‚t dt ttd ƒ  td¡tƒdttddƒƒ dttddƒtdƒt d  ƒ dttddƒtdƒt d  ƒ dttddƒdƒ gks`t‚t td td ttƒ  ttddtdtt d ƒ itdttd ƒ igks´t‚t td td  td  tƒttdt	dƒ d dt	tƒ d  tt tddƒ  ƒƒgkst‚t dt	ttƒd ƒd  dt  ƒttdƒ dƒd d gksXt‚t dt	dttƒ d ƒd  t ƒttdƒ dƒd d gksœt‚t dt	td d ƒd  td  ƒt tdttdƒƒ ƒ t tttdƒ ƒd ƒ tdttdƒ ƒ ƒtdttdƒƒ ƒtdttdƒ dƒ ƒ tdttdƒ dƒ ƒgk	sPt‚d S )Nrs   rx   r”   r„   ru   rŠ   ry   rt   éûÿÿÿr   i ØÿÿrÄ   iëÿÿÿr‹   rd   Tr€  rV  rv   )rB   re   r#   r   r+   r"   r{   r]   r   r$   rÕ   rd  r*   rÇ   r   r^   r   rI   rH   r>   rž   r1   r-   rg   rf   r   )
r‘   Zaxrñ   rò   rJ  rK  rL  rM  rd   r   rp   rp   rq   Útest_lambert_bivariate•  sÐ    "  þ
&  þ
48ÿ
þÿ
ÿ
@>"2ÿ
$(ÿ
 ÿ"ý ý $ÿ  ÿ4,ÿ"ý 0  ÿÿ
"(ÿ
8ÿ"ÿ"ÿ"úr  c                   C   s’  t ttƒttƒ ƒdt tdt gks*t‚t ttƒttƒ ƒdttddƒt	dƒt	dt	dƒt
  ƒ d  t	dƒt
 d  ƒ dttjt	dƒt	dt	dƒt
  ƒ d  t	dƒt
 d  ƒ dttjt	dƒt	dt	dƒt
  ƒ d  t	dƒt
 d  ƒ dttjt	dƒt
 d  t	dƒt	dt	dƒt
  ƒ d  ƒ gks<t‚t ttƒttƒ ƒdt
t gksbt‚t dttƒ ttƒ tƒttjƒgksŽt‚d S )Nr   rs   ry   r”   rx   ru   )rB   r3   re   r4   r   r{   r2   r/   r   r+   r   r   r°   r'   r(   r1   rp   rp   rp   rq   Útest_rewrite_trigñ  s"    *@< ÿÿÿÿý&r  c                  C   sø   ddl m}  tttƒ| tƒ ƒdttddƒtdƒd  tdtdƒ d ƒd  ƒ dttddƒtdƒd  tdtdƒ d ƒd  ƒ dttdƒ d tj	 tddtdƒ  ƒd  ƒ dttddtdƒ  ƒ d tdƒd  tj	 ƒ gksôt
‚d S )Nr   ©Úsechrs   r”   rt   ry   )Ú%sympy.functions.elementary.hyperbolicr  rB   r'   re   r%   r   r+   r   r°   r{   r  rp   rp   rq   Útest_rewrite_trighþ  s    4422ür  c                  C   s”  t ttƒ tttdtd td     ƒ } t| tddttttt ƒ  ƒ ttttt ƒ  ƒgksht‚tttd ƒtddt  ƒ d ƒdtdtdƒ ƒttddƒƒ d  tdƒd  tdtdƒ ƒ ttddƒƒ d d tdƒd  gdtd	tdƒ d
 d  ƒd  tdƒd  dtd	tdƒ d
 d  ƒd  tdƒd  gfksTt‚tttdt ƒd ƒtt	tƒ d ƒ tdƒ ƒg kst‚d S )Nr”   rs   T)Úforceru   rx   rŠ   iôÿÿÿiÜÿÿÿr‹   )
rg   r$   re   rf   rB   r+   r#   r{   r   r(   rZ  rp   rp   rq   Útest_uselogcombine	  s    ,<"02ÿ,,ÿýr  c                   C   s.   t ttdƒtd  tƒdtdƒ gks*t‚d S r`  )rB   r0   re   r   r+   r{   rp   rp   rp   rq   Ú
test_atan2  s    r  c                   C   s„   t ttƒt tƒttƒgks t‚t ttƒt tƒttƒgks@t‚t ttƒt tƒttƒgks`t‚t ttƒt tƒttƒgks€t‚d S rŒ   )rB   r5   re   rf   r8   r{   r6   r7   rp   rp   rp   rq   Útest_errorinverses  s       r  c               	   C   sT  t dƒ} tdƒ|  td| d  ƒ | d tdƒtd| d  ƒ d   }t|| ddd }|tddƒtddƒtdƒt d  td	d
ƒtdƒt d  tddƒ   ddtddƒtdƒt d  td	d
ƒtdƒt d  tddƒ     ftddƒddtd	d
ƒtdƒt d  tddƒ    td	d
ƒtdƒt d  tddƒ  fhksPt‚d S )Nrk   rs   rx   Tr   rt   ru   r”   éû   r¼   éo   r4  rû   )r   r+   rB   r   r   r{   )rk   r   rª   rp   rp   rq   Útest_issue_2725   s,    @*ÿÿ$ÿÿÿÿÿ"ÿþr  c                  C   sh  t dƒ\} }}}}}}}}}	}
}}}}}}t| ||  ||  g|d| d|  d|   ||  ||  g| | |d| d|  d|    ||  g| | |d| d|
  d|    |	|  g| | |	d| d|  d|    ||  g|	 | |d| d|    ggƒ}t|||	|| |gƒ}tt|ƒt|ƒdd}tdd„ | ¡ D ƒƒdksdt‚d S )Nzb:rrx   Fr›  c                 S   s   g | ]}|  ¡ ‘qS rp   )Ú	count_ops)rŽ   rË   rp   rp   rq   rê   8  s     z(test_issue_5114_6611.<locals>.<listcomp>iÆ  )r   r<   rB   r¦   rì   rï  r{   )r^   r_   r`   ra   r|   r}   rc   rÔ   rÇ  rb   rÈ  rj   rn   ré   rd   ri   rÌ   r’   rÏ  r‘   rp   rp   rq   Útest_issue_5114_6611*  s    * ,. .. ýr  c                  C   sž   t ddtdƒƒ} |  ¡ t| ƒks$t‚d| d< |  ¡ t| ƒks@t‚t ddttdƒƒƒ} |  ¡ t| ƒksht‚tdddƒ}t|ƒt	|ƒ  kr”| ¡ ksšn t‚d S )Nru   za:9rx   ru  r4  rs   )rx   rs   rx   r„   )
r<   r   ZdetrP   r{   r¦   rî   r=   rQ   rR   )rj   rË   rp   rp   rq   Útest_det_quick;  s    r  c                  C   s’   t ddd\} }tt| d |d  ƒd | ƒt|d  d ƒ t|d  d ƒgksXt‚t ddd\} }tt| d |d  ƒd | ƒg ksŽt‚d S )Nza bTrç   rs   ru   r4  r  ©r   rB   r+   r{   rU  rp   rp   rq   Útest_real_imag_splittingG  s    $ÿr  c                  C   sB   dt d  dt d   dt   d } tdd„ t| ƒD ƒƒs>t‚d S )Nry   ru   r„   rs   rt   c                 s   s   | ]}t t |¡ƒV  qd S rŒ   )r   r   rè   rÓ   rp   rp   rq   r“   Q  s     z"test_issue_7110.<locals>.<genexpr>)re   r½  rB   r{   rÐ   rp   rp   rq   Útest_issue_7110O  s    $r   c                   C   s*   t dt ddt   ƒdt gks&t‚d S r[  )rB   re   rU   r{   rp   rp   rp   rq   Ú
test_unitsT  s    r!  c                  C   s¢   t dƒ\} }}td|d  | |d  |  | dƒ}t|d|d  ƒ}t| d| |d  ƒ}ttt|||ƒ| ||gdƒƒ}t|ƒttd	gd
gdggƒƒksžt‚d S )NzA,B,Vg®Gáz²ƒ@g     €C@rø   r   g    d6 Ag    0Œ!A)r   r   r   z4442890172.68209z4289299466.1432z70.5389666628177)r   r   r<   rA   r   re  r{   )rn  ro  r—  Úeq1Úeq2Úeq3rª   rp   rp   rq   Útest_issue_7547X  s    &
þÿr%  c                  C   s*   t ddd} tt| ƒd ƒdgks&t‚d S )NrÌ   Trç   rs   r„   r  )rÌ   rp   rp   rq   Útest_issue_7895d  s    r&  c                  C   sö   t ddd\} }t| d |d  ƒd t|d |  d d  ƒd  }}tddƒdtd	ƒ d  }}|| f||fg}t||f| |fƒ|kst‚t||| |  f| |fƒg ks²t‚|d
7 }t||f| |fƒg ksÔt‚t||f| |fdd|ksòt‚d S )Nr   Trç   rs   rˆ   ru   é¿   rÃ   i‡  r‹   FrÂ   )r   r+   r   rB   r{   )re   rf   rÞ  rß  r]   r^   r‘   rp   rp   rq   Útest_issue_2777i  s    8"r(  c                  C   s"   d} t t|  tƒd | kst‚d S )Ng{[Rs±Ò8r   rº   )Únumberrp   rp   rq   Útest_issue_7322w  s    r*  c                   C   s.   t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ d S )Nc                   S   s   t tdddS )N)r”   rx   Úbisect)Úmethod)rA   re   rp   rp   rp   rq   r˜   }  r™   ztest_nsolve.<locals>.<lambda>c                   S   s(   t tt d tt tt ftttfdƒS )Nru   )iÎÿÿÿrù   )rA   re   rf   rg   rp   rp   rp   rq   r˜   ~  r™   c                   S   s   t tt tt fdƒS )Nrs  )rA   re   rf   rp   rp   rp   rq   r˜     r™   )r[   r¨   r   rp   rp   rp   rq   Útest_nsolve|  s    r-  c                      sæ   t tttd  t d tƒƒdks&t‚t tttd  t d tƒƒdksLt‚tttd  t d tƒg ksnt‚ttdd„ ƒ td t d ‰ tˆ ddˆ    ƒ‡ fdd„tdƒD ƒksºt‚td ‰ tˆ d	dˆ    ƒtj	gksât‚d S )
Nru   rx   r„   rt   c                   S   s   t ttd  t d tddS )Nrt   rx   F)Ú
incomplete)rB   r]   re   rp   rp   rp   rq   r˜   ‡  s    z.test_high_order_multivariate.<locals>.<lambda>c                    s   g | ]}t ˆ d  |ƒ‘qS rH  rV   rÓ   ©r`   rp   rq   rê     s     z0test_high_order_multivariate.<locals>.<listcomp>rs   )
rÕ   rB   r]   re   r{   r[   r€   rî   r   r°   rp   rp   r/  rq   Útest_high_order_multivariate‚  s    &&".r0  c                   C   sX   t dt d ƒdgkst‚t dtd  d ƒdgks8t‚t tdddƒddgksTt‚d S )Nr   rx   rs   zx*(1/x**0 - x)F©Úevaluate)rB   re   r{   r   rp   rp   rp   rq   Útest_base_0_exp_0’  s
    ÿr3  c                   C   sd   t dtd  tgƒtƒ kst‚t dtt  tgƒtt hks@t‚t dttdƒ tgƒthks`t‚d S )Nrx   r   ru   )rS   re   rž   r{   rf   r*   rp   rp   rp   rq   Útest__simple_dens™  s    "r4  c                   C   s”   t tttƒt td  d tƒƒdks*t‚t tdtd  dtd tddƒ  td   dtd tddƒ  t  dt  d td	d
ƒdkst‚d S )Nru   rx   r²  r³  rs   r´  rª  rµ  Fr¶  )rÕ   rB   r+   rf   re   r{   r   rp   rp   rp   rq   Útest_issue_8755Ÿ  s    *,ÿÿÿ ÿÿr5  c                  C   sP  d} d}d}d}d}d}d}d}t ttf}t |  d	 t| d	  |t d	  }	t | d	 t| d	  td	  }
t | d	 t| d	  |t d	  }|	|
|f}tt |  d	 t| d	  ƒt | }|
}tt | d	 t| d	  ƒt | }|||f}t||ƒ}t||ƒ}t||d
d}dd„ |||fD ƒ\}}}||  krF|ksLn t‚d S )Nr   i”ýÿÿi˜  é~   r°  r;  éÍ   éh   rs   Trø  c                 S   s   g | ]}d d„ |D ƒ‘qS )c                 S   s   h | ]}t d d„ |D ƒƒ’qS )c                 s   s   | ]}|  d ¡V  qdS )rs   N)rm   rÓ   rp   rp   rq   r“   Â  s     z7test_issue_8828.<locals>.<listcomp>.<setcomp>.<genexpr>rÎ  )rŽ   rÇ  rp   rp   rq   Ú	<setcomp>Â  s     z-test_issue_8828.<locals>.<listcomp>.<setcomp>rp   )rŽ   rk   rp   rp   rq   rê   Â  s     z#test_issue_8828.<locals>.<listcomp>)re   rf   rg   r+   rB   r{   )rò   Úy1Zr1rJ  Úy2rK  Zy3Zr3rÏ  Úf1Úf2Zf3rj  Zg1Zg2Zg3rØ  rn  ro  rp  rd   ri   rÌ   rp   rp   rq   Útest_issue_8828¨  s,    
$ $
$$


r>  c                   C   sþ  t tdt ƒtdt ƒ ƒdttddƒ ttddƒ t ttddƒ ttddƒ t d ttddƒ ttddƒ td ttd	dƒ ttddƒ tttd	dƒ ttd
dƒ ttddƒ ttddƒ dt dt tdtddƒ  ƒ dt tdtddƒ  ƒ dt tttd ƒ tttd ƒ  ƒ dt tttd ƒ tttd ƒ  ƒ dt tttd ƒtttd ƒ  ƒ dt tttd ƒtttd ƒ  ƒ gks¢t‚t dttƒ dtdt ƒ  ƒdttddƒ t t d td tttddƒ gksút‚d S )Nru   r‹   r   r  rV  ry   r4  rs   r„   rG  rt   r¡   r”   rx   r-  )	rB   r3   re   r   r   r   r$   r1   r{   rp   rp   rp   rq   Útest_issue_2840_8155Æ  sF                   ((&&÷
      ÿr?  c                   C   s"   t ddtd   ƒdgkst‚d S r¢  rº   rp   rp   rp   rq   Útest_issue_9567Ö  s    r@  c                  C   s€  t tt ƒt gkst‚t td t ƒt ttƒ tttƒ gksFt‚t td dt  ƒtdt ƒ tdƒttƒ d tdƒtdƒ t ttƒ d  tdƒttƒ d tdƒtdƒ t ttƒ d  gksÒt‚t td tt gttƒtdtt iksüt‚t td d tt gttƒdt t fdt t fgks:t‚ttd  d } tt d dt  }tt | |gttƒƒdks|t‚d S )Nrs   ru   r„   rV  ry   )	rB   re   r   r{   r   r+   r)   rf   rÕ   rÝ  rp   rp   rq   Útest_issue_11538Ú  s    .22ý
* ÿrA  c                  C   s€  t dƒ\} }}}}}}d| |  ||  d| |  ||  d||  ||  || d  |d  ||d  |d  ||d  |d  g}t|| ||||||gdd}t|d  d ƒ}	td|d  ƒ}
tdd|d   ƒ}tdƒ| }tdƒ|
 }|| |	 ||	 ||	 |||||di| |	||	||	|||||di| | d |
d  ||d |
d  ||
|| d |d  || d |d  |di| | d |
d  ||d |
d  ||
 || d |d  || d |d  |di| |d |
d  || d |
d  ||
|| d |d  || d |d  |di| |d |
d  || d |
d  ||
 || d |d  || d |d  |digks|t‚d S )	Nza,b,c,d,e,f,grx   rs   Trv   r‹   ru   r”   r  )r]   r^   r_   r`   ra   r|   r}   Ztermsrª   rË   Ús2Zs3Zs4Zs5rp   rp   rq   Útest_issue_12114ê  s`    6  ÿ &     ÿ(     ÿ&     ÿ(     ÿ÷rC  c                   C   sL   t dtt  ƒg kst‚t tt tƒg ks.t‚t tt t tƒg ksHt‚d S r^  )rB   r   re   r{   rp   rp   rp   rq   Útest_inf	  s    rD  c                     sò   t dƒ‰‡fdd„tdƒD ƒ} tdƒ}tt| |ƒƒ}|d d… |dd …  \‰‰‰‰ t‡ ‡‡‡fdd„tdƒD ƒˆˆˆfƒ}| d d… | dd …  \‰‰‰‰ t‡ ‡‡‡fdd„tdƒD ƒˆˆˆfƒ}|| d	   |¡ ¡ ||d	   ¡ ksît‚d S )
Nr|   c                    s   g | ]}ˆ |ƒ‘qS rp   rp   rÓ   r\  rp   rq   rê   
	  s     z$test_issue_12448.<locals>.<listcomp>rl   zx:15ru   c                    sT   g | ]L}ˆ d |  ˆ ˆ d | d  ˆ  ˆ d | d  ˆ  ˆ d | d   ‘qS ©r„   rx   rs   ru   rp   rÓ   ©r_   re   rf   rg   rp   rq   rê   	  s   ÿc                    sT   g | ]L}ˆ d |  ˆ ˆ d | d  ˆ  ˆ d | d  ˆ  ˆ d | d   ‘qS rE  rp   rÓ   rF  rp   rq   rê   	  s   ÿr   )	r   rî   r   rw   r§  rB   Zxreplacer  r{   )Zfunr  r¨  ZssymZsfunrp   )r_   r|   re   rf   rg   rq   Útest_issue_12448	  s&     ÿÿ ÿÿÿrG  c                   C   sî   t td dt  ƒdthks t‚t td dt  tƒthks@t‚t td dt  tgƒthksbt‚t dt dt  dt  ttgƒtthkst‚t dt dt  dt  ttƒtthks¼t‚t dt dt  dt  tthƒtthksêt‚d S )Nrs   rx   )rT   re   rf   r{   rg   rp   rp   rp   rq   Útest_denoms	  s      ".,rH  c               &   C   s:  t dƒ\} }}}}}| d |  | | | | | | | | | | | | | | | | | | |  d |d  d| d  || |d  |d  |d  || |d  |d  |d  || d| d  |d  || | | | | || |d  |d  |d  |  d |d  |d  |d  |d  |d  | d ||  |d  |d  |d  |d  || |d  |d  |d  || | | | | || |d  |d  |d  | d ||  |d  |d  |d  |d  |  d |d  |d  |d  |d  |d  | d |d  ||  |d  | ||  | | | || d| d  |d  || |d  |d  |d  | d |d  ||  |d  |  d d| d  |d  | ||  | | | || | || | | ||  | ||  |  |d  | d g%}| d|tddƒ|tddƒ|tddƒ|tddƒ|di| d|tj|tddƒ|d|d|di| d|tddƒ|tddƒ|tddƒ|tddƒ|di| d|d|d|d|d|di| d|tddƒ|tddƒ|td	ƒd |td	ƒ d |di| d|tddƒ|tddƒ|td	ƒ d |td	ƒd |dig}t|ƒ|ks6t‚d S )
Nzx0 x1 x2 x3 x4 x5rs   ru   r‹   rx   ry   r”   r   rt   )r   r   r   r°   r+   rB   r{   )rñ   rò   rJ  rK  rL  rM  ri  Zsolsrp   rp   rq   Útest_issue_12476#	  sT    <
    
 
 00 
 
 00   
      

 
    ö2"288ûrI  c                  C   s:   t dƒ} t| tdƒtdƒ  tdƒ | f| ƒg ks6t‚d S )Nrh   rt   rs   r  )rh   rp   rp   rq   Útest_issue_13849:	  s    rJ  c                  C   s@   ddl m} m} td| |  t t tƒd|  t gks<t‚d S )Nr   ©ÚnewtonÚkilorÝ   iÀàÿÿ)Úsympy.physics.unitsrL  rM  rB   re   rf   r{   rK  rp   rp   rq   Útest_issue_14860?	  s    rO  c               	   C   sf  t dƒ\} }}}td|  d d |d   | d d |d   d|  d d |d   | d d |d   || d g|| ||ƒdd| td|d d  ƒ |fdd|td|d d  ƒ |fgksÊt‚t||| d|d   d | d d|d   d g|||ƒ|dtdƒ d f|dtdƒd fgks4t‚t||d  d ||d  d fƒg ksbt‚d S )Nz:4r”   rx   rs   r   ry   r4  r  )rb   rc   r]   r^   rp   rp   rq   Útest_issue_14721D	  s<    .. ý   ý þý  ÿ  ÿ ÿÿ
rP  c                  C   sl   t ddd} tt| d d| d   d ƒt| d d| d   d ƒ d	t| ƒ |   | ƒtdƒgksht‚d S )
Nre   Trç   r„   é‚   rs   iA  i  rý   )r   rB   r+   r   r{   rÛ   rp   rp   rq   Útest_issue_14779R	  s    0ÿÿÿÿrR  c                  C   sú   t td ttd td ddfƒtdtditdtdigks>t‚t td tdtd ddfƒtdtdikslt‚t td ttd td ddfƒtdtdiksžt‚tdt dt  d	 d
t t ƒ} tdt d dt d ƒ}t | |gƒtdtdiksöt‚d S )Nrs   ru   Fr1  rŠ   r„   r”   iá0  iÕW i¢éÿÿry   rÝ   rû   r    r8  )rB   rf   r	   re   r{   r   r   )r"  r#  rp   rp   rq   Útest_issue_15307X	  s     ÿ
ÿ 
ÿ"rS  c                   C   sÔ   t td tƒdgkst‚t td gtƒtdiks4t‚t ttdtd  d  tdt  ƒtƒg ksdt‚t ttdtd  d  tdt  ƒgtƒg ks–t‚t ttdtd  d  tdt  ƒttdƒgtƒg ksÐt‚d S )Nru   rs   rx   )rB   re   r{   r   rf   rp   rp   rp   rq   Útest_issue_15415d	  s
    02rT  c                  C   s  t ttd dt  d td dt  d  dƒƒdddd	d
dgksFt‚t ttd  d ƒdgksdt‚t t t d  d ƒdgks†t‚t td d
 td d  d ƒddgks²t‚t td dt  d td d  dddtdƒ    ƒtdƒgksøt‚t tttj  dtdƒ  ƒtdƒgks&t‚t td d t d ƒdgksJt‚t tdt  d ƒddgkslt‚t td dt  tdƒ ƒddgks–t‚t tttj  tddƒ ƒtddƒgksÄt‚t ttdƒƒ t d ƒdtdƒtdtddƒ ƒt	t
   gks
t‚t tdƒt ttdƒƒ ƒtjgks4t‚t tdƒ t dtdƒ  ƒddtdƒd  dt
d   dt	 t
 tdƒ  tdƒd dt
d    gks¤t‚t tdƒt dtdƒ  ƒdgksÌt‚t t	t d ƒdgksèt‚t dt	 t dt	  ƒdgkst‚t tdƒtdƒ t dtd
ƒ d	 tddƒ  ƒtddƒgksPt‚tdƒ} t | t | d  tƒdgkszt‚t | t d|   tƒdgksœt‚t | t |  tƒdgksºt‚tddd} t | t | d  tƒdgksèt‚t | t d|   tƒdgks
t‚d S )Nrs   rÄ   r   r  r–   rx   ru   r„   rt   r‹   ry   r#  rÝ   r4  r^   r”   Tr€  )rB   r   re   r{   r+   r   r°   r   r$   r   r   r   )r^   rp   rp   rq   Útest_issue_15731l	  s4    F",F.$"*.F*Fÿ($D"""rU  c                   C   sJ   t td ttd   tƒst‚t ttd  td  td  d ƒsFt‚d S )Nr„   rÚ  ru   rs   rá  )rB   re   rf   r{   r   rp   rp   rp   rq   Útest_issue_10933Œ	  s    rV  c                  C   s,   t ddd} tt| t ƒ| ƒdgks(t‚d S )Nre   Trç   r   )r   rB   rœ  rf   r{   rÛ   rp   rp   rq   Útest_Abs_handling‘	  s    rW  c                  C   s†   t dƒ} td| d  d|   d dk| dkg| ƒtjks<t‚t| d d| d   d	|  d  d
 dk| d dkg| gƒtjks‚t‚d S )Nre   rs   rt   rÃ   r   g      ø?ru   g)\Âõ( @g=
×£p=L@éj   rx   )r   rB   r   Úfalser{   rÛ   rp   rp   rq   Útest_issue_7982–	  s    4rZ  c                  C   sP   t dƒ\} }t| | |  | | | |  | g| |gƒ||d  |fgksLt‚d S )Nr   rx   rÒ  r
  rp   rp   rq   Útest_issue_14645ž	  s    r[  c                  C   sR   t dƒ\} }ttd| dk f| | dkfƒ| ƒ|td| dk f| dfƒigksNt‚d S )Nr   r¢   rÚ  T)r   rB   r,   r{   r
  rp   rp   rq   Útest_issue_12024£	  s     ÿr\  c                   C   s¬   t dt t t tƒtttƒtt  ƒ ttdƒƒ tttƒtt  ƒttdƒƒ gks\t‚t ttd  td  tƒttdtdƒ dttƒ  dt t  ƒƒgks¨t‚d S )NrÄ   r   iõÿÿÿ)	rB   re   r   r+   r$   r   r{   r#   r"   rp   rp   rp   rq   Útest_issue_17452©	  s    4ÿ
r]  c                   C   s0   t tttdƒd  ƒt  t tƒg ks,t‚d S r   )rB   r5   re   r   r   r   r{   rp   rp   rp   rq   Útest_issue_17799¯	  s    r^  c                  C   sN   t ddd} ttt| d d ƒ|  ƒ|  ƒddtdƒ dtdƒ gksJt‚d S )Nre   Trç   rs   rx   r”   )r   rB   rœ  r+   r{   rÛ   rp   rp   rq   Útest_issue_17650³	  s    r_  c                  C   s\   dt d  dt d d tdƒd    ddt d d tdƒd     } t| ƒd ksXt‚d S )Néøÿÿÿrs   r4  rx   r„   ru   )re   r   rL   r{   rZ  rp   rp   rq   Útest_issue_17882¸	  s    Hra  c                   C   s„   t tt
 td  ƒtƒg ks t‚t tt td  ƒtƒg ks@t‚t tt
 td  ƒtƒg ks`t‚t tt td  ƒtƒg ks€t‚d S r]  )rB   r#   re   r{   rp   rp   rp   rq   Útest_issue_17949½	  s       rb  c                   C   s  t tttdƒdƒƒddgks t‚t tttdƒttdƒ tƒƒdddgksLt‚t tttdƒdƒƒddgkslt‚t tttdƒ tƒttdƒ gks’t‚t tttdƒ ttdƒ ttƒ tƒttƒ ttdƒ ttdƒ gksÜt‚t td ttd dƒ tƒdddgkst‚d S )Nrs   ru   ry   rV  r   rx   r”   )	rB   r   r   re   r{   Úpowr]   rf   r3   rp   rp   rp   rq   Útest_issue_10993Ä	  s     , &Jrd  c                  C   sr   t t d } t t }t| |gt tƒt t tdt iks:t‚t d t }t| |gt tƒt dt tdt iksnt‚d S )Nrx   r”   rs   ry   )re   rf   r
   rB   r{   r   )r"  r#  r$  rp   rp   rq   Útest_issue_11553Í	  s
    &re  c                  C   sÀ  t dƒd } tttƒd ttƒd  ƒ tdttƒd  dttƒd   ƒtd|  ƒtd|  dtdƒt   d ƒ td|  dtdƒt   d ƒ gksžt‚t j	}tttƒd ttƒ ƒdt| tdƒd  tdƒtdtdƒ ƒ d  ƒ dt|tdƒd  tdƒtdtdƒ ƒ d  ƒ dttdƒ d | tdƒtdtdƒ ƒ d  ƒ dttdƒ tdtdƒ ƒ d | tdƒd  ƒ gks”t‚tdttƒ ttƒ ƒtdƒgks¼t‚d S )Nrx   ru   rt   r„   rs   ry   )
r   rB   r1   re   r3   r/   r+   r   r{   r°   )rh   rc   rp   rp   rq   Útest_issue_19113_19102Õ	  s    "
   þ
4244ürf  c               	   C   sª   t dƒd } t dƒd }tdƒd }tdƒd }tdtd d  d ƒd| |  t| | ƒ | |  t| | ƒ ||  t| | ƒ ||  t| | ƒ gks¦t‚d S )Nru   r„   rt   rÝ   rx   rs   )r   r+   rB   re   r{   ©r]   r^   r_   r`   rp   rp   rq   Útest_issue_19509ä	  s    ürh  c               	   C   sò   t dƒ\	} }}}}}}}}|| | |  | }	d|d | d  | dt||	 ƒ   }
||||	t|
ƒ    }dt|| | ||| | |  |   ƒ dt||| | |  |  ƒ  }| |d|   |d|   d g}t||ƒ|ksît‚d S )NzTHT HT DBH dib c0 c1 c2 c3 c4rx   )r   r#   r$   rB   r{   )ZTHTZHTZDBHZdibZc0Zc1Úc2Úc3Zc4r|   Úrhsr   Ztermrª   rp   rp   rq   Útest_issue_20747ï	  s    (*ÿ"rl  c                  C   s2  t dt  d  } t|  t dt d i¡ t¡dktƒtdƒtk ttdƒd k @ ksVt‚t|  t dt d i¡ t¡dktƒtdƒd tk ttdƒd k @ ks t‚t|  t dt d i¡ t¡dktƒtd	ƒd tk ttdƒk @ ksæt‚t|  t dt d i¡ t¡dktƒtdƒtk ttdƒd k @ ks.t‚d S )
Nrx   rs   ru   r   r”   rV  ry   r„   r  )rh   rB   rÇ   re   r   r   r{   r\  rp   rp   rq   Útest_issue_20902ú	  s
    FJFrm  c                  C   sÀ   t ddd} tttdƒƒ ttt| ƒƒ tttƒ g}t|tttƒttdƒƒtt| ƒƒtttdƒƒƒfgkspt	‚t
tƒt
t ƒ ttƒt
tƒt
t ƒ   t d g}t|tƒtdiks¼t	‚d S )Nr]   Trç   r„   rt   )r   re   r&   r1   rf   r'   rg   r(   rB   r{   r#   )r]   r|  Z	newsystemrp   rp   rq   Útest_issue_21034
  s
    *:6rn  c                  C   sÔ   t ttd t d  td td   td  ƒ t d td   } tt t d td   }t||   t t   ||  ft||   t t   ||  fg}ttd td  td  t t tt  t gttƒ|ksÐt‚d S r]  )	r]   r+   rk   r^   r_   rB   re   rf   r{   )rg   rh   rª   rp   rp   rq   Útest_issue_4886
  s    @<ro  c                  C   sT   t ddd\} }}}t| |t  ||t   tƒt||  ƒt|| ƒ gksPt‚d S )Nrm  Tr€  )r   rB   re   r$   r{   rg  rp   rp   rq   Útest_issue_6819
  s    rp  c                  C   s0   t dƒ} td|  t d | ƒdt gks,t‚d S )Nre   rx   r„   )r   rB   r   r{   rÛ   rp   rp   rq   Útest_issue_17454
  s    rq  c                  C   sB   ddt dƒ d  g} tdt t dtd  ƒ d ƒ| ks>t‚d S )Nr(  rs   )r+   rB   re   r{   )r¸   rp   rp   rq   Útest_issue_21852
  s    rr  c                  C   sŒ   t  ttdt   tdt  dt   ddt    } t| tddd}|ttdt   tdt   t dt   t ddt   gksˆt‚d S )Nrx   Fr¸  )r`   r]   r_   ra   r^   rB   r{   rü  rp   rp   rq   Útest_issue_21942#
  s    6
ÿÿ
ÿrs  c                  C   sP   t td td  t d dd} t td td  t d dd}| |ksLt‚d S )Nrt   rs   rx   F)ZcubicsTrº   )r*   Zradrp   rp   rq   Útest_solver_flags*
  s      rt  c                  C   s’   dt d  dtd d  td   } t|  ¡ t dddt td d  tdtdƒt   td d  t dtdƒt   td d  gksŽt‚d S )	Nrs   ru   r¡   rx   r‹   Fr›  r”   )re   rf   rg   rB   rd  r+   r   r{   rZ  rp   rp   rq   Útest_issue_227680
  s    $0 ÿÿru  c                   C   sZ   t td  ttd t ƒ d dt t dt t  fƒtdttitdttigksVt‚d S )Nrs   ry   r”   rx   )rB   rf   r$   re   r   r{   rp   rp   rp   rq   Útest_issue_227177
  s    8
 
ÿrv  c                  C   s²  t dt td tt t t   td dt dtddƒ t  dt  t dtddƒ t  dt  t   td ddtddƒ  t t	dƒt  dtddƒ t  dt  t	dƒt  ddtddƒ  t  dtddƒ t  dt    td dt	dƒ t ddtddƒ  t  t	dƒt  dt	dƒ t  t	dƒt  ddtddƒ  t    tdt dt  dt	dƒ t  dt	dƒ t    d ƒ} t
| ttttttgtƒttddƒttdd	ƒttd
dƒddtddƒ  d  ddtddƒ  d	  tddtddƒ  d dt	dƒ d  ddtddƒ  d  ttd
dƒddtddƒ  d	  ddtddƒ  d  tdt	dƒ d ddtddƒ  d  ddtddƒ  d  iks®t‚d S )Nr`  rt   r„   rs   ru   rV  rÝ   r  i  iØÿÿÿé   rx   iìÿÿÿrˆ   i  iöÿÿÿrÃ   )r   r]   re   r^   r_   ra   r   r`   rb   r+   rG   r{   rZ  rp   rp   rq   Útest_issue_10169<
  sb    Fÿÿÿÿ&ÿÿ
ÿÿÿÿÿF
ÿÿý ÿüû   4 : 4 :úrx  c                  C   s<  t dƒ\} }}}t| ttƒ |ttƒ  |tt| ƒ ƒ t¡jdd}t|||ftƒ}||dt	| t
| d |d  ƒ | ƒ || d  | t
| d |d  ƒ  |d  | t
| d |d  ƒ  i|dt	| t
| d |d  ƒ | ƒ || d | t
| d |d  ƒ  |d  | t
| d |d  ƒ  d igks8t‚d S )NzA, B, r, phiT)Ztrigrs   r”   )r   r   r3   rh   r1   Zrewriter   rd  rG   r/   r+   r{   )rn  ro  rÌ   r  r   rh  rp   rp   rq   Ú*test_solve_undetermined_coeffs_issue_23927M
  s    8 " @þ " Bþýry  N)rl   (  Zsympy.assumptions.askr   r   Zsympy.core.addr   Zsympy.core.containersr   Zsympy.core.functionr   r   r   Zsympy.core.mulr	   Z
sympy.corer
   r   Zsympy.core.numbersr   r   r   r   r   r   Zsympy.core.relationalr   r   r   r   Zsympy.core.singletonr   Zsympy.core.symbolr   r   r   r   Zsympy.core.sympifyr   Z(sympy.functions.combinatorial.factorialsr   Z$sympy.functions.elementary.complexesr   r   r   r    r!   Z&sympy.functions.elementary.exponentialr"   r#   r$   r  r%   r&   r'   r(   Z(sympy.functions.elementary.miscellaneousr)   r*   r+   Z$sympy.functions.elementary.piecewiser,   Z(sympy.functions.elementary.trigonometricr-   r.   r/   r0   r1   r2   r3   r4   Z'sympy.functions.special.error_functionsr5   r6   r7   r8   Zsympy.integrals.integralsr9   Zsympy.logic.boolalgr:   r;   Zsympy.matrices.denser<   Zsympy.matricesr=   Zsympy.polys.polytoolsr>   Zsympy.printing.strr?   Zsympy.simplify.radsimpr@   Zsympy.solvers.solversrA   rB   rC   rD   Zsympy.solversrE   rF   rG   Zsympy.solvers.bivariaterH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rN  rU   Zsympy.polys.rootoftoolsrW   Zsympy.testing.pytestrX   rY   rZ   r[   Zsympy.core.randomr\   rÈ   rc  r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rr   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õ   rS  rT  rg  rk  rl  rq  rv  r{  r}  r  rƒ  r…  r†  r‡  rˆ  r  r’  r“  rš  r  rž  rŸ  r¿  rÀ  rÁ  rÄ  rÅ  rÆ  rÉ  rÔ  rÕ  r×  rÙ  rÜ  rä  rå  ræ  rç  ré  rë  rõ  rö  r÷  rù  rú  rû  rý  rþ  rÿ  r  r  r	  r  r  r  r  r  r  r  r  r  r  r  r  r   r!  r%  r&  r(  r*  r-  r0  r3  r4  r5  r>  r?  r@  rA  rC  rD  rG  rH  rI  rJ  rO  rP  rR  rS  rT  rU  rV  rW  rZ  r[  r\  r]  r^  r_  ra  rb  rd  re  rf  rh  rl  rm  rn  ro  rp  rq  rr  rs  rt  ru  rv  rx  ry  rp   rp   rp   rq   Ú<module>   s   (0D
h$


7
v3('-
,



  7


+D	(,	
0

[



	

		