o
    jg D ã                   @   sj  d dl mZ d dl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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 d d
lmZm Z m!Z! d dl"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. d dl/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z< d dl=m>Z>m?Z?m@Z@ d dlAmBZB d dlCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQ d dlRmSZSmTZTmUZUmVZV d dlWmXZX d dlYmZZ[ d dl\m]Z] d dl^m_Z_ d dl`maZa d dlbmcZc d dldmeZe d dlfmgZgmhZh d dlimjZjmkZkmlZlmmZmmnZnmoZompZp d dlqmrZr d dlsmtZt d dlumvZv d dlwmxZxmyZymzZzm{Z{m|Z|m}Z} d d l~mZ€ d d!lm‚Z‚ d d"lƒm„Z„ d d#l…m†Z†m‡Z‡mˆZˆm‰Z‰mŠZŠm‹Z‹mŒZŒmZmŽZŽmZmZm‘Z‘m’Z’m“Z“m”Z”m•Z•m–Z–m—Z—m˜Z˜m™Z™mšZšm›Z›mœZœmZ d d$lžmŸZŸm Z m¡Z¡m¢Z¢m£Z£m¤Z¤m¥Z¥m¦Z¦m§Z§m¨Z¨m©Z©mªZªm«Z«m¬Z¬m­Z­m®Z®m¯Z¯m°Z°m±Z±m²Z²m³Z³ d%d&„ Z´d'd(„ Zµd)d*„ Z¶e}d+d,„ ƒZ·d-d.„ Z¸d/d0„ Z¹d1d2„ Zºd3d4„ Z»d5d6„ Z¼exd7d8„ ƒZ½d9d:„ Z¾d;d<„ Z¿d=d>„ ZÀd?d@„ ZÁdAdB„ ZÂdCdD„ ZÃdEdF„ ZÄdGdH„ ZÅdIdJ„ ZÆdKdL„ ZÇdMdN„ ZÈexdOdP„ ƒZÉe{dQdR„ ƒZÊdSdT„ ZËdUdV„ ZÌdWdX„ ZÍdYdZ„ ZÎd[d\„ ZÏd]d^„ ZÐd_d`„ ZÑdadb„ ZÒdcdd„ ZÓdedf„ ZÔdgdh„ ZÕdidj„ ZÖdkdl„ Z×dmdn„ ZØdodp„ ZÙdqdr„ ZÚdsdt„ ZÛdudv„ ZÜdwdx„ ZÝdydz„ ZÞd{d|„ Zßd}d~„ Zàdd€„ Zádd‚„ Zâdƒd„„ Zãd…d†„ Zäd‡dˆ„ Zåd‰dŠ„ Zæe}d‹dŒ„ ƒZçddŽ„ Zèdd„ Zéd‘d’„ Zêd“d”„ Zëd•d–„ Zìd—d˜„ Zíexd™dš„ ƒZîexd›dœ„ ƒZïexddž„ ƒZðe}dŸd „ ƒZñe}d¡d¢„ ƒZòd£d¤„ Zód¥d¦„ Zôexd§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exdËdÌ„ ƒZdÍdÎ„ ZdÏdÐ„ Z	dÑdÒ„ Z
dÓdÔ„ ZdÕdÖ„ Zd×dØ„ ZexdÙ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e|dùƒdúdû„ ƒZe|düƒ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*exdd„ ƒZ+dd„ Z,dd„ Z-dd„ Z.dd„ Z/dd „ Z0d!d"„ Z1d#d$„ Z2d%d&„ Z3d'd(„ Z4d)d*„ Z5d+d,„ Z6d-d.„ Z7d/d0„ Z8d1d2„ Z9d3d4„ Z:d5d6„ Z;d7d8„ Z<d9d:„ Z=d;d<„ Z>d=d>„ Z?d?d@„ Z@dAdB„ ZAdCdD„ ZBdEdF„ ZCdGdH„ ZDdIdJ„ ZEdKdL„ ZFdMdN„ ZGdOdP„ ZHdQdR„ ZIdSdT„ ZJdUdV„ ZKdWdX„ ZLdYdZ„ ZMd[d\„ ZNd]d^„ ZOd_d`„ ZPexdadb„ ƒZQdcdd„ ZRdedf„ ZSdgdh„ ZTexdidj„ ƒZUexdkdl„ ƒZVdmdn„ ZWdodp„ ZXdqdr„ ZYexdsdt„ ƒZZdudv„ Z[dwdx„ Z\dydz„ Z]d{d|„ Z^d}d~„ Z_dd€„ Z`dd‚„ Zadƒd„„ Zbd…d†„ Zcd‡dˆ„ Zdd‰dŠ„ Zed‹dŒ„ ZfddŽ„ Zgdd„ Zhd‘d’„ Zid“d”„ Zjd•d–„ Zkd—d˜„ Zld™dš„ Zmd›dœ„ Znddž„ ZodŸd „ Zpd¡d¢„ Zqd£d¤„ Zrd¥d¦„ Zsd§d¨„ Ztd©dª„ Zud«d¬„ Zvd­d®„ Zwd¯d°„ Zxd±d²„ Zyd³d´„ Zzdµd¶„ Z{d·d¸„ Z|d¹S (º  é    ©Úisclose)Ústationary_points)ÚTuple)ÚFunctionÚLambdaÚnfloatÚdiff)ÚMod)ÚEÚIÚRationalÚooÚpiÚIntegerÚ	all_close)ÚEqÚGtÚNeÚGe)ÚS)Úordered)ÚDummyÚSymbolÚsymbols©Úsympify)ÚAbsÚargÚimÚreÚsignÚ	conjugate)ÚLambertWÚexpÚlog)ÚHyperbolicFunctionÚsinhÚcoshÚtanhÚcothÚsechÚcschÚasinhÚacoshÚatanhÚacothÚasechÚacsch)ÚsqrtÚMinÚMax)Ú	Piecewise)ÚTrigonometricFunctionÚacosÚacotÚacscÚasecÚasinÚatanÚatan2ÚcosÚcotÚcscÚsecÚsinÚtan)ÚerfÚerfcÚerfcinvÚerfinv)ÚAnd)ÚMutableDenseMatrix)ÚImmutableDenseMatrix)ÚPoly)ÚCRootOf)ÚContains)ÚConditionSet)ÚImageSetÚRange)Ú
ComplementÚ	FiniteSetÚIntersectionÚIntervalÚUnionÚimagesetÚ
ProductSet)Úsimplify)ÚIndexed)Únumbered_symbols)ÚXFAILÚraisesÚskipÚslowÚSKIPÚ_both_exp_pow)Úverify_numerically)Úcm)Úsolve)Úsolveset_realÚdomain_checkÚsolveset_complexÚlinear_eq_to_matrixÚlinsolveÚ_is_function_class_equationÚinvert_realÚinvert_complexÚ_invert_trig_hyp_realÚsolvesetÚsolve_decompositionÚsubstitutionÚnonlinsolveÚsolvifyÚ_is_finite_with_finite_varsÚ
_transolveÚ_is_exponentialÚ_solve_exponentialÚ_is_logarithmicÚ_is_lambertÚ_solve_logarithmÚ_term_factorsÚ_is_modularÚNonlinearError)ÚaÚbÚcÚdÚeÚfÚgÚhÚiÚjÚkÚlÚmÚnÚqÚrÚtÚwÚxÚyÚzc                 C   s:   t | ƒttfv rtdd„ t| |ƒD ƒƒS | |kp|  |¡S )Nc                 s   ó    | ]
\}}t ||ƒV  qd S ©N)Údumeq©Ú.0r…   r†   © r—   úY/var/www/html/zoom/venv/lib/python3.10/site-packages/sympy/solvers/tests/test_solveset.pyÚ	<genexpr>:   ó   € zdumeq.<locals>.<genexpr>)ÚtypeÚlistÚtupleÚallÚzipÚdummy_eq)r…   r†   r—   r—   r˜   r”   8   s   r”   c                 C   s`   t | ƒ} t |ƒ}t| tƒsJ ‚t|tƒsJ ‚t| ƒt|ƒks J ‚tdd„ t| |ƒD ƒƒs.J ‚dS )z2Test solutions with floats from solveset are closec                 s   r’   r“   r   ©r–   Úv1Úv2r—   r—   r˜   r™   E   rš   z"assert_close_ss.<locals>.<genexpr>N)r   Ú
isinstancerS   Úlenrž   rŸ   )Úsol1Úsol2r—   r—   r˜   Úassert_close_ss>   s    r¨   c                 C   sˆ   t | ƒ} t |ƒ}t| tƒsJ ‚t|tƒsJ ‚t| ƒt|ƒks J ‚t| |ƒD ]\}}t|ƒt|ƒks3J ‚tdd„ t||ƒD ƒƒsAJ ‚q%dS )z5Test solutions with floats from nonlinsolve are closec                 s   r’   r“   r   r¡   r—   r—   r˜   r™   Q   rš   z"assert_close_nl.<locals>.<genexpr>N)r   r¤   rS   r¥   rŸ   rž   )r¦   r§   Ús1Ús2r—   r—   r˜   Úassert_close_nlH   s   þr«   c                     sx  t ddd‰ tjfdd„} ttˆ ƒtˆ ƒˆ | tttƒƒƒfks!J ‚t ddd‰t ddd}tˆ d	 ˆˆ ƒˆ tˆd	 ƒfks?J ‚tˆ d	 ˆˆ ƒˆ tˆd	 ƒfksQJ ‚ttˆ ƒˆˆ ƒˆ ttˆƒƒfkscJ ‚ttd	ˆ  ƒˆˆ ƒˆ ttˆƒd	 ƒfksyJ ‚ttˆ d	 ƒˆˆ ƒˆ ttˆƒd	 ƒfksJ ‚ttˆ ƒd	 ˆˆ ƒˆ | ttˆd	 ƒƒƒfks§J ‚ttˆ ƒd	 ˆˆ ƒˆ ttˆd	 ƒƒfks½J ‚ttˆ ƒˆˆ ƒˆ ttˆƒƒfksÏJ ‚ttd	ˆ  ƒˆˆ ƒˆ ttˆƒd	 ƒfksåJ ‚ttˆ d	 ƒˆˆ ƒˆ ttˆƒd	 ƒfksûJ ‚ttˆ ƒˆˆ ƒˆ tˆˆ ƒfksJ ‚td
ˆ  ˆˆ ƒˆ ttˆƒtd
ƒ ƒfks%J ‚td
tˆ ƒ ˆˆ ƒˆ | tttˆƒtd
ƒ ƒƒƒfksBJ ‚tˆ d
 ˆˆ ƒˆ tt	ˆƒt	ˆƒ ƒfksYJ ‚tˆ tj
 ˆˆ ƒˆ tˆd
 ƒfksmJ ‚tt‡ fdd„ƒ tˆ t ˆˆ ƒˆ tˆdt  ƒfks‹J ‚tˆ t t ˆ ƒˆ tjfksœJ ‚tˆ tdƒ dˆ ƒˆ tdƒfks¯J ‚tˆ d dˆ ƒˆ d tdƒfksÂJ ‚tt‡ ‡fdd„ƒ tˆ d ˆ  ˆˆ ƒˆ d ˆ  tˆƒfksãJ ‚ˆ d ˆ  }tˆd ˆ d ƒ}ttˆ d ˆ  d ƒˆˆ ƒ||fksJ ‚tttˆ ƒˆˆ ƒˆ tˆ tdƒˆkˆtdƒk@ ttt|d
| t tˆƒ ƒtjƒtt|td
 | t tˆƒ ƒtjƒƒƒfƒsIJ ‚ttttˆ ƒƒˆˆ ƒˆ tˆ tdƒˆkˆtdƒk@ ttt|td
| t tˆƒ ƒƒtjƒtt|ttd
 | t tˆƒ ƒƒtjƒƒƒfƒsJ ‚tttˆ ƒˆˆ ƒˆ tˆ tdƒˆkˆtk @ t ˆk ˆtdƒk@ B ttt|d
| t tˆƒ ƒtjƒtt|d
| t tˆƒ t ƒtjƒƒƒfƒsÚJ ‚ttttˆ ƒƒˆˆ ƒˆ tˆ tdƒˆkˆtk @ t ˆk ˆtdƒk@ B ttt|td
| t tˆƒ ƒƒtjƒtt|td
| t tˆƒ t ƒƒtjƒƒƒfƒs*J ‚tttˆ ƒˆˆ ƒˆ tˆ tdƒˆkˆtdƒk@ ttt|d
| t tˆƒ ƒtjƒtt|d
| t tˆƒ ƒtjƒƒƒfƒsiJ ‚ttttˆ ƒƒˆˆ ƒˆ tˆ tdƒˆkˆtdƒk@ ttt|td
| t tˆƒ ƒƒtjƒtt|td
| t tˆƒ ƒƒtjƒƒƒfƒs®J ‚tttˆ ƒˆˆ ƒˆ tˆ tdƒˆkˆtk @ t ˆk ˆtdƒk@ B ttt|d
| t tˆƒ ƒtjƒtt|d
| t tˆƒ ƒtjƒƒƒfƒsöJ ‚ttttˆ ƒƒˆˆ ƒˆ tˆ tdƒˆkˆtk @ t ˆk ˆtdƒk@ B ttt|td
| t tˆƒ ƒƒtjƒtt|td
| t tˆƒ ƒƒtjƒƒƒfƒsDJ ‚ttt ˆ ƒˆˆ ƒˆ tˆ t ˆk ˆtk @ tt||t t!ˆƒ ƒtjƒƒfƒslJ ‚ttt tˆ ƒƒˆˆ ƒˆ tˆ t ˆk ˆtk @ tt|t|t t!ˆƒ ƒƒtjƒƒfƒs˜J ‚ttt"ˆ ƒˆˆ ƒˆ tˆ t ˆk ˆtk @ tt||t t#ˆƒ ƒtjƒƒfƒsÀJ ‚ttt"tˆ ƒƒˆˆ ƒˆ tˆ t ˆk ˆtk @ tt|t|t t#ˆƒ ƒƒtjƒƒfƒsìJ ‚ttt t ˆ ƒƒˆˆ ƒˆ tˆ t$t t ˆ ƒƒˆƒtjƒfƒs
J ‚t ddd‰ tˆ t ˆˆ ƒˆ tˆdt  ƒfks%J ‚t ddd}t ddd}tt%ˆ ƒ|ˆ ƒˆ tt&|ƒƒfksDJ ‚tt%tˆ ƒƒ|ˆ ƒˆ ttt&|ƒƒƒfks[J ‚tt'ˆ ƒ|ˆ ƒˆ t(tt)|ƒ t)|ƒƒtjƒfksvJ ‚tt'ˆ ƒ|d ˆ ƒˆ tt)|d ƒ t)|d ƒƒfks“J ‚tt*ˆ ƒ|ˆ ƒˆ t(tt+|ƒƒtjƒfksªJ ‚tt,ˆ ƒ|d ˆ ƒˆ tt-|d ƒƒfksÁJ ‚tt.ˆ ƒ|ˆ ƒˆ t(tt/|ƒ t/|ƒƒtjƒfksÜJ ‚tt0ˆ ƒ|ˆ ƒˆ tt1|ƒƒfksïJ ‚ttt*tˆ ƒƒ|ˆ ƒˆ tˆ tdƒt+|ƒkt+|ƒtdƒk@ ttt|d
| t tt+|ƒƒ ƒtjƒtt|d
| t tt+|ƒƒ t ƒtjƒƒƒfƒs:J ‚d S )Nr   T©Úrealc                 S   s
   t || ƒS r“   )rT   )r   Úsr—   r—   r˜   ÚirealX   s   
ztest_invert_real.<locals>.irealr   ©ÚpositiverŠ   é   é   c                      s   t ˆ ˆ ˆ ƒS r“   )rk   r—   ©r   r—   r˜   Ú<lambda>u   ó    z"test_invert_real.<locals>.<lambda>é   g      ø?éè  éd   ç      ð?c                      s   t tjˆˆ ƒS r“   )rk   r   ÚOner—   ©r   r   r—   r˜   rµ   }   ó    é   éÿÿÿÿrŒ   Úp)2r   r   ÚRealsrk   r$   r‘   rS   r%   r   r3   ÚHalfr]   Ú
ValueErrorr   r   ÚEmptySetr   r”   rC   rO   rV   rP   r   r<   ÚIntegersrA   r   r:   r?   r8   rB   r;   rD   r=   r@   r9   r   r'   r-   r(   rT   r.   r)   r/   r*   r0   r+   r1   r,   r2   )r¯   rŠ   ÚlhsÚbase_valuesrŒ   rÀ   r—   r¼   r˜   Útest_invert_realT   s  ($$$,,0,$,,&.:.(*"&&.* $þÿ$(þÿ,"$ÿÿÿ,&(ÿÿÿ  þÿ$$þÿ," ÿÿÿ,&$ÿÿÿÿÿ ÿÿÿÿ ÿÿ
ÿ*&.ÿÿ..ÿ&$$(þÿrÈ   c               
   C   s‚  t dƒ} tttƒtdddƒtƒd  ttt| t	| ƒ ƒtdddƒƒtt| t	| ƒƒtdddƒƒƒ¡s3J ‚tt
tƒtddƒtƒtttt tdƒ ƒttdƒtƒƒfksSJ ‚tttƒttj dƒtƒttttjƒ tƒfksmJ ‚tttƒt| tj| d  tjƒtƒttttdƒd ƒ ttdƒd ƒttdƒd	 ƒ ttdƒd	 ƒƒfks¤J ‚tttƒtjtƒttt t d
¡t d
t¡ƒfks¿J ‚d S )NrŠ   éûÿÿÿé
   r·   éýÿÿÿr³   r²   é   é   r   )r   rm   r(   r   rQ   r    rV   rP   r   r.   r*   rU   r   r0   r)   r   rÂ   r/   r+   rW   Ú	Naturals0rS   r1   r,   rÁ   Úopen©rŠ   r—   r—   r˜   Útest_invert_trig_hyp_realÛ   s"   
þÿ
ÿ"DÿÿrÑ   c                   C   s°  t td ttƒtttd ƒfksJ ‚t td ttƒtttd ƒfks$J ‚t td d dtƒttdƒfks6J ‚tt ttƒttƒttttt	dt
 t ttƒ  tttƒƒ ƒtjƒfƒs\J ‚t ttƒttƒttttƒƒfksnJ ‚ttdd„ ƒ ttdd„ ƒ ttdd„ ƒ tt ttƒt	tƒtttttdt t
 t	tdtdƒ ƒ  ƒtjƒtttdt t
 t
 t	tdtdƒ ƒ  ƒtjƒƒfƒsÁJ ‚tt ttƒdt	 tƒtttttdt t
 tdt	 ƒ ƒtjƒtttdt t
 tdt	 ƒ ƒtjƒƒfƒs÷J ‚tt tdt ƒdtƒtttttt
 d t
d	  ƒtjƒfƒsJ ‚tt ttƒdt	 tƒtttttt
 t	tdƒ  ƒtjƒfƒs9J ‚tt ttƒdtƒtttttdt t	 t
 ƒtjƒtttdt t	 t
 t	t
  ƒtjƒƒfƒsjJ ‚tt ttƒdtƒtttttdt t	 t
 t	t
 d  ƒtjƒtttdt t	 t
 dt	 t
 d  ƒtjƒƒfƒs¥J ‚t ttƒdtƒttjfksµJ ‚tt ttƒttƒtt tt!td
ƒt!tdƒ@ ttttt	 t
 t"tƒ ƒtjƒƒfƒsàJ ‚t t#tƒdtƒttjfksðJ ‚tt t#tƒttƒtt tt!td
ƒt!tdƒ@ ttttt	 t
 ttƒ ƒtjƒƒfƒsJ ‚tt t$tƒdtƒtttttdt t	 t
 t	t
 d  ƒtjƒtttdt t	 t
 dt	 t
 d  ƒtjƒƒfƒsVJ ‚d S )Nr²   r·   r   r³   c                   S   s   t dttƒS ©Nr·   )rk   r   r   r—   r—   r—   r˜   rµ   õ   r¶   z%test_invert_complex.<locals>.<lambda>c                   S   s   t tttƒS r“   ©rl   r   r—   r—   r—   r˜   rµ   ö   r¶   c                   S   s   t ttdƒS rÒ   rÓ   r—   r—   r—   r˜   rµ   ÷   r¶   é   r¿   rÌ   )%rl   r   r   rS   r”   r$   rW   r   rŠ   r   r   r   r%   r   r   rÅ   r]   rÃ   rC   rV   rP   r3   r?   r8   rD   r@   r0   r'   r(   r)   rÄ   r}   rO   r   r/   r*   r+   r—   r—   r—   r˜   Útest_invert_complexë   s`   $$$4ÿ$,0þ$$þ ÿ ÿ$þ(,þ  ÿÿ  ÿÿ(,þrÕ   c                   C   sl   t dddtd  d   tdƒdu sJ ‚t td tdƒdu s J ‚t tttƒdu s*J ‚t dttƒdu s4J ‚d S )Nr·   r³   r¿   Fr   T)rf   r   r   r—   r—   r—   r˜   Útest_domain_check  s   (rÖ   c                   C   sF   t dt d ttjƒtjksJ ‚t dt d ttjƒtdƒks!J ‚d S )Nr   r¹   r·   )rn   r   r   rÁ   rÄ   rS   r—   r—   r—   r˜   Útest_issue_11536  s    &r×   c                  C   sœ   t d td  d t d td  d  ddt d  td  td    } |  t ¡}|  t¡}|  t¡}t|||gt ttgƒ}t|ƒdkrJt|ƒdksLJ ‚d S )Nr³   é   é   )r   r   r‘   r	   rq   r¥   )r‚   ÚfxÚfyÚfzÚsolr—   r—   r˜   Útest_issue_17479#  s   H


 rÞ   c                     sÒ   t dƒ\} }}| d |d  d | d |d  d  dd| d  |d  |d    }t|| ƒ}t||ƒ}t||ƒ}t|||g| ||gƒ}|D ]\}}	}
| |||	||
i‰ t‡ fdd„|||fD ƒƒdksfJ ‚qGd S )Núx, y, zr³   c                 3   s    | ]
}|  ˆ ¡ ¡ V  qd S r“   )ÚsubsrY   )r–   Ú_©r€   r—   r˜   r™   <  rš   z#test_issue_18449.<locals>.<genexpr>)r   r   r   )r   r	   rq   r   )r   r   r‘   r‚   rÚ   rÛ   rÜ   rÝ   ÚxsÚysÚzsr—   râ   r˜   Útest_issue_184492  s   H


&þræ   c                  C   sÂ   dt  d tt d ƒd d  } t| t tjƒtdƒksJ ‚tt ƒd d tt ƒd d  dt d   tdƒ } t| t tjƒttjtdtdƒ d ƒd  tjtdtdƒ d ƒd  ƒks_J ‚d S )Nr³   r·   rÍ   rÌ   )r   r3   rn   r   rÁ   rS   rÂ   ©r‚   r—   r—   r˜   Útest_issue_21047F  s    48ÿrè   c                   C   sÞ  t tttƒtƒdu sJ ‚t tttƒd tƒdu sJ ‚t tttƒttƒ tƒdu s*J ‚t tttƒttƒ t tƒdu s<J ‚t tttƒttƒ ttƒ tƒdu sPJ ‚t tttƒttt ƒ ttƒ tƒdu sfJ ‚t tttƒttt ƒ ttƒ tƒdu s|J ‚t ttttƒ d tƒdu sŒJ ‚t tttƒd ttƒ d tƒdu s J ‚t tttƒt tƒdu s®J ‚t tttd ƒtƒdu s¼J ‚t tttd ƒttƒ tƒdu sÎJ ‚t tttƒttƒ tƒdu sÞJ ‚t ttttƒƒttƒ tƒdu sðJ ‚t tttƒtƒdu süJ ‚t tttƒd tƒdu sJ ‚t tttƒttƒ tƒdu sJ ‚t tttƒttƒ t tƒdu s/J ‚t tttƒttƒ ttƒ tƒdu sDJ ‚t tttƒttt ƒ ttƒ tƒdu s[J ‚t tttƒttt ƒ ttƒ tƒdu srJ ‚t ttttƒ d tƒdu sƒJ ‚t tttƒd ttƒ d tƒdu s˜J ‚t tttƒt tƒdu s§J ‚t tttd ƒtƒdu s¶J ‚t tttd ƒttƒ tƒdu sÉJ ‚t tttƒttƒ tƒdu sÚJ ‚t ttttƒƒttƒ tƒdu síJ ‚d S )NTr·   r³   F)	rj   r7   rD   r   rC   r}   r&   r)   r'   r—   r—   r—   r˜   Útest_is_function_class_equationO  s  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
ÿÿ
ÿÿ
ÿÿ
ÿÿ
ÿÿ
ÿÿ
ÿÿ
ÿÿ
ÿÿ
ÿÿ
ÿÿ
ÿÿÿré   c                      sÔ   t tdd„ ƒ tddd‰ tˆ dƒtjksJ ‚tˆ d dƒtˆ ƒks$J ‚tˆ tƒtjks.J ‚tˆ ˆ d ƒtjks:J ‚t t‡ fdd„ƒ tˆ tƒtjksMJ ‚t t‡ fd	d„ƒ t t‡ fd
d„ƒ t t‡ fdd„ƒ d S )Nc                   S   s   t tgtƒS r“   )re   r   r—   r—   r—   r˜   rµ   ‹  r¶   z$test_garbage_input.<locals>.<lambda>r   Tr¬   r·   r³   c                      s   t ˆ gˆ ƒS r“   )rg   r—   r´   r—   r˜   rµ   ’  r¶   c                      s   t ˆ tfˆ ƒS r“   )rn   r   r—   r´   r—   r˜   rµ   •  r½   c                      s   t ˆ d tjƒS rÒ   )rn   r   rÁ   r—   r´   r—   r˜   rµ   –  ó    c                      s   t ˆ d ˆ dƒS ©Nr·   r³   )rn   r—   r´   r—   r˜   rµ   —  rê   )	r]   rÃ   r   re   r   rÄ   rS   r   rg   r—   r—   r´   r˜   Útest_garbage_inputŠ  s   rì   c                  C   sÞ   t tt t ttƒd  tƒttdƒhtt t htj	ƒƒks!J ‚t
ddd} t
ddd}t | t | ttƒd  tƒt| |  tdƒƒksHJ ‚t dt d dttƒ  tƒttd	ƒƒks_J ‚t tttƒ tƒtju smJ ‚d S )
Nr²   ÚanzT)ÚnonzeroÚbbr¬   r³   rÔ   éüÿÿÿ)re   r}   r   r~   r$   rV   r%   rT   r   rÁ   r   rS   rÄ   )rí   rï   r—   r—   r˜   Útest_solve_mulš  s   ÿÿ. rñ   c                   C   sè   t ttƒd tƒttdƒƒksJ ‚t ttƒd tƒttdƒƒks"J ‚t dtd  tƒtƒ ks0J ‚t ddt  tƒtƒ ks>J ‚t ttttt ƒ  tƒtt	j
ttttt ƒ ƒƒks[J ‚t dt d tƒtdtdƒtdƒ  ƒksrJ ‚d S )Nr²   r³   rÊ   r·   rÌ   )re   r$   r   rS   r%   r   r~   r}   rT   r   rÁ   r—   r—   r—   r˜   Útest_solve_invert¥  s   ""
ÿ2rò   c               
   C   sÀ   t tttƒtj tƒtttt	t
d t	 t
d  ƒtjƒttt	t
d t	 t
d d  ƒtjƒƒƒs2J ‚tttƒd tƒ 	d¡} tttƒtj tƒ 	d¡}dd„ | |fD ƒ}t |Ž s^J | |fƒ‚d S )Nr³   rÍ   rÌ   ç      à?c                 S   s    g | ]}|  d d„ dd„ ¡‘qS )c                 S   s   | j S r“   )Úis_Floatr´   r—   r—   r˜   rµ   »  s    z-test_issue_25768.<locals>.<listcomp>.<lambda>c                 S   s   t | ƒ d¡S )Nr¸   )r   Úlimit_denominatorr´   r—   r—   r˜   rµ   ¼  r½   )Úreplace©r–   r…   r—   r—   r˜   Ú
<listcomp>º  s    þþz$test_issue_25768.<locals>.<listcomp>)r”   re   rC   r   r   rÂ   rV   rP   r   rŠ   r   rÅ   )Ún1Ún2Úeqr—   r—   r˜   Útest_issue_25768³  s    $
þþrü   c                   C   s”   t ttƒtj tƒtttjƒƒksJ ‚t ttƒd tƒttdƒƒks$J ‚t ttƒtj tƒtt	tjƒƒks7J ‚t t	tƒd tƒttdƒƒksHJ ‚d S ©Nr³   )
re   rE   r   r   rÂ   rS   rH   rF   r»   rG   r—   r—   r—   r˜   Útest_errorinversesÀ  s   ÿ
ÿÿ&rþ   c                  C   sÎ  t ddd} t ddd}td|  d | ƒttddƒƒksJ ‚t| d d | ƒttj tjƒks1J ‚t| |d  | ƒt|d ƒksBJ ‚t| d d|   d	 | ƒtd
dtj  td	ƒd
dtj  ƒkscJ ‚tt| ƒd | ƒtdƒksrJ ‚tt| ƒd | ƒtd	ƒksJ ‚t| tdd	ƒ d | ƒtdƒks“J ‚t| tddƒ d | ƒtdƒks¥J ‚tt| d | d  d | ƒƒdks¸J ‚ttd
| d  d	| d   d|   d | ƒƒdksÓJ ‚t| d | d	  t	 | ƒtj
u såJ ‚d S )Nr   Tr¬   r   r²   r³   r·   é   rØ   éþÿÿÿé   é   rÌ   rÍ   r   )r   re   rS   r   r   r»   rÂ   r3   r¥   r   rÄ   r¼   r—   r—   r˜   Útest_solve_polynomialÊ  s"   $&"
ý$$&6(r  c                  C   sH  t d dt d   dt d   dt   d } tt| t ƒƒ}|D ]	}|jtks(J ‚qtttt d dt d   d t ƒƒd d	d
tt d dt d   d dƒ ¡ ksSJ ‚ttt d dt   d t ƒƒ}tdd„ |D ƒƒrqt|ƒdkssJ ‚t d dt d   dt d   dt   d } tt| t ƒƒ}|D ]	}|jtks›J ‚q’t d dt d   dt d   t	ddƒ }t|t ƒt
t|d dd ¡ Ž ksÄJ ‚t t d d  t d  t d t  d  }t|t ƒt
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ƒƒ	ks"J ‚d S )NrÌ   rÿ   r²   r³   rÊ   rÙ   é   r   F)ÚexponentrÍ   c                 s   s    | ]}t |tƒV  qd S r“   )r¤   rM   r÷   r—   r—   r˜   r™   ñ  ó   € z&test_return_root_of.<locals>.<genexpr>rØ   ÚZZ©Údomainr·   r¿   )r   rœ   rg   ÚfuncrM   r   rŠ   rž   r¥   r   rS   rL   Ú	all_roots)r‚   r®   ÚrootrÝ   rû   r—   r—   r˜   Útest_return_root_ofà  s:   ,&	ÿ ÿ",*ÿ(ûÿr  c                   C   s,  t tdt d ƒd t tƒttj tdƒƒksJ ‚t ttd ƒt d tƒtdƒks-J ‚t ttd ƒd tƒtdƒks>J ‚t ttƒd d tƒtdƒksOJ ‚t ttd	 ƒtƒtd
ƒks^J ‚t ttd ƒtƒtdƒksmJ ‚t ttd	 t ƒtƒtd	ƒks~J ‚t ttd	 t ƒtddƒ tƒtdƒks”J ‚d S )NrÌ   rÍ   r³   r·   r  rÊ   r  é1   r²   r   rØ   )re   r3   r   rS   r   r»   r   r—   r—   r—   r˜   Útest_solveset_sqrt_1  s   ÿ&"""ÿr  c                     sÖ  t ddd‰t ddd} ttdˆ d ƒtˆd ƒ d ˆƒttdƒtd	ƒƒks*J ‚ttˆd
 ƒd tdˆ ƒ ˆƒtdƒksAJ ‚ttdˆ tˆd d ƒ ƒd
 ˆƒtdƒksZJ ‚ˆd ˆd dˆd   ˆ tddƒ  ‰ tˆ ˆƒttddƒtddƒƒksJ ‚tdˆ d ƒtˆd ƒ tˆd ƒ ‰ tˆ ˆƒtdƒks J ‚tˆd ƒtdˆ d ƒ dtˆd ƒ  ‰ tˆ ˆƒtdƒksÁJ ‚tˆƒtˆd
 ƒ d ‰ tˆ ˆƒtdƒksØJ ‚tˆd ƒtˆƒ d ‰ tˆ ˆƒtdƒksïJ ‚tdˆd  d
 ƒdˆ  ‰ tˆ ˆƒttdƒ tdƒƒksJ ‚tdˆd  d ƒdˆ d  ‰ tˆ ˆƒtdƒks+J ‚ttˆd ƒtˆƒ d ˆƒtƒ ks@J ‚dˆ d tddƒ d ‰ tˆ ˆƒtdƒksYJ ‚ttˆƒttˆƒƒ d ˆƒttddƒtdƒd  d ƒkszJ ‚tˆƒtˆd ƒ ttˆƒƒ ‰ tˆ ˆƒtƒ ks•J ‚ˆd d tˆƒd d  ‰ tˆ ˆƒtddƒks°J ‚tˆƒtˆd ƒ tdˆ ƒ dtdƒ d  ‰ tˆ ˆƒ}tdƒ}tddƒ}t‡ ‡fdd„||fD ƒƒrýt|ƒdkrýdd„ |D ƒdd„ ||fD ƒksÿJ ‚ttˆƒˆtddƒ  ˆtddƒ  ˆƒtdƒksJ ‚tˆtˆd d ƒ ˆƒtdƒks/J ‚ˆ| d  | d td| d  ƒ  ‰ tˆ ˆƒt| d ƒksOJ ‚tddˆ tddƒ  d ˆƒttddƒƒksiJ ‚d S )Nr   Tr¬   r   r³   r·   rØ   rÌ   é   r  r²   éúÿÿÿé   r¿   é	   r   é   r  rÔ   rð   rÍ   zÅ-1484/375 - 4*(-S(1)/2 + sqrt(3)*I/2)*(-12459439/52734375 +
    114*sqrt(12657)/78125)**(S(1)/3) - 172564/(140625*(-S(1)/2 +
    sqrt(3)*I/2)*(-12459439/52734375 + 114*sqrt(12657)/78125)**(S(1)/3))c                 3   s(    | ]}t ˆ  ˆ|¡ ¡ ƒd k V  qdS )g»½×Ùß|Û=N)Úabsrà   rŠ   r÷   ©rû   r   r—   r˜   r™   J  s   €& z'test_solveset_sqrt_2.<locals>.<genexpr>c                 S   ó   h | ]}|j d d’qS ©T)ÚchoprÐ   r÷   r—   r—   r˜   Ú	<setcomp>L  ó    z'test_solveset_sqrt_2.<locals>.<setcomp>c                 S   r  r  rÐ   r÷   r—   r—   r˜   r  M  r  i´~ûÿi©æ  )r   re   r3   rS   r   r   rž   r¥   )r   ÚansÚraÚrbr—   r  r˜   Útest_solveset_sqrt_2  sr   $ÿ ÿ$ÿ*$(,$ *
ÿ 0


ÿÿÿ
ÿ($ÿr  c                  C   sF   t d dt d   tddƒ d t  } t| t ƒttddƒƒks!J ‚d S )Nr²   r³   r·   )r   r   re   rS   ©rû   r—   r—   r˜   Útest_solve_sqrt_fail\  s   & r!  c                  C   s  t dƒ} tdƒ|  td| d  ƒ | d tdƒtd| d  ƒ d   }t|| ƒ}tddƒdtdƒ ttdtdƒ d	 ƒd ƒ d  tdƒ ttdtdƒ d	 ƒd ƒ d d
tdtddƒtdƒt d  td	dƒtdƒt d  tddƒ   ƒ d  tdƒttdtdƒ d	 ƒd ƒ d  tddƒ ttdƒ ttdtdƒ d	 ƒd ƒ d tdƒttdtdƒ d	 ƒd ƒ d  d
t	dtddƒtdƒt d  td	dƒtdƒt d  tddƒ   ƒ d    g}d
tdtddƒtdƒt d  td	dƒtdƒt d  tddƒ   ƒ d tdƒttdtdƒ d	 ƒd ƒ d  tdƒttdtdƒ d	 ƒd ƒ d  tddƒ td
t	dtddƒtdƒt d  td	dƒtdƒt d  tddƒ   ƒ d tdƒttdtdƒ d	 ƒd ƒ d  tdƒttdtdƒ d	 ƒd ƒ d    g}t
|Ž }t| t|dƒt
|Ž ƒ}||dh |dh B ks¯J ‚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t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  ƒ dƒtjƒ}t|tƒ|ks€J ‚d S )NÚRr³   r·   rÌ   r²   rØ   rÊ   éo   éû   é(   r¿   r  r  é   r   rÔ   )r   r3   rg   r   r?   r=   r    r   rC   r   rS   rO   r   r‰   r‹   r   rÂ   rÁ   re   )r"  rû   rÝ   ÚfsetÚcsetÚfsÚcsÚunsolved_objectr—   r—   r˜   Útest_solve_sqrt_3d  s†   @
4(Lÿ&þþ*&ÿLþýÿL&ÿ&ÿþN&ÿ&þý8"ÿÿÿÿ"ÿÿÿÿÿ,V*ÿÿÿÿþþr,  c                	   C   sà   t td d d t tƒttdttƒ ƒtdttƒ ƒ tdttƒ ƒtdttƒ ƒ ƒks0J ‚t ttdtt    tƒttt d t ƒtdt ƒ ksOJ ‚t ttt tt   tƒtt t tt  ƒtt ƒ ksnJ ‚d S )Nr³   r·   r¿   )rg   r   r}   rS   r3   r   r~   r—   r—   r—   r˜   Ú$test_solve_polynomial_symbolic_param†  s    ÿÿÿÿr-  c                   C   sÀ   t dt d tƒttj ƒksJ ‚t dttƒ d tƒtdƒks"J ‚t tddt   tƒtdƒks3J ‚t dt td  d tƒtdƒksFJ ‚t td dt   t¡tƒttjtdƒƒks^J ‚d S )Nr·   r   rÌ   r³   r  é   )re   r   rS   r   r»   r$   r	   ÚZeror—   r—   r—   r˜   Útest_solve_rational”  s   """&ÿr0  c                   C   s    t tdƒd tƒtju sJ ‚d S rÒ   )re   r3   r   r   rÄ   r—   r—   r—   r˜   Útest_solveset_real_gen_is_pow  ó    r1  c                   C   s  t dtt  ƒtju sJ ‚t tt tƒtju sJ ‚t tt t tƒtju s'J ‚tdtƒtju s1J ‚tttƒtƒtju s=J ‚ttd d tƒtju sKJ ‚tdt ttƒ tƒtju s[J ‚tdt tƒtju sgJ ‚tdt  dt d  ddt   tƒtju s€J ‚d S )Nr·   rØ   r³   rË   )	rn   r   r   r   rÄ   re   r$   r}   r3   r—   r—   r—   r˜   Útest_no_sol¡  s    &ÿr3  c                   C   sj   t dtƒtjks
J ‚tdttddƒƒtddƒksJ ‚t td  dt  td d  d tƒtjks3J ‚d S )Nr   r·   r³   )re   r   r   rÁ   rn   rU   r—   r—   r—   r˜   Útest_sol_zero_real®  s    6r4  c                   C   sP   t ttd  d d tƒtju sJ ‚t td ddtd    tƒtju s&J ‚d S )Nr·   r²   r   )re   r   r   rÄ   r—   r—   r—   r˜   Ú test_no_sol_rational_extragenous´  s   $,r5  c                   C   s¸   t ttƒd tƒtdƒksJ ‚t ttƒd tƒtdƒksJ ‚t ttddƒ d tƒtdƒks0J ‚t ttddƒ d tƒtdƒksBJ ‚t tttjd  d  tƒttjtdƒƒksZJ ‚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)
    r·   r³   rØ   r  r²   r  N)re   r3   r   rS   r   r   r»   r/  r—   r—   r—   r˜   Útest_solve_polynomial_cv_1a¹  s   $$ÿr6  c                  C   s|   t ddd} t ddd}t| |d  |d td|d  ƒ  | ƒt|d ƒks)J ‚td|  | d  d | ƒtdƒks<J ‚dS )	z)Test solveset_real for rational functionsr   Tr¬   r   r²   r³   r·   N)r   re   r3   rS   r¼   r—   r—   r˜   Útest_solveset_real_rationalÆ  s   (
ÿ*r7  c                   C   s6   t ttd td  ƒtƒttdƒtdƒ ƒksJ ‚d S rë   )re   r%   r   rS   r3   r—   r—   r—   r˜   Útest_solveset_real_logÐ  s   ÿr8  c                   C   s<   t ddtd  dt   d tƒttddƒtjƒksJ ‚d S )NrØ   r³   rÔ   rË   )re   r   rS   r   r   rÂ   r—   r—   r—   r˜   Útest_poly_gensÕ  s    ÿr9  c                  C   s`  t dƒ} ttdd„ ƒ tttƒ|  ttjƒ t	tt
| tdtƒƒ|  | hƒ¡s(J ‚tttƒd tƒtddƒks8J ‚tttƒd tƒtju sFJ ‚tttd ƒdttd ƒ  tƒtdd	ƒks^J ‚tdttƒ ttd ƒ tƒtd
tddƒƒkswJ ‚t	ttt
ttdtƒƒt
tt tdtƒƒt
tt tdtƒƒƒtt t d t t d tt d tt d ƒƒ}tttd ƒt ƒt }t|dtƒd |ksÆJ ‚tdtdi}| |¡}| |¡D ]
}| t|¡ràJ ‚qÖttttttƒƒdƒttjdtttdtƒtttt| d|  t dt d  ƒtjƒtt dƒƒttt| d|  t td  ƒtjƒtdtƒƒƒƒƒƒs.J ‚d S )NrŠ   c                   S   s   t ttƒd tƒS rÒ   ©rn   r   r   r—   r—   r—   r˜   rµ   Ü  ó    z test_solve_abs.<locals>.<lambda>r   r³   r   r²   r·   r  r¿   r  )r   r]   rÃ   rn   r   r   r   rÁ   r    rO   rN   rU   r   re   rS   rÄ   r   rI   r~   r}   rk   rà   r”   r   rC   rV   rT   rP   r   r   rÅ   )rŠ   rÝ   rû   ÚrepsÚeqabÚsir—   r—   r˜   Útest_solve_absÚ  sL   ÿ  ÿÿý0ú
 &
ÿ"ÿýÿr?  c                   C   s   t tttƒd dttƒ  d tƒtttdt t td  ƒtj	ƒƒs%J ‚t tt
tƒd dt
tƒ  d tƒtttdt t ƒtj	ƒƒsFJ ‚d S ©Nr³   r·   )r”   rn   rC   r   rP   r   rŠ   r   r   rÅ   r?   r—   r—   r—   r˜   Útest_issue_9824û  s   JFrA  c                   C   s6   t ttd td  ƒtddƒktƒtddƒksJ ‚d S )Nr·   rÌ   r²   r¿   r³   )re   r   r   r   rU   r—   r—   r—   r˜   Útest_issue_9565   ó   6rB  c                  C   sD   t dtd  ƒd dk} t| tƒtt dd¡t dd¡ƒks J ‚d S )Nr·   r   r³   )r  r   re   rV   rU   rÏ   r   r—   r—   r˜   Útest_issue_10069  s   
ÿrD  c                  C   s‚   t ddd\} }tt| d |d  ƒd | ƒtt|d d ƒ t|d d ƒƒks+J ‚tt| d |d  ƒd | ƒtjks?J ‚d S )Nza bTr¬   r³   r²   r  )r   re   r3   rS   r   rÄ   ©r}   r~   r—   r—   r˜   Útest_real_imag_splitting
  s   "ÿÿrF  c                   C   s.   t dt ddt   tƒtdt ƒksJ ‚d S rë   )re   r   rc   rS   r—   r—   r—   r˜   Ú
test_units  s   .rG  c                  C   sœ   t ddd} tttƒ|  tƒtt| ƒƒksJ ‚tttƒtt ƒ d tƒtttdƒ d ƒttdƒd ƒƒks9J ‚tttƒtt ƒ |  tƒtjksLJ ‚d S )Nr   Tr°   rØ   r²   r³   )	r   re   r$   r   rS   r%   r3   r   rÄ   ©r   r—   r—   r˜   Útest_solve_only_exp_1  s   ""ÿ*rI  c                   C   s0   t ttdƒtd  tƒtdtdƒ ƒksJ ‚d S ©Nr³   r²   )re   r>   r   r   rS   r3   r—   r—   r—   r˜   Ú
test_atan2  s   0rK  c                  C   s6  t td ttdƒfdt dfƒd } tt| tƒƒttddƒƒks"J ‚t td dtd kfdt dtd kfƒ}tddd}t|| tƒt| d |d ƒksPJ ‚t td d tdkfd	ƒ}t|ttj	d
t
tdƒtt dddƒƒkstJ ‚tt td tdkftdfƒt ttj	ƒtt dƒksJ ‚tt td tttƒftdfƒtƒtdƒks§J ‚t dtdkfd	ƒ}t|dkttj	ƒt dt¡ksÁJ ‚ddlm} |ƒ }t|ttddƒd
tddƒksÛJ ‚t dttdƒftd ttƒ dfƒ}t dtttƒftt ttƒ dfƒ}t|ttj	d
tdƒksJ ‚t|ƒttƒksJ ‚d S )Nr³   Tr²   r¿   rÌ   r   r   r°   ©r   Tr  r·   rÊ   )ÚBooleanTruerË   )r6   r   r   Úsetre   rS   r   rn   r   rÁ   rV   rU   r   r   r   rÏ   Úsympy.logic.boolalgrM  r   r   r   rC   )rû   Úabsxm3r   r‚   rƒ   rM  r—   r—   r˜   Útest_piecewise_solveset$  s2   $ þ&."ÿ
þ.""$$rQ  c                
   C   sT  t ttd  tt  t tƒtt dt  tdt t td  ƒdt   t dt  tdt t td  ƒdt   ƒks@J ‚t ttd  tƒtttddƒ  d t	tdƒ ttddƒ  d  ttddƒ ttddƒ  d t	tdƒ ttddƒ  d  ƒks„J ‚t tdt  d tƒtt
jt	tdƒ d  t
jt	tdƒ d  ƒks¨J ‚d S )Nr³   rð   r²   r·   )rg   r}   r   r~   r   rS   r3   r   r   r   r   rÂ   r—   r—   r—   r˜   Ú test_solveset_complex_polynomialF  s   .,ÿÿ00
ý,ÿrR  c                   C   s   t dtƒtju s
J ‚d S ©Nr   )rg   r   r   Ú	Complexesr—   r—   r—   r˜   Útest_sol_zero_complexT  ó   rU  c                   C   s¾   t td tt  td  tƒtdtƒksJ ‚t ttd  td tdtd  ƒ  tƒttd ƒks3J ‚t td  t tƒttdƒ d tdƒt d  tdƒd tdƒt d  ƒks]J ‚d S ©Nr·   r²   r³   )rg   r   r   rS   r   r3   r—   r—   r—   r˜   Útest_solveset_complex_rationalX  s   ÿ(
ÿ:ÿrX  c                  C   s¸   t dƒ td dtd   dtd   dt  d } t| tƒ}|D ]}|  t| ¡ ¡ ¡ }t|d	ƒs4J ‚q!td d
t  d } t| tƒ}|D ]}|  t| ¡ ¡ ¡ }t|d	ƒsYJ ‚qFd S )NzThis test is too slowrÌ   én   r²   é7   r³   i	  iÓ  r   rÿ   r  )r^   r   rg   rà   rŠ   Útn)r‚   r®   r  Úresr—   r—   r˜   Útest_solve_quinticsb  s   ,

þr]  c                	   C   sÈ   t tttƒd tƒttttd t t ƒt	j
ƒƒsJ ‚t tttƒt tƒttttdt t td   ƒt	j
ƒƒs:J ‚tdttƒ tƒt	jksHJ ‚t tttƒ t¡tƒttttt t ƒt	j
ƒƒsbJ ‚d S rë   )r”   rg   r$   r   rW   r   rŠ   r   r   r   rÅ   rÄ   r'   Úrewriter—   r—   r—   r˜   Útest_solveset_complex_expq  s   ÿ$ÿÿr_  c                   C   sD  t tdt dƒttjƒtdƒksJ ‚t tdt  dƒttjƒtjks$J ‚t tdt dƒttjƒtjks5J ‚t tdtd  dƒttjƒtd	ƒksIJ ‚t tdtd	  d
ƒttjƒtjks\J ‚t tdtd	  dƒttjƒtdƒkspJ ‚t tdt tƒttjƒttjtt	tƒt	dƒ ƒƒksŒJ ‚t
ddt  d dtƒttdƒfks J ‚d S )Nr   rØ   r³   rË   r  rÉ   r·   iq  r²   éðÿÿÿlûÿÿÿx¿pÂEìA é*   r  r   )rn   r   r   r   rÁ   rS   rÄ   r   rT   r%   rk   r—   r—   r—   r˜   Útest_solveset_real_exp{  s   $$"(&(8,rb  c                   C   sh   t ttƒtƒtdƒksJ ‚t dttdtd   ƒ tƒttt t ƒ d tt t ƒd ƒks2J ‚d S )Nr·   rØ   r³   )rg   r%   r   rS   r}   r3   r   r—   r—   r—   r˜   Útest_solve_complex_log‡  s   &ÿrc  c                   C   s°   t tdt d ƒd t tƒttj tdƒƒksJ ‚t tdt d ƒddt   t tƒttdƒ ddt  ƒks;J ‚t dt dtttƒ   tƒttjdtd  ƒksVJ ‚d S )NrÌ   rÍ   r³   r²   rØ   r·   )	rg   r3   r   rS   r   r»   r   r}   r/  r—   r—   r—   r˜   Útest_solve_complex_sqrt  s   ÿ$ÿÿrd  c               	   C   sV   t ttƒ t¡tƒ} t| tttt	t ƒt
jƒtttt	t t	d  ƒt
jƒ ƒs)J ‚d S rý   )rg   rD   r   r^  r$   r”   rW   r   rŠ   r   r   rÅ   )r®   r—   r—   r˜   Útest_solveset_complex_tan–  s   ÿre  c                   C   s
  t tttƒtƒttttdt t ƒt	j
ƒtttdt t t ƒt	j
ƒƒƒs'J ‚t tttƒd tƒtttdt t td  ƒt	j
ƒƒsDJ ‚t tttƒtƒttttdt t td  ƒt	j
ƒtttdt t ttddƒ  ƒt	j
ƒƒƒstJ ‚t tttƒttƒ tƒttttdt t ttddƒ  ƒt	j
ƒtttdt t ttddƒ  ƒt	j
ƒƒƒs«J ‚tttƒd ttƒd  tƒt	jks¿J ‚t tttƒt	j tƒttttdt t ttddƒ  ƒt	j
ƒtttdt t td  ƒt	j
ƒƒƒsòJ ‚t tttt ƒttƒ tt	jdttt	dƒttƒkttƒt	dƒk@ ttttdt t t tttƒƒ ƒt	j
ƒtttdt t t tttƒƒ t ƒt	j
ƒƒƒƒsEJ ‚t ttdt ƒttƒ tdt ƒttƒ  d tƒttttt tddƒ td	  ƒt	j
ƒƒsvJ ‚t tdttƒ ttƒ d tƒttttdt t ttdƒtdtd
ƒ ƒ dtd
ƒ  ƒ t ƒt	j
ƒtttdt t ttdƒtdtd
ƒ ƒ dtd
ƒ  ƒ t ƒt	j
ƒƒƒsÐJ ‚t ttdt ƒtdt ƒ d tƒttttt ƒt	j
ƒƒsðJ ‚t tttd ƒtddƒ ƒttttdt t dtt	dƒd ƒ  dt  ƒt	j
ƒtttdt t dtt	dƒd ƒ  dt  ƒt	j
ƒƒƒs8J ‚t tttd ƒttd ƒ ƒttttdt t dt d  ƒt	j
ƒtttdt t dt d  ƒt	j
ƒtttdt t dt d  ƒt	j
ƒtttdt t dt d  ƒt	j
ƒtttdt t dt d  ƒt	j
ƒtttdt t dt d  ƒt	j
ƒƒƒs¹J ‚t tttdƒt d ƒd ƒttttdtdƒ dt t tdƒ  d ƒt	j
ƒtttdtdƒ dt t tdƒ  d ƒt	j
ƒƒƒsþJ ‚t ttttt ƒttd t ƒ ƒƒttttdt d ƒt	j
ƒtttdt d ƒt	j
ƒtttdt tddƒ ƒt	j
ƒtttdt tddƒ ƒt	j
ƒtttdt tddƒ ƒt	j
ƒtttdt tddƒ ƒt	j
ƒƒƒskJ ‚t ttdt ƒƒttttdt t d td  ƒt	j
ƒtttdt t d td	  ƒt	j
ƒƒƒsžJ ‚t ttdt ƒtdt ƒ tt	jƒtttttt d td  ƒt	j
ƒttttt d dt d  ƒt	j
ƒttttt d dt d  ƒt	j
ƒttttt d dt d  ƒt	j
ƒttttt d dt d  ƒt	j
ƒttttt d td  ƒt	j
ƒƒƒsJ ‚t tdttƒ tdt ƒ d tƒttttdt t dttddtddƒ  ddtdƒ  tddƒ  ddtddƒ   dddtdƒ  tddƒ   ƒdddtdƒ  tdd	ƒ   ƒ  ƒt	j
ƒtttdt t dttddtddƒ  ddtdƒ  tddƒ  ddtddƒ   dddtdƒ  tddƒ   ƒdddtdƒ  tdd	ƒ   ƒ  dt  ƒt	j
ƒƒƒsØJ ‚t ttttd t ƒt	j tt	jƒƒttttdt d ƒt	j
ƒtttdt d ƒt	j
ƒƒƒs	J ‚d S )Nr³   r·   r²   rØ   r  rÌ   r  r¿   rÍ   r  rÊ   rÙ   rÿ   r&  é-   éK   éi   rÉ   é   r  é   rÔ   r  r  r   éC   é9   é´   ih  é–   )r”   re   rC   r   rV   rW   r   rŠ   r   r   rÅ   r?   r   rÄ   rg   rÂ   rn   r   r}   rÁ   rO   rP   r<   rD   r=   r3   rB   r;   rY   r@   r—   r—   r—   r˜   Útest_solve_trigœ  s  ÿÿ ÿ"&ÿÿ(&ÿÿ(( ÿÿ $(,þ
ÿ2&
ÿ (
ÿÿÿ(
ÿÿÿý"
ÿ44þ$$$$$$ú00þ&ú$$þ$ $$$$ ú"
*
ÿÿÿ
ÿÿÿ
þþ(
ÿÿÿ
ÿÿÿþýýý
ÿ&
þro  c                  C   s|  t dƒ} ttdt d ƒtdƒd  tƒ ttt| | t	 tdƒd  dt	 d  ƒtj
ƒtt| | t	 tdƒd  dt	 d  ƒtj
ƒƒ¡sGJ ‚ttdt d ƒtdƒd  tƒ ttt| | t	 tdƒd  dt	 d  ƒtj
ƒtt| | t	 tdƒd  dt	 d  ƒtj
ƒƒ¡sŠJ ‚tttƒtt	d ƒ tƒ tt| | t	 t	d  ƒtj
ƒ¡s©J ‚tttƒtt	d ƒ tƒ tt| | t	 t	d  ƒtj
ƒ¡sÈJ ‚tdtdt ƒ d	 tƒtttd	ƒd ƒ d ttd	ƒd ƒd ƒksíJ ‚tdtdt ƒ d	 tƒ ttt| | t t	 ttd	ƒd ƒd  ƒtj
ƒtt| | t t	 ttd	ƒd ƒd  ƒtj
ƒƒ¡s-J ‚tttd ƒd tƒttdƒd ƒksCJ ‚tttd ƒd tƒ ttt| d|  t t	 tdƒ d ƒtj
ƒtt| d|  t t	 tdƒ d tt	  ƒtj
ƒƒ¡sJ ‚ttttƒƒtt	d ƒ tƒ ttt| td|  t	 t	d  ƒƒtj
ƒtt| td|  t	 d
t	 d  ƒƒtj
ƒƒ¡s½J ‚ttttƒƒtt	d ƒ ttddƒƒttd
t	 d ƒtdt	 d ƒƒksäJ ‚tttd d ƒd tƒttdtdƒ ƒ tdtdƒ ƒƒksJ ‚tttƒd tƒtjksJ ‚tttƒd tƒtjks$J ‚tttƒtƒtjks1J ‚tttƒtƒtjks>J ‚tttƒd tƒtjksMJ ‚tttƒtƒtjksZJ ‚tttƒd tƒtjksiJ ‚tttƒtƒtjksvJ ‚tttƒd tƒtjks…J ‚tttƒdƒtjks’J ‚tttƒdƒtjksŸJ ‚tttƒdƒtjks¬J ‚tttƒdƒtjks¹J ‚ttttƒƒd tƒttdƒ tdƒƒksÑJ ‚tttd d ƒt dƒ tƒttt!t dƒƒd ƒ tt!t dƒƒd ƒƒksùJ ‚ttt"tƒƒd tƒtt t#dƒ ƒƒksJ ‚ttt tƒƒd tƒtjks!J ‚tttƒtd  tƒ ttt| dt t	 |  d	t t	 d  ƒtj
ƒtt| dt t	 |  tt	 d  ƒtj
ƒƒ¡s]J ‚tttd ƒt$ddƒ tƒ ttt| d|  t t	 dttdƒd ƒ  ƒtj
ƒtt| d|  t t	 dttdƒd ƒ  dt t	  ƒtj
ƒƒ¡s¨J ‚tttdƒt d ƒd	 tƒ ttt| dtdƒ d|  t t	 t%dƒ  d ƒtj
ƒtt| dtdƒ d|  t t	 t%dƒ  d ƒtj
ƒƒ¡sòJ ‚ttdt ƒtƒ ttt| d|  t t	 d tt	 d  ƒtj
ƒtt| d|  t t	 d tt	 d  ƒtj
ƒƒ¡s.J ‚td	 dt  d  &ttt'ƒ¡}t|t'tj(ƒ ttt| | t t	 t#t)td	 dt  d dƒƒ ƒtj
ƒtt| | t t	 t#t)td	 dt  d dƒƒ ƒtj
ƒtt| | t t	 t#t)td	 dt  d dƒƒ ƒtj
ƒtt| | t t	 t#t)td	 dt  d dƒƒ ƒtj
ƒtt| | t t	 t#t)td	 dt  d dƒƒ ƒtj
ƒƒ¡sÓJ ‚t|t'tj*ƒtt#t)td	 dt  d dƒƒt#t)td	 dt  d dƒƒƒksüJ ‚ttdƒd  td   +¡  &tttƒ¡}t|ttj(ƒ ttt| d|  t	 t,dƒ ƒtj
ƒtt| d|  t	 t,dƒ ƒtj
ƒtt| d|  t	 t	d  ƒtj
ƒtt| d|  t	 dt	 d  ƒtj
ƒƒ¡s`J ‚t|ttj*ƒ ttt| d|  t	 t	d  ƒtj
ƒtt| d|  t	 dt	 d  ƒtj
ƒƒ¡sJ ‚tdttdƒt d ƒd  dttdƒt d ƒ  ƒ ttt| tdƒd|  t	 d t-tƒ  d ƒtj
ƒtt| tdƒd|  t	 d t-tƒ  d ƒtj
ƒtt| tdƒd|  t	 d t-t ƒ  d ƒtj
ƒtt| tdƒd|  t	 d t-t ƒ  d ƒtj
ƒƒ¡sJ ‚t.ttdt ƒtdƒd  d ttddƒƒtdddt	  ddt	  ƒƒs<J ‚d S )NrŠ   r³   r²   r·   r  r  r  rÊ   rÌ   é   é   r¿   r   é÷ÿÿÿrÍ   rØ   rÙ   rÉ   r  rj  r   ri  g…ëQ¸	@gƒÀÊ¡E¶@g|º^z¯ÏÙ?gœŠçšÕaÔ?gœŠçšÕaä?)/r   re   rC   r   r   r    rV   rP   r   r   rÅ   rg   rD   r(   rS   r.   r   r'   r-   r?   rn   rU   r3   rÄ   rB   rA   r*   r+   r)   r,   r  r2   r$   r/   r%   r0   r   r1   rà   r‘   rT  rM   rÁ   Úexpandr8   r;   r   )rŠ   rû   r—   r—   r˜   Ú test_solve_trig_hyp_by_inversionù  sÖ   $,,
þ$,,
þÿÿ&
ÿ,,þ
ÿ(0þ $(þ$ 
ÿÿ0&ÿ.",(þ0<þ 44þ,,þ 66666û8ÿ(   $ü $þ:0022ü*
ÿÿrt  c                  C   s”  t ttƒttjƒtdƒksJ ‚t ttƒttjƒ tt	t
tdt t t ƒtjƒt	t
tdt t t tt  ƒtjƒƒ¡s>J ‚t ttt ƒttjƒ tt	t
tdt t t t ƒtjƒt	t
tdt ƒtjƒƒ¡siJ ‚t ttt ƒtƒ tt	t
tdt t t t ƒtjƒt	t
tdt ƒtjƒƒ¡s’J ‚t ttdt dt  ƒ tƒ t	t
ttt d dt d  t ƒtjƒ¡s¹J ‚tt tdt ƒd ttddt ƒƒtddt ddt  dt ƒƒsÜJ ‚tt	t
ttt d ƒtjƒt	t
ttt d ƒtjƒƒ} t tdt ƒd ttjƒ}| | t¡ ¡ t¡}t|| ƒsJ ‚t tdt ƒd ttjƒ}| | t¡ ¡ t¡}t|| ƒs7J ‚t ttƒtdƒ ttdtd ƒƒtttdƒƒƒksSJ ‚t ttƒt ttdtd ƒƒtttƒƒkskJ ‚t ttƒt ttjƒ tttd	ƒtkttd
ƒk@ tt	t
tdt t ttƒ ƒtjƒt	t
tdt t ttƒ ƒtjƒƒƒ¡s«J ‚t tttƒƒttdd
ddƒƒ tt t	t
tt!dt t ƒƒtjƒt "dd
¡ƒt t	t
tt!dt t t ƒƒtjƒt "dd
¡ƒƒ¡síJ ‚t ttƒtd
ƒ ttjƒ tt	t
tdt t d
 ƒtjƒt	t
tdt t d
 t ƒtjƒƒ¡sJ ‚t ttƒtdƒd  ttjƒ tt	t
tdt t t#tdƒd ƒ ƒtjƒt	t
tdt t t#tdƒd ƒ t ƒtjƒƒ¡s_J ‚t ttƒt$dƒ ttjƒtt%t$dƒƒƒkswJ ‚t t&ttƒtƒttjd ttt' tk tt'k @ t	t
ttt ttƒ ƒtjƒƒ¡s¢J ‚t(ddd}t t&ttƒ|ƒttjd t	t
ttt t|ƒ ƒtjƒ¡sÈJ ‚d S )Nr   r³   rÔ   r  r  ró   ggs-8RÁà?ggs-8RÁà¿r¿   r·   TFrÌ   r²   r  rŒ   r¬   ))rn   r'   r   r   rÁ   rS   rT  r    rV   rP   r   rŠ   r   r   rÅ   rC   r@   r   r   r?   rU   rà   Úatomsr   ÚpoprD   r3   r=   r   rO   r8   r%   rT   r$   ÚLopenr<   r(   r-   r   r   r   )rÝ   ÚretrŒ   r—   r—   r˜   Útest_old_trig_issues[  sx   $
þ 
þ 
þ(ÿ$
þÿ80  þ
ÿ,.ÿ
ÿ þ (,þ0ÿ
ÿÿry  c                  C   s  t dƒ} tttƒttƒ tƒtjksJ ‚tttƒttƒ tƒttt	ttƒttƒ dƒtj
ƒks1J ‚tttƒttƒ tƒttttdƒd ƒƒƒksJJ ‚ttdt ƒdttƒ  d tƒttdtdƒ ƒtdtdƒ ƒƒksnJ ‚tttƒtdt ƒ ttƒ d tƒtttjtdƒd  ƒtdtdƒ ƒƒks—J ‚tttƒttƒ d tƒttdtd	ƒ ƒd ƒks²J ‚tttƒttƒ d tƒtttdƒd ttdƒ d tdƒ ƒ ƒƒksØJ ‚ttttƒttƒ tƒttt| d|  t t ttdtdƒ ƒƒ ƒtjƒtt| td|  t td   ttdtdƒ ƒƒ ƒtjƒtt| td|  t t  ttdtdƒ ƒƒ ƒtjƒtt| td|  t td   ttdtdƒ ƒƒ ƒtjƒƒƒsTJ ‚ttttd
 ƒttd ƒ ƒttt| d
t d|  t td   ƒtjƒtt| d
t d|  t td   ƒtjƒtt| d
t d|  t dt d   ƒtjƒtt| d
t d|  t dt d   ƒtjƒtt| d
t d|  t td   ƒtjƒtt| d
t d|  t td   ƒtjƒƒƒsåJ ‚ttttt ƒttd t ƒ ƒttt| dt d|  t td   t ƒtjƒtt| dt d|  t td   t ƒtjƒƒƒs(J ‚tttƒtdt ƒ tdt ƒ ttjƒ ttt	ttƒtdt ƒ tdt ƒ dƒtjƒ¡sYJ ‚ttdt ƒtdt ƒ ƒ ttt	tdt ƒtdt ƒ dƒtj
ƒ¡sJ ‚d S )NrŠ   r   rÌ   r³   r   r·   r²   rØ   r  rÿ   rÔ   r  )r   rn   r'   r   r(   r   rÄ   r?   rO   r   rT  re   r+   rS   r%   r3   r*   rÂ   r)   r”   rg   rV   rP   r   r   r   rÅ   rÁ   r    rÐ   r—   r—   r˜   Útest_solve_hyperbolic   s\    
ÿ
ÿ"
ÿ&"
ÿ
ÿ(
ÿ0848ü((,,((ú",,þ((ÿÿ&ÿrz  c                  C   sº  t tttt ƒtƒttttdƒttt	t
dt
 t t t ƒtjƒtt	t
dt
 t t ƒtjƒƒƒƒs4J ‚t tttt ƒtƒttttdƒttt	t
tdt
 t t tt d   ƒtjƒtt	t
tdt
 t t dt t d   ƒtjƒƒƒƒsxJ ‚t ttdtdƒ d td  tt  t ƒtdtdƒ d td  tt  t ƒ tƒttttdƒttd dƒ@ ttt	t
tdƒt t dt
 t td   dtd   ƒtjƒtt	t
tdƒt t dt
 t dt d   dtd   ƒtjƒtt	t
tdƒt t dt
 t td   dtd   ƒtjƒƒƒƒsJ ‚t tttd d t ƒd tƒttttd d dƒttt	t
dt
 t t tdƒ td d  ƒtjƒtt	t
dt
 t t tdƒ td d  ƒtjƒƒƒƒseJ ‚tdd	d
} tt| d d t ƒd ttjƒttdƒ | d d  tdƒ| d d  ƒks•J ‚t tttdt t ƒtddt  t ƒ tƒƒttt	t
tdt  dt
 d  d ƒtjƒtt	t
tdt  dt
 d  d ƒtjƒƒƒsÛJ ‚d S )Nr   r³   r²   rØ   rÌ   rÍ   r·   ÚarTr¬   )r”   rn   rC   r}   r   rO   r   rV   rP   r   rŠ   r   r   rÅ   r(   r   r3   r~   r?   r.   r   rÁ   rS   rY   r@   )r{  r—   r—   r˜   Útest_solve_trig_hyp_symbolicË  sB     þ ,0þ*&ÿÿ<@<ý
þ 00þÿ"&ÿ0((þr|  c                  C   sZ  t tttƒttƒ d tƒttttdt t	 t
 ttdƒd ttj tdƒ ƒ ƒ ƒtjƒtttt	dt t
 ttdƒttjtdƒ ƒ ƒ t
  ttdtdƒ ƒƒ ƒtjƒtttt	dt t
 t
  ttdƒ d ttj tdƒ ƒ ƒ ƒtjƒtttt	dt t
 t
 ttdƒttjtdƒ ƒ ƒ  ttdtdƒ ƒƒ ƒtjƒƒƒs¨J ‚ttƒ t¡} ttƒ t¡}t t| | d tƒtttttt	dt t
 t
  ttdƒ d ttj tdƒ ƒ ƒ ƒtjƒtttt	dt t
 t
  d ƒtjƒƒttttt	dt t
 t
 ttdƒttjtdƒ ƒ ƒ  ttdtdƒ ƒƒ ƒtjƒtttt	dt t
 t
  d ƒtjƒƒttttt	dt t
 ttdƒttjtdƒ ƒ ƒ t
  ttdtdƒ ƒƒ ƒtjƒtttt	dt t
 t
  d ƒtjƒƒttttdt t	 t
 ttdƒd ttj tdƒ ƒ ƒ ƒtjƒtttt	dt t
 t
  d ƒtjƒƒƒƒs«J ‚d S rë   )r”   rn   r'   r   r)   rV   rP   r   rŠ   r   r   r%   r3   r   rÂ   rÅ   r=   r^  r$   rR   )Úf1Úf2r—   r—   r˜   Útest_issue_9616ë  sR   @6ÿÿF6ÿÿ
ûBÿ$þ8ÿÿ$þ8ÿÿ$þ@$þör  c                   C   s<   dt ttƒt tƒvsJ ‚dtttƒd t tƒvsJ ‚d S ©Nr   r·   )re   rC   r   rg   r$   r—   r—   r—   r˜   Útest_solve_invalid_sol  s   "r  c                  C   s¢   t dƒ} ttttƒtƒtt| | t ƒtj	ƒƒsJ ‚ttt
tƒtƒtt| | t td  ƒtj	ƒƒs2J ‚ttt
tƒttƒ tƒtt| | t td  ƒtj	ƒƒsOJ ‚d S )NrŠ   r³   rØ   )r   r”   re   rC   r   rW   r   r   r   rÅ   r?   rÐ   r—   r—   r˜   Útest_solve_trig_simplified	  s   ÿÿÿr‚  c                  C   sÎ  t tttƒ d tƒttdƒƒksJ ‚t ttƒt tƒttdƒ ƒks%J ‚t tdt  tƒtttdƒƒ tdƒ ƒks=J ‚t dt d ddt d   tƒ} | ttddƒtddtddƒ  tdƒ d ƒdtdƒ   ƒkspJ ‚ddt d d  dd	dt d
    }t |tƒ}ttdƒdttd	d	dtddƒ  d  ƒ ƒ  dtd	ƒ  d ƒ} || ks±J ‚t | ¡ tƒ|ks¼J ‚t dt d dtdd	t  ƒ  tƒttddƒtdttddƒƒ d ƒd	  ƒksçJ ‚t dt d tdt d ƒ tƒttddƒtdttddƒƒ d ƒd  ƒksJ ‚t dt tdt ƒ tƒtttddƒƒd ƒks,J ‚t tt d ƒttttdƒƒƒƒksAJ ‚tdƒ}t | t dt ttƒ  tƒtt|d ƒƒks`J ‚tddd}t |t ttd ƒ tƒtdt| d ƒ ƒksJ ‚t |t ttd ƒ  	t¡tƒtdtt
dƒt
|ƒ d ƒ ƒks¤J ‚t ttd ƒttd ƒ d tƒtju s»J ‚t td dt  d  tttƒdt  ¡tƒttdtj ƒd ƒksàJ ‚t td dt  d  tttƒdt  d d ¡tƒttdtt
dƒ ƒ ƒd tdtt
dƒƒ ƒd ƒksJ ‚t td dt  d  tttƒdt  ¡tƒttdtdt
dƒ ƒ ƒd tdtt
dƒ d ƒ ƒd ƒksPJ ‚t tttƒ dt  d tƒttdttdƒ ƒ ƒƒksoJ ‚tttƒ d  ttttƒ ¡}t |tƒttdttdƒ ƒ ƒƒks”J ‚t dt|dt d  ƒ |dt d   tƒtt|d ƒttddƒƒ dt|ƒ   ƒksÄJ ‚tddd}t dt|dt d  ƒ |dt d   tƒttdtddƒ  dtddƒ t  ttddƒƒtddƒ  d|tddƒ   ƒt|ƒ tdtddƒ  dtddƒ t  ttddƒƒtddƒ  d|tddƒ   ƒt|ƒ tdttddƒƒ |d  ddt|ƒ   ƒƒksSJ ‚tdƒ}dt|dt d  ƒ |t|dt d  ƒ  |dt d   }t |tƒtt|d ƒtd|d  ƒ dt|ƒ   ƒks–J ‚t |t ttd ƒ  	td¡tƒtdtdtddƒ |tddƒ  d ƒ ƒksÀJ ‚t td dt  tƒtdtdƒ ttdƒ d ƒ ƒksßJ ‚t dttƒ ttƒd  ƒttdttdƒ d ƒ tdƒ ƒƒksJ ‚t td dt  tƒt td  dt  tƒksJ ‚t dttƒ ttdƒ  ƒtdttdƒ d ƒ tdƒ dttdƒ d dƒ tdƒ ƒksNJ ‚t tdt ƒt ƒttttƒ d ƒkseJ ‚d S )Nr·   r³   r²   rÌ   rÉ   i ØÿÿrØ   rÍ   r  r  ia	  r¿   iëÿÿÿiíÿÿÿr}   Tr¬   rË   rÀ   r°   r~   )re   r   r$   rS   r#   r%   r   rs  r   r	   r3   r)   r   rÄ   rà   ÚExp1r   r   r?   r8   r   )r  rû   Úresultr}   rÀ   r~   r—   r—   r˜   Útest_solve_lambert  s¶   &$ÿ",ÿ(
&ÿ
ÿÿ$*ÿ *
ÿ
ÿ*6
ÿ
ÿ.,
ÿ42
ÿ,:
ÿ
ÿ 
ÿ,*
ÿ,VV,ý
ÿ@
(ÿ"&ÿ 
ÿ ÿ
ÿþÿr…  c                  C   sN   t ddƒ} tt|  | t  tƒt| |  tt| ƒ |  ƒ t| ƒ ƒks%J ‚d S )NrÍ   rÌ   )r   re   r   rS   r#   r%   )r}   r—   r—   r˜   Útest_other_lambertm  s   
 ÿr†  c                  C   sX  t dƒ} ttdd„ ƒ ttdƒtjksJ ‚t| dƒd t d | dƒƒtt	t d ƒ t	t d ƒƒks6J ‚t| dƒd d | dƒtj
ƒtddƒksLJ ‚t| dƒd d | dƒƒtt tƒksaJ ‚ttd dƒttƒksnJ ‚tttƒttƒ ttƒƒtttƒƒksƒJ ‚tdtj
dtj
ksJ ‚tdƒtjks˜J ‚td	tj
dtj
ks¤J ‚td
tj
dtjks°J ‚tttƒd tj
dtdƒksÁJ ‚tttƒd ttj
ƒtdƒksÒJ ‚ttttƒdƒttj
ƒtdƒksäJ ‚tttƒd ttƒtj
ƒtdƒks÷J ‚tdtƒ}t|d |tj
ƒtdƒksJ ‚ttd dkttj
ƒtdtƒksJ ‚tttƒd dkttj
ƒtdtƒks4J ‚ttttƒd tƒtttdt t t ƒtjƒƒsPJ ‚tttttƒdƒtƒtttdt t t ƒtjƒƒsmJ ‚ttd | dƒ d tƒt	| dƒ d ƒ t	| dƒ d ƒhksJ ‚ttttƒƒdktt dt¡dt dt¡ksªJ ‚d S )Nr‚   c                   S   s   t tt ƒS r“   )rn   r   r   r—   r—   r—   r˜   rµ   w  r¶   ztest_solveset.<locals>.<lambda>r·   r³   r¿   r   r  TFÚA)r   r]   rÃ   rn   r   r   rÄ   r   rS   r3   rÁ   r   rC   r?   r$   r   rZ   rU   r   r”   rW   r   rŠ   r   rÅ   r=   r%   rÏ   )r‚   r‡  r—   r—   r˜   Útest_solvesett  s8   ÿ,**""$&
 &*8*ÿF8rˆ  c                  C   s~  t dƒ\} }}tttttƒƒd tƒtt| tfftd|  t	 t
dt t t	 tdƒ ƒ  ttdt t t	 tdƒ ƒƒ ƒttjtjƒƒƒsIJ ‚ttttttt t ƒƒ t tƒtttt t t ƒtt| tfftd|  t	 t
tdt t	 t
t t ƒ  tttt ƒƒ ƒ  tttdt t	 t
t t ƒ  tttt ƒƒ ƒƒ ƒttjtjƒƒƒƒs²J ‚tttttttt t ƒƒƒ t tƒtttt t t ƒtt|| tfftd| t	 t
td|  t	 t
tdt t	 t
t t ƒ  tttt ƒƒ ƒ  tttdt t	 t
t t ƒ  tttt ƒƒ ƒƒ ƒ  tttd|  t	 t
tdt t	 t
t t ƒ  tttt ƒƒ ƒ  tttdt t	 t
t t ƒ  tttt ƒƒ ƒƒ ƒƒ ƒttjtjtjƒƒƒƒskJ ‚ttttttttt t ƒƒƒƒ t tƒtttt t t ƒtt||| tfftd| t	 t
td| t	 t
td|  t	 t
tdt t	 t
t t ƒ  tttt ƒƒ ƒ  tttdt t	 t
t t ƒ  tttt ƒƒ ƒƒ ƒ  tttd|  t	 t
tdt t	 t
t t ƒ  tttt ƒƒ ƒ  tttdt t	 t
t t ƒ  tttt ƒƒ ƒƒ ƒƒ ƒ  tttd| t	 t
td|  t	 t
tdt t	 t
t t ƒ  tttt ƒƒ ƒ  tttdt t	 t
t t ƒ  tttt ƒƒ ƒƒ ƒ  tttd|  t	 t
tdt t	 t
t t ƒ  tttt ƒƒ ƒ  tttdt t	 t
t t ƒ  tttt ƒƒ ƒƒ ƒƒ ƒƒ ƒttjtjtjtjƒƒƒƒs½J ‚d S )Nz
k1, k2, k3rÌ   r³   )r   r”   rn   r$   r   rW   r   rŠ   r   r   r   r%   r   rX   r   rÅ   r€   r}   r~   r   rP   )Úk1Úk2Úk3r—   r—   r˜   Útest_multi_exp™  sb   Xÿÿ" vÿþÿ&"N4ÿ.ÿ4ÿÿÿü
ÿ*$\4ÿ.ÿ4ÿÿzÿ~þþÿúÿrŒ  c                  C   s¨  ddl m}  ddlm} | td d gtgtjgƒtddƒks!J ‚| tt td gttg||gƒtdƒks7J ‚| tt td gttg||gƒtd	ƒksMJ ‚| tt tt d gttg||gƒttdƒd tdƒ d fƒkspJ ‚| td td gttg||gƒtd
ƒks†J ‚t| tt gttg||gƒt	t
ttfftt fƒt|ƒƒt
ttfft tfƒt|ƒƒƒƒsµJ ‚| tt tt d gttg||gƒtjksÌJ ‚| tt tt td gttg||gƒtjksäJ ‚| tt tt td gttg||gƒtjksüJ ‚| tt t d tt t d tt t d gtttg|||gƒtdtj tj fƒks+J ‚ddlm} | td td  d tt gttg||gƒtdd	ƒksOJ ‚| td d tgttg||gƒtddƒksgJ ‚t| td td  gttg||gƒt	t
ttfftttƒ fƒt|ƒƒt
ttfftttƒfƒt|ƒƒt
ttffttƒ tfƒt|ƒƒt
ttffttƒtfƒt|ƒƒƒƒs½J ‚| tt|ƒ d tt|ƒ g|tgtdtƒtddƒgƒtdtdfƒksãJ ‚| tt|ƒ d tt|ƒ gt|gtddƒtdtƒgƒtdƒksJ ‚| tt|ƒ t tt|ƒ gt|gtddƒtdtƒgƒt	t
ttfftdfƒt
tttfƒtddƒƒƒt
t|ffd|fƒt
t||fƒtdtƒƒƒƒksRJ ‚d S )Nr   )Ú_solveset_multi)rÁ   r³   r·   ©r·   ©r¿   ©r¿   r·   )r·   r¿   )r·   r³   r²   )Útheta)r·   r   )r¿   r   r¿   )r   r·   )Úsympy.solvers.solvesetr  Ú
sympy.setsrÁ   r   r   rS   r   r”   rV   rP   r   rX   rÄ   r‘   rÂ   Ú	sympy.abcr‘  r   rŒ   r?   rC   rU   r   )r  rÁ   r‘  r—   r—   r˜   Útest__solveset_multiµ  sd   *,,F,
þ.008ÿ
ÿ<0$  ü"ÿ
ÿ"ÿ
ÿ"ÿÿÿýÿr•  c                	   C   sž  t tttƒd ttƒd  dƒttjdtju sJ ‚t ttd tttƒ  dƒttjd ttttd tttƒ  d dƒtjƒ¡sDJ ‚t	t tt
 tt
t ƒtt
 t ƒ  d dƒtƒtttdt t td  ƒtjƒƒspJ ‚t tttƒ dkttjd tttttƒ dktjƒ¡sŽJ ‚t ttttƒƒtƒttjd tttt tttƒƒ dƒtjƒ¡s±J ‚t tt t ttjƒ ttttt t dƒtjƒ¡sÍJ ‚d S )Nr³   r·   r  r   )rn   r   rC   r   r?   r   rÁ   r    rO   r”   r   r$   rW   r   rŠ   r   rÅ   r   r   r‘   r—   r—   r—   r˜   Útest_conditionsetä  s$   (ÿ$*ÿ0 ÿÿ$ÿ
ÿr–  c                   C   s4   t tttƒtƒtƒtttttƒtƒtjƒksJ ‚dS )z? Checking equality of different representations of ConditionSetN)rn   r   rD   r   r   rO   r   rT  r—   r—   r—   r˜   Útest_conditionset_equalityø  s   4r—  c                   C   sz   t td t d ttdtƒƒtdƒksJ ‚t td d ttdtƒƒtdƒks(J ‚t td d ttddƒƒtdƒks;J ‚d S )	Nr³   rÍ   r   r²   r·   rØ   r  rÊ   ©rn   r   rU   r   rS   r—   r—   r—   r˜   Útest_solveset_domainþ  s   *&*r™  c                  C   sL   t ttƒttƒ ttjƒ} tttttƒttƒ dƒtjƒ}|  |¡s$J ‚d S rS  )	rn   r$   r   rC   r   rÁ   rO   r   r    )Úsolutionr+  r—   r—   r˜   Útest_improve_coverage  s    r›  c                  C   st   t dtd d  t dtd d  d ƒ} t dt t dt ƒ}t| ttjƒtju s,J ‚t|ttjƒtju s8J ‚d S )Nr·   r³   rØ   )r   r   rn   r   rÁ   rÄ   )Úexpr1Úexpr2r—   r—   r˜   Útest_issue_9522
  s   *rž  c                   C   sê   t td d ttjƒg ksJ ‚t td d ttjƒdtjtdƒt d  tjtdƒt d  gks3J ‚t ttƒttjƒdgksAJ ‚t t	tƒttjƒt
d t
tddƒ gksWJ ‚t ttƒd ttjƒt
tddƒ gkslJ ‚ttdd„ ƒ d S )Nr³   rÊ   r²   r·   r¿   c                   S   s   t tttƒƒttjƒS r“   )rr   rC   r$   r   r   rT  r—   r—   r—   r˜   rµ     ó    ztest_solvify.<locals>.<lambda>)rr   r   r   rÁ   rT  rÂ   r3   r   r%   r?   r   r   rC   r]   ÚNotImplementedErrorr—   r—   r—   r˜   Útest_solvify  s   *
ÿ,*r¡  c                  C   s   t dtdk ftd tdkfttƒdfƒ} t dtdk ftd dt  d td	kfƒ}t dttdƒftd ttƒ dfƒ}t dtttƒftt ttƒ dfƒ}t| ttj	ƒdgksYJ ‚t|ttj	ƒd
dgksfJ ‚t|ttj	ƒdgksrJ ‚t|ttj	ƒtgks~J ‚d S )Nr   r¿   r³   r·   TéöÿÿÿrÌ   rÍ   rr  r  )
r6   r   r%   r   r   r   rC   rr   r   rÁ   )Úp1Úp2Úp3Úp4r—   r—   r˜   Útest_solvify_piecewise  s   (*$$r§  c                  C   sX   t ddd} ttt| ƒƒ| tjƒdtgksJ ‚t dƒ} ttt| ƒƒ| tjƒd u s*J ‚d S )Nr   Tr°   r   )r   rr   rC   r   r   rÁ   r   r´   r—   r—   r˜   Útest_abs_invert_solvify)  s   ""r¨  c                     sä  t dtƒtdggƒtdggƒfksJ ‚t dtƒtdggƒtdggƒfks&J ‚dt t dt  d tt t tt dt  d g} tdt dt  t dƒtdt dt  dt  dƒdt t dt  g}t | tttƒ\}}|tg d	¢g d
¢g d¢gƒks€J ‚|tdgdgdggƒksŽJ ‚t |tttƒ\}}|tg d¢g d¢g d¢gƒks¨J ‚|tdgdgdggƒks¶J ‚tt t tt  tt  t	 t
t t	t  tt  tt  t tt tt  tt  t g‰ t ˆ tttƒ\}}|ttt ttgt	t
 ttgtttggƒksJ ‚|tt	gtgtggƒksJ ‚tt‡ fdd„ƒ tt‡ fdd„ƒ ttdd„ ƒ ttdd„ ƒ ttdd„ ƒ ttdd„ ƒ ttdd„ ƒ t tgdt gƒtdggƒtt ggƒfksdJ ‚t tttdt d  d   tƒtdt t d ggƒtt dt d  ggƒfks‘J ‚t ttt tt  d gdt dt  t ggƒttƒtttgddggƒtdgtggƒfksÂJ ‚t ttd dƒtƒtdggƒtdggƒfksÛJ ‚ttdd„ ƒ ttdd„ ƒ ttdd„ ƒ d S )Nr   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   c                      ó   t ˆ ƒS r“   )rh   r—   ©Úeqns3r—   r˜   rµ   I  ó    z*test_linear_eq_to_matrix.<locals>.<lambda>c                      s   t ˆ tttgƒS r“   ©rh   r   r   r—   rª  r—   r˜   rµ   K  rê   c                   S   s   t tdt t dt ƒtgƒS rÒ   ©rh   r   r   r—   r—   r—   r˜   rµ   M  ó    c                   S   s   t td gtgƒS rý   ©rh   r   r—   r—   r—   r˜   rµ   N  r;  c                   S   s   t tt gttgƒS r“   r­  r—   r—   r—   r˜   rµ   O  ó    c                   S   s   t tttƒtƒS r“   r®  r—   r—   r—   r˜   rµ   R  rê   c                   S   s   t tttd ƒtƒS rÒ   r®  r—   r—   r—   r˜   rµ   S  r±  r  rÌ   rÍ   c                   S   s   t g tthƒS r“   r­  r—   r—   r—   r˜   rµ   e  r½   c                   S   s   t tt gtthƒS r“   r­  r—   r—   r—   r˜   rµ   f  r±  c                   S   s   t tt httfƒS r“   r­  r—   r—   r—   r˜   rµ   g  r±  )rh   r   ÚMatrixr   r‘   r   r}   r~   r   r€   r   r‚   rƒ   r„   r…   r†   r‡   rˆ   r]   rÃ   r|   Ú	TypeError)Úeqns1Úeqns2r‡  ÚBr—   rª  r˜   Útest_linear_eq_to_matrix1  sN   &&6J""^22 .ÿ*ÿÿ ÿ
ÿÿr·  c                   C   sX   t ttdt dt   dt  dƒttƒtdt dt d ggƒtdggƒfks*J ‚d S )Nr³   r²   rØ   rÌ   )rh   r   r}   r   r   r²  r—   r—   r—   r˜   Útest_issue_16577j  s   ("ÿr¸  c                   C   s"   t ttƒdtƒttjfksJ ‚d S rS  )rk   r$   r   r   rÄ   r—   r—   r—   r˜   Útest_issue_10085o  ó   "r¹  c               	      s  t dƒ\‰‰} }tg d¢g d¢g d¢gƒ}|d d …d d…f |d d …df f }\‰ ‰ˆdˆ  |  | d ˆdˆ  d|   | d dˆ d	ˆ  d
|  d	 g‰tdˆ d|  d ˆd| d |fƒ}tˆˆˆ| |fƒ|kssJ ‚tˆgˆˆ| |f¢R Ž |ksƒJ ‚t|ˆˆ| |fƒ|ksJ ‚t|gˆˆ| |f¢R Ž |ks J ‚t dtd\‰‰} }t|ˆˆ| |ƒtdˆ d|  d ˆd| d |fƒksÈJ ‚tt‡fdd„ƒ tt‡fdd„ƒ tt‡‡fdd„ƒ 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	 d td t
 d gt	t
gƒt d td  d fhks>J ‚tttgttggƒ‰ ttgtggƒ‰ˆ ˆf}tt t tt  tt tt   tt tt  tt tt   fƒ}t|tt
gƒ|ksƒJ ‚tg d¢g d¢g d¢gƒ‰ tg d¢ƒ‰tˆ ˆftt
t	fƒtju s¦J ‚t dƒ\‰ ‰}}tdt | dt | d| gdt | dt | d| gd ddt ||  gg d!¢gƒ}t|ˆ ˆƒtd t||  fƒksîJ ‚tg d"¢g d#¢gƒ}t|tttttƒttd td tfƒksJ ‚t d$ƒ\}	‰‰}
ttg d"¢d d d dd |
ggƒƒt|	d ˆ|
ˆfƒks1J ‚t d%ƒ\}	‰‰}
ttg d"¢d d d dd |
ggƒƒt|	d ˆ|
ˆfƒksUJ ‚t d&ƒ\}	‰‰}
ttg d"¢d d d dd |
ggƒƒt|	d ˆ|
ˆfƒksyJ ‚t d'ƒ\}	‰}t|td(ƒƒt|	d ˆd |fƒks“J ‚|	|d)< t d*ƒ|d)< tt|td(tdƒjƒd	ks®J ‚td+ƒ}t|tƒd g|tƒƒtd,ƒksÅJ ‚d d-lm}m}m} || }d.| t t
 d/| | dt |  g‰tˆtt
ƒ|| td0dƒ |td	dƒ fhksJ ‚ttttt
 ƒgtt
gƒtd fhksJ ‚ttttt
  dt
 ƒgtgƒd1hks,J ‚ttdt
 ttt
  ƒgtgƒd1hksBJ ‚ttd2d„ ƒ tg tgƒtju sUJ ‚td gtgƒtfhkscJ ‚ttgtt
gƒd t
fhkssJ ‚ttd gtt
gƒd t
fhks„J ‚d S )3Nzx1, x2, x3, x4)r·   r³   r·   r·   r  )r·   r³   r³   r¿   r  )r³   rØ   r   rÍ   rØ   r¿   r³   r  r  rØ   rÍ   r   r²   rÌ   zx:4)Úclsc                      r©  r“   ©ri   r—   )ÚEqnsr—   r˜   rµ   ˆ  r¬  ztest_linsolve.<locals>.<lambda>c                      r©  r“   r¼  r—   ©Úx1r—   r˜   rµ   ‰  r¬  c                      s
   t ˆ ˆƒS r“   r¼  r—   )r¿  Úx2r—   r˜   rµ   Š  s   
 c                      s   t ˆ fˆˆƒS r“   r¼  r—   )r‡  r¿  rÀ  r—   r˜   rµ   ‹  r½   c                      s   t ˆ ˆˆˆƒS r“   r¼  r—   )r‡  r¶  r¿  rÀ  r—   r˜   rµ   Œ  r½   c                      s   t ˆ gˆ ˆ ƒS r“   r¼  r—   r¾  r—   r˜   rµ     r½   c                      s   t ˆ gdd„ ˆ ˆ fD ƒƒS )Nc                 s   s    | ]}|V  qd S r“   r—   r÷   r—   r—   r˜   r™   Ž  s   € z2test_linsolve.<locals>.<lambda>.<locals>.<genexpr>r¼  r—   r¾  r—   r˜   rµ   Ž  ó    c                   S   s&   t tt d td t d gttgƒS )Nr·   r³   r²   )ri   r   r   r—   r—   r—   r˜   rµ   ‘  ó   & c                   S   s   t ttƒt tt gttgƒS r“   )ri   r?   r   r   r—   r—   r—   r˜   rµ   ’  r¯  r·   ©r·   r³   r²   )r³   rØ   rÍ   )r²   rÍ   r  ©r   r   r·   z	A B J1 J2r   )r³   r   r   )r   r·   r   r   r   r   )r   r   r   r·   r   r   ztau0 tau1 tau2 _tau0ztau00 tau01 tau02 tau0ztau00 tau01 tau02 tau1z
x0, x2, x4r   ©r¿   r¿   Ú_x0r‚   )rÌ   )ÚmeterÚnewtonÚkilorÔ   é   iäÿÿÿrŽ  c                   S   s"   t ttd td t ƒgttgƒS rý   )ri   r   r   r   r—   r—   r—   r˜   rµ   Õ  rº  )r   r²  rS   ri   r   r]   rÃ   r|   r   r‘   r   r}   r~   r   r€   r   rƒ   r   rÄ   r   r[   r¥   Úfree_symbolsr   Úsympy.physics.unitsrÇ  rÈ  rÉ  r   r   )Úx3Úx4ÚMÚsystem1rÝ   Úsystem2ÚJ1ÚJ2Ú	AugmatrixÚx0rÆ  r‚   rÇ  rÈ  rÉ  ÚkNr—   )r‡  r¶  r½  r¿  rÀ  r˜   Útest_linsolves  s¨   ,0ÿ(  "
ÿFF ü&*
ÿ
ÿ
ÿ
ÿÿÿ
ÿ&(
ÿ*,, &r×  c                  C   s0   dd„ } d}| |ƒ\}}}t ||ƒ|ksJ ‚d S )Nc                 S   s~   t d | ¡ƒ}t d | ¡ƒ}|| }g }tj f|  tjf|   }t||ƒD ]\}}| || || d g¡ q&||t|ƒfS )Nzx:{}zy:{}r·   )r   Úformatr   rÂ   rŸ   ÚextendrS   )rŠ   rã   rä   ÚsymsÚeqsrÝ   ÚxiÚyir—   r—   r˜   Ú_mk_eqs_solç  s   z/test_linsolve_large_sparse.<locals>._mk_eqs_soliô  r¼  )rÞ  rŠ   rÛ  rÚ  rÝ   r—   r—   r˜   Útest_linsolve_large_sparseâ  s   
rß  c                  C   sr   t g d¢g d¢g d¢gƒ} t g d¢ƒ}t| |gtttfƒtdƒks#J ‚t g d¢g d¢gƒ} t| ƒtdƒks7J ‚d S )	N)r·   r·   r³   )r   r·   r³   rÄ  )r³   r·   r¿   )r·   r²   r¿   )r·   r·   r  )r·   r¿   r²   )rÌ   r³   )rK   ri   r   r   r‘   rS   )r‡  r¶  r—   r—   r˜   Útest_linsolve_immutableö  s
    rà  c                  C   s  t dƒ} tdt ƒdtdt ƒ  dttƒ  d }ttƒd dttƒ  d }ttƒd ttƒ }ttd ƒ}ttd ƒd }dttƒ }dt }tt| d|  t ƒtj	ƒ}tt| d|  t t ƒtj	ƒ}	tt| d|  t td  ƒtj	ƒ}
tt| d|  t d ƒtj	ƒ}tt| d|  t d t ƒtj	ƒ}t
|ttjƒtdtdƒtdƒƒksªJ ‚tt
|ttjƒ|
ƒs¶J ‚tt
|ttjƒt||	|
ƒƒsÆJ ‚tt
|ttjƒt||ƒƒsÕJ ‚t
|ttjƒtdƒksâJ ‚t
|ttjƒtjksîJ ‚t
|ttjƒtjksúJ ‚t
tttddƒƒtjks	J ‚d S )	NrŠ   r²   rÍ   r³   ri  r·   r   r   )r   r$   r   rC   r%   rP   r   r   r   rÅ   ro   rÁ   rS   r”   rV   rÄ   rU   )rŠ   r}  r~  Úf3Úf4Úf5Úf6Úf7r©   rª   Ús3Ús4Ús5r—   r—   r˜   Útest_solve_decompositionÿ  s*   ,""& "ré  c                  C   s`  t g g ƒtjks
J ‚t g ttgƒtjksJ ‚ttt d g} t tgttgƒtdtfƒks.J ‚t | tgƒtjks9J ‚tttdt t	 t	d  ƒtj
ƒf}tt ttƒd gtgƒtt|ƒƒƒs_J ‚tttdt t	 t	 ƒtj
ƒdftttdt t	 ƒtj
ƒdff}tt ttƒtd gttgƒt|Ž ƒs“J ‚t td d gtgƒtddƒks¥J ‚tttfƒ}t tt dgttƒ|ks¹J ‚t dtt gttƒ|ksÇJ ‚t tt tt gttƒ|ks×J ‚t tdgttƒtdtfƒksçJ ‚tdƒ}t |tƒdg|tƒtƒtdtfƒksÿJ ‚t |tƒdg|tƒ|tƒƒtd|tƒfƒksJ ‚tdtƒ}t |dg|tƒtdtfƒks.J ‚t td d gttƒgƒttjfƒksDJ ‚t td d gttƒƒttjfƒksYJ ‚t td d gdƒttd fƒksmJ ‚t td d gtt ƒttjfƒks‚J ‚t tdtt ƒtdt t d ƒtdt t d ƒgttƒttj d	tj fƒks®J ‚d S )
NrÌ   r   r³   r·   r  rŽ  r‚   r‡  r²   )rq   r   rÄ   r   r   rS   rP   r   rŠ   r   rÅ   r”   rC   r   r   rZ   r   rÂ   )ÚsystemÚsolnr‚   r‡  r—   r—   r˜   Útest_nonlinsolve_basic  s:    $( ÿ($  (2
",*(*<ÿrì  c                  C   s6   t ttft tfƒ} tttƒt gttƒ| ksJ ‚d S r“   )rS   r   rq   r   r   )rë  r—   r—   r˜   Útest_nonlinsolve_abs;  s   "rí  c                   C   s    t tdd„ ƒ t tdd„ ƒ d S )Nc                   S   ó   t td d gg ƒS r@  ©rq   r   r—   r—   r—   r˜   rµ   A  r±  z2test_raise_exception_nonlinsolve.<locals>.<lambda>c                   S   ó   t td d gƒS r@  rï  r—   r—   r—   r˜   rµ   B  r;  )r]   Ú
IndexErrorrÃ   r—   r—   r—   r˜   Ú test_raise_exception_nonlinsolve@  s   rò  c                  C   s|   t ttƒd ttƒd gtƒtjksJ ‚tttdt t	 t	d  ƒtj
ƒf} t| ƒ}tt ttƒd ttƒgtƒ|ƒs<J ‚d S rë   )rq   rC   r   r?   r   rÄ   rP   r   rŠ   r   rÅ   rS   r”   )Úsoln1rë  r—   r—   r˜   Útest_trig_systemE  s   ($(rô  c               
   C   s¸  t t td  tt ƒttƒ d g} ttttt td  ƒtjƒttttt ƒtjƒf}t	|ƒ}ttttt ƒtjƒttttt td  ƒtjƒf}t	|ƒ}|| }t
t| t tgƒ|ƒs^J ‚tt ƒttƒ tdƒd d  tt ƒttƒ tdƒd d  g} ttttdt t td  ƒtjƒtttdt t ttddƒ  ƒtjƒƒ}ttttdt t td  ƒtjƒtttdt t ttddƒ  ƒtjƒƒ}t
t| t tgƒt	||fƒƒsÚJ ‚d S )Nr³   r·   r²   rÍ   rÌ   )r   r   r   rC   rP   r   rŠ   r   rÅ   rS   r”   rq   r3   rV   r   )ÚsysÚsoln_1Úsoln_2rë  Úsoln_xÚsoln_yr—   r—   r˜   Útest_trig_system_failN  s&   $ÿÿ@"&ÿ"&ÿ$rú  c                  C   sÀ  t ddd\} }}}}}t| | | | |  g| |gƒtd|fƒks#J ‚|d ||  || g}t|||gƒtd| | fƒksAJ ‚|| | | }|| ||  ||  ||  }|| | || |  || |  || |  }	|| | | d }
|||	|
g}d| | d| t|ƒtdƒ f}d| | d| t|ƒtdƒ f}t||ƒ}t|||||gƒ|ksµJ ‚t| d	 d
| d   ||   | td  |t d g| |tgƒddt tfhksÞJ ‚d S )Nzx, y, a, b, c, dT)Úextended_realr   r³   ©r   r   r·   r¿   rØ   r²   )r   rq   rS   r‘   )r   r   r}   r~   r   r€   rê  Úeq1Úeq2Úeq3Úeq4r¦   r§   rë  r—   r—   r˜   Ú%test_nonlinsolve_positive_dimensionalf  s    .$ 0""
<ÿr  c                  C   s‚  t ddd\} }}t| d | d | d | g| |gƒtjks!J ‚| d |f}t| | d d | | d g| |gƒt|ƒksAJ ‚| d |d  g}t| |f||fƒ}tt|ƒ |ft|ƒ|fƒ}|| }t|| |gƒ|ksqJ ‚| d |d  g}t|| f||fƒ}t|t|ƒ f|t|ƒfƒ}|| }t||| gƒ|ks¡J ‚| d | d | | d g}t|| |fƒt||| fƒks¿J ‚t| d  |d  | d|  d| tjg| ||gƒtjksÞJ ‚t| | | tjtjtjg| ||gƒtjksöJ ‚| d  |d  | | |  |d  d|  |d  ||  | | d|d   d| d  | | |  g}t|| ||gƒtdd|f| ddfƒks?J ‚d S )	Nrß   Tr¬   r³   rØ   r²   r   r   )r   rq   r   rÄ   rS   r   r»   )r   r   r‘   r®   rê  Ú	soln_realÚsoln_complexrë  r—   r—   r˜   Útest_nonlinsolve_polysys}  s(   02 >0f0r  c                  C   s2  t ddd\} }}}| | | |d  d g}|| |d  d | }| |f}t|| |gƒt|ƒks5J ‚|d | d  |d |d  t| ƒ  g}|| df}t| d ƒ t| ƒ | |f}t| d ƒt| ƒ | |f}	|  t| d ƒ | |f}
| t| d ƒ | |f}|| |g}t||
|||	ƒ}t||ƒ|ks—J ‚d S )Nz
x, y, z, nTr¬   r³   r   )r   rq   rS   r$   r   )r   r   r‘   rŠ   rê  Ús_xrë  Úsoln_real_1Úsoln_real_2Úsoln_real_3Úsoln_complex_1Úsoln_complex_2rÚ  r—   r—   r˜   Ú#test_nonlinsolve_using_substitutionš  s    
*

ÿr  c                  C   s¦  t dƒ} ttttƒttƒ dt d gttgƒtt| d|  t	 t
 tttddƒƒƒ ƒtjƒtddƒfhƒs8J ‚ttƒttƒ dttƒ d g}tt|ttgƒtt| t	d|  t
 t
  tttdƒƒƒ ƒtjƒtdƒ ftt| t	d|  t
 ttd|  t	 t
 tdƒ ƒƒ  tttd|  t	 t
 tdƒ ƒƒƒ ƒtjƒtt| d|  t	 t
 tdƒ ƒtjƒfhƒs´J ‚ttƒttƒ td d g}tt|ttgƒtt| t	d|  t
 t
  ttdƒƒ ƒtjƒdftt| d|  t	 t
 ttdƒƒ ƒtjƒdfhƒsüJ ‚ttƒd td d g}tt|ttgƒtdƒtdƒ ftdƒtdƒftt| d|  t	 t
 tdƒ ƒtjƒtdƒ ftt| d|  t	 t
 tdƒ ƒtjƒtdƒfhƒsQJ ‚d S )NrŠ   r·   r²   r³   rØ   r   )r   r”   rq   r$   r   rC   r   rP   r   r   r   r%   r   r   rÅ   r   r   r3   )rŠ   rê  r—   r—   r˜   Útest_nonlinsolve_complex­  s@   &8
ÿ ÿÿÿ4"ÿÿ$þ
ý0,
þ.,ýr  c                   C   s<   t ttƒt t td gtttgƒdt dtfhksJ ‚d S rÒ   )rq   r3   r   r   r‘   r—   r—   r—   r˜   Útest_nonlinsolve_radicalÆ  s   <r  c                      sÆ  ddg‰t tt d d td td  d gttgƒ‰ t‡ ‡fdd„tdƒD ƒƒs+J ‚t tt d d tt d d gttgƒtjksEJ ‚t td td d  d	 dt d
 dt gttgƒtjksdJ ‚t td t d tt d ttƒgtttgƒ‰ g d¢‰t‡ ‡fdd„tdƒD ƒƒsJ ‚t ttd  td t d
 gttgƒ‰ dddt	  ddt	  fddt	  ddt	  fddt	  ddt	  fddt	  ddt	  fg‰t‡ ‡fdd„tdƒD ƒƒsáJ ‚d S )N)g      ú¿g      ö¿)g      ú?g      ö?r³   r  g      è?c                 3   ó@    | ]}t d ƒD ]}tˆ j| | ˆ| |  ƒdk V  qqdS ©r³   ç•Ö&è.>N©Úranger  Úargsr•   ©r\  rÝ   r—   r˜   r™   Í  ó   € ÿ,ÿz+test_nonlinsolve_inexact.<locals>.<genexpr>ró   g      °?rº   )©g[™°Ðõl×¿g[™°Ðõl×?r·   r  )g[&,t=Ûõ?g[&,t=Ûõ¿r·   c                 3   r  )r²   r  Nr  r•   r  r—   r˜   r™   Ù  r  r²   rÌ   )gÕù±ïF­ò¿gZŠ*4Íõ?gÍrüîŸ2Ç¿gèdxAàWñ?gyU;~Fò¿g ;W2%Ù?gqëîyè?g?„¾ÐäŽÖ?g‡¡Ø£ñ}Ý?gòƒZ Aá?c                 3   r  r  r  r•   r  r—   r˜   r™   æ  r  )
rq   r   r   rž   r  r   rÄ   r%   r‘   r   r—   r—   r  r˜   Útest_nonlinsolve_inexactÊ  s@   .ÿ42ÿ.ÿ&

ÿ

ÿ

ÿ

ÿù	ÿr  c                  C   s6  t ddd\} }tdt|d ƒ |fƒ}t|  tt| ƒƒ |f| tt| ƒƒ |fƒ}t| t| d ƒ | fƒ}tdt|d ƒ |ƒ}t| d |d t| ƒ  g| |gƒ|ksWJ ‚t| d |d t| ƒ  g|| gƒ|ksmJ ‚t| d |d t| ƒ  g|| gƒ|ksƒJ ‚t| d |d t| ƒ  g| |gƒ|ks™J ‚d S )Núx, yTr¬   r³   )r   rS   r#   r3   r$   rq   )r   r   ró  Úsoln2Úsoln3Úsoln4r—   r—   r˜   Útest_solve_nonlinear_transé  s   ,,,,0r  c            	      C   s   t dƒ\} }}}}}| |  ||  d|  | |  ||  }| |  ||  d|  | |  ||  }|| ||  d| | |  | |   }t|||g|||gƒtd| | dt| d |d |d   |d  ƒ  dt| d |d |d   |d  ƒ |  d| |d  |d  |  d| t| d |d |d   |d  ƒ |   fd| | dt| d |d |d   |d  ƒ  dt| d |d |d   |d  ƒ |  d| |d  |d  |  d| t| d |d |d   |d  ƒ |   fƒksþJ ‚d S )Nza1, b1, c1, ca, cb, cgç       @rº   r³   g      ð¿r·   )r   rq   rS   r3   )	Úa1Úb1Úc1ÚcaÚcbÚcgrý  rþ  rÿ  r—   r—   r˜   Útest_nonlinsolve_issue_25182÷  s   (((2*Jþ2*Jþür$  c                  C   s†  t dƒ} d| d  | d  d t }t|| ƒ}t|jd ddt   ƒdks(J ‚t|jd	 d
dt   ƒdks9J ‚t|jd ddt   ƒdksJJ ‚tj| d  | d  tj t }tdtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd   tt
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ d tdƒd  dtt
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ ddtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd     tdtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd   t	t
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ d dt	t
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ ddtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd       tdƒ d tdƒdtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd   t	t
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ d  dtd	td	ƒ d tdƒt d  tdƒd dt  tdddt  d  ƒd  td	ƒd    ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd  tt
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ d  tdtd	td	ƒ d tdƒt d  tdƒd dt  tdddt  d  ƒd  td	ƒd    ƒ d dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd  t	t
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ d  tdƒdtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd   tt
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ d    tdƒ d dtd	td	ƒ d tdƒt d  tdƒd dt  tdddt  d  ƒd  td	ƒd    ƒ d  tdƒdtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd   t	t
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd  tt
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ d  ttdƒ dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd   tt
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ d dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd  d ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  d  td	ƒd  t	t
ddtdƒ dtd	ƒd   tt
tdƒd ƒd ƒ d  dtdƒ dtd	ƒd   t	t
tdƒd ƒd ƒ d tdƒd   ƒd ƒ d  dtd	td	ƒ d tdƒt d  tdƒd dt  tdddt  d  ƒd  td	ƒd    ƒ d    ƒ}t|| ƒ|ksAJ ‚d S )Nr   ró   r²   r³   r   g©í	nëBÀg/H|n$ýÓ?r  r·   gðuªÙÓ¿gÞÊ+Nð?g¸®bšâ?gÀqãwæ?iñ|  rØ   é¬   r  é+   r  rÍ   i ÿÿÿé6   rð   )r   r   rn   r  r  r   rÂ   rS   r3   rC   r=   r?   r    r   )r   rù   rš  r\  r—   r—   r˜   Útest_issue_14642  s¼  
""" 8
ÿÿ,ÿÿÿÿ
þ ÿÿ
ÿÿÿ
ÿÿþþü
ü6ÿ
ÿÿÿ
ÿÿþÿÿÿÿ
ÿÿ>þÿþþü8	
ÿÿ,ÿÿÿÿ
þ"ÿÿ*ÿÿ
ÿÿþþü"ÿÿ$ÿÿÿ
ÿÿþ 
ÿÿÿ
ÿÿÿÿÿÿ
þþü÷ÿÿÿÿ
ÿÿ>þÿþ8ÿBÿþýû8ÿÿ

ÿÿûÿÿ
ÿÿÿÿÿÿ
þÿÿÿÿÿ
ÿÿþþüú
ÿ4ÿÿþ6
ÿÿ4ÿÿÿ
þ$
ÿÿÿ6
ÿÿþþüþ*ÿÿÿ
ÿÿ 
ÿÿÿÿÿ
þÿÿÿ
ÿÿÿ
ÿÿþþüúöÿ4ÿÿþ<
ÿÿ4ÿÿÿ
þ$
ÿÿÿ6
ÿÿþþüþ6
ÿÿ4ÿÿÿ
þ$
ÿÿÿ6
ÿÿþþüú(

ÿÿÿ
ÿÿÿÿÿÿ
þ
ÿÿÿÿÿ
ÿÿþþüÿÿ
ÿÿÿÿÿÿ
þ
ÿÿÿÿÿ
ÿÿþþüü":ÿÿøöÛ:r(  c                  C   s@  t dƒ } \	}}}}}}}}}	||	 ||	  | |||	  | ||	d  ||	  ||	  | |	| |	 ||	  |  |	| ||	  |  f}
t|||	  | |	 ||	  | |	d  |||	d  ||||t|	hdhƒf	|||	  ||	 ||	  | |	d  d |||	d  ||||t|	hdhƒf	ƒ}t|
g| ¢R Ž |ksžJ ‚d S )Nzax bx cx gx jx lx mx nx qr³   r   r¿   ©r   rS   rR   rq   )ÚVÚaxÚbxÚcxÚgxÚjxÚlxÚmxÚnxr‹   r   rÝ   r—   r—   r˜   Útest_issue_13961L  s   nJJÿr3  c                  C   sX   t ttd  d ƒtƒ} t| jd dt  ƒdksJ ‚t| jd dt  ƒdks*J ‚d S )Nr³   r  r   gã;fž ö?r  r·   )rn   r3   r   r  r  r   )Ú	solutionsr—   r—   r˜   Útest_issue_14541V  s   "r5  c                  C   sz   dt  ttd  t d  ƒ ttƒ } tdƒ}t| t tjd|ks#J ‚tttd t d  ƒt	d  t tjƒtj
u s;J ‚d S )Nr   r³   r   r  )r   r$   r   r   rS   rn   r   rÁ   r=   r   rÄ   )ÚexprrÝ   r—   r—   r˜   Útest_issue_13396\  s   &4r7  c                  C   s.  t tddtddƒtdƒd  tddƒ   dtddƒtdƒd  tddƒ   ƒ d ttdtddƒtdƒd  tddƒ  ddtddƒtdƒd  tddƒ    dtddtddƒtdƒd  tddƒ   dtddƒtdƒd  tddƒ   ƒ  ƒƒd  ttdtddƒtdƒd  tddƒ  ddtddƒtdƒd  tddƒ    dtddtddƒtdƒd  tddƒ   dtddƒtdƒd  tddƒ   ƒ  ƒƒ d tddtddƒtdƒd  tddƒ   dtddƒtdƒd  tddƒ   ƒd  tddtddƒtdƒd  tddƒ   dtddƒtdƒd  tddƒ   ƒd tttdtddtddƒtdƒd  tddƒ   dtddƒtdƒd  tddƒ   ƒ dtddƒtdƒd  tddƒ   ddtddƒtdƒd  tddƒ    ƒƒ d  tddtddƒtdƒd  tddƒ   dtddƒtdƒd  tddƒ   ƒd tttdtddtddƒtdƒd  tddƒ   dtddƒtdƒd  tddƒ   ƒ dtddƒtdƒd  tddƒ   ddtddƒtdƒd  tddƒ    ƒƒ d  ƒ} ttd t d tƒ| ksJ ‚d S )	Nr   r²   r·   r  iQ  é   r³   rØ   )rS   r3   r   r   r   rn   r   ©rÝ   r—   r—   r˜   Útest_issue_12032f  s|   *"ÿÿ&&ÿ*"ÿþýþ&&ÿ*"ÿþý("ÿÿü("ÿÿ0"ÿ"þ&ýýþ("ÿÿ0"ÿ"þ&ýýþî$r:  c                   C   s    t dttƒ tƒtjksJ ‚d S rÒ   ©rn   r3   r   r   rÄ   r—   r—   r—   r˜   Útest_issue_10876‚  r2  r<  c                   C   sX  t ttt ttƒgttgƒttttdt t	 ƒt
jƒtttdt t	 ƒt
jƒftttdt t	 t	 ƒt
jƒtttdt t	 t	 ƒt
jƒfƒƒsIJ ‚t ttt ttƒttƒ gttgƒttttdt t	 dt	 d  ƒt
jƒtttdt t	 dt	 d  ƒt
jƒftttdt t	 dt	 d  ƒt
jƒtttdt t	 dt	 d  ƒt
jƒfƒƒsªJ ‚d S )Nr   r³   r²   rØ   r  )r”   rq   r   r   rC   rS   rP   r   rŠ   r   r   rÅ   r?   r—   r—   r—   r˜   Útest_issue_19050†  s   4:ÿÿ"LJÿÿr=  c                  C   s  t tƒt tƒ ttƒttƒ d g} ttttdt t ƒt	j
ƒtttdt t ƒt	j
ƒftttdt t t ƒt	j
ƒtttdt t t ƒt	j
ƒfƒ}t| ttgƒ}tt|ƒt|ƒƒD ]$\}}t|ƒt|ƒ  krndksqJ ‚ J ‚tdd„ t||ƒD ƒƒsJ ‚q[t|ƒt|ƒksŠJ ‚d S )Nr·   r³   c                 s   s    | ]
\}}|  |¡V  qd S r“   )r    )r–   r}   r~   r—   r—   r˜   r™   š  rš   z#test_issue_16618.<locals>.<genexpr>)rC   r   r   r?   rS   rP   r   rŠ   r   r   rÅ   rq   rŸ   r   r¥   rž   )Úeqnr  rÝ   Úi0Új0r—   r—   r˜   Útest_issue_16618  s   $4:ÿ$rA  c                   C   sd   t ddt  dt   dt  ddt  tdƒdt   gttƒttdƒ tdƒ dfƒks0J ‚d S )Né    r³   rØ   r  r²   r·   éQ   )rq   r   r   r   rS   r%   r—   r—   r—   r˜   Útest_issue_17566ž  s   @ÿrD  c               	   C   sb   t dƒ} ttd ttƒ tƒ ttt| d|  t t ƒt	j
ƒtt| d|  t ƒt	j
ƒƒ¡s/J ‚d S )NrŠ   r³   )r   rn   r   rC   r    rV   rP   r   r   r   rÅ   rÐ   r—   r—   r˜   Útest_issue_16643£  s   4ÿrE  c                  C   sh   t dƒ\} }tdd|  d|   d|   dd|  d|    g|| ƒttdƒ tdƒ dfƒks2J ‚d S )	Nzn mrB  r³   rØ   r  r²   rC  r·   )r   rq   rS   r%   )rŠ   r‰   r—   r—   r˜   Útest_issue_19587©  s   8ÿrF  c                  C   sœ  t td td  ƒt dƒ tt d g} t| ttgƒtddƒks"J ‚tdƒ}ttƒd ttƒ td  dttƒ d g}t	dƒ }t tdt ƒ tt	dƒƒ ƒ}t||f|| fƒ}t
|d| t t t	dƒ  ƒ}t|tjƒ}t
|t tdt ƒ td| t t t	dƒ  ƒ ƒƒ}t|tjƒ}t
|t tdt ƒ td| t t t	dƒ  ƒ ƒ ƒ}t|tjƒ}	t||f||	fƒ}
||
 }tt|ttgƒ|ƒsÌJ ‚d S )	Nr³   rÊ   rØ   )r·   r²   )r²   r·   rŠ   r·   r²   )r3   r   r   rq   rS   r   r$   rC   r‘   r%   r   r   r   rP   r   rÅ   r”   )rê  rŠ   rÛ  Ús_real_yÚs_real_zr  ÚlamÚs_complex_yÚs_complex_z_1Ús_complex_z_2r  rë  r—   r—   r˜   Útest_issue_5132_1¯  s&   (,
 68þrM  c                  C   sb  t ddd\} }t| ƒd t|ƒ td  g}tdƒ}ttd  t|ƒ ƒd tf}t|td| t t	td  t|ƒ ƒ  d tt
td t|ƒ ƒƒd  ƒ}t|tjƒ}|tf}t||ƒ}tt|| tgƒ|ƒskJ ‚t| d  |d  ttƒ||   g}	ttttƒd d  ƒ}
ttttƒd d  ƒttƒ }t|
|f|
 | fƒ}t|	| |gƒ|ks¯J ‚d S )Nr  Tr¬   r³   rŠ   r·   )r   r$   rC   r‘   r   r%   r   r   r   r   r   rP   r   rÅ   rS   r”   rq   rŒ   rD   r   r3   )r   r   rÛ  rŠ   r  rI  Úimgr  rë  rê  r  Ús_yr—   r—   r˜   Útest_issue_5132_2Æ  s   L
$ rP  c                  C   s>   t ddd\} }t| d |  | | g| |gƒddhksJ ‚d S )Nza, bTr¬   r³   rÅ  rü  )r   rq   rE  r—   r—   r˜   Útest_issue_6752Ù  s   .rQ  r_   c               	   C   s  ddl m} m} ttttttt	g}tt
t  tt  tdt dt  dt   tt  t
t  tdt dt  dt   tt  tt  tdt dt  dt   tt  tt  tdt d|   d|   tt  t	|  t	d| dt   t|  g}tt||ƒƒdksˆJ ‚d S )Nr   )ÚorÀ   r·   )r”  rR  rÀ   r}   r~   r   r‚   r„   r‡   rŠ   rŒ   r€   r   rƒ   r…   r†   rˆ   r‰   r‹   r¥   rq   )rR  rÀ   rÚ  rÛ  r—   r—   r˜   Útest_issue_5114_solvesetÞ  s   ****ûrS  ÚHangsc                  C   s  t dƒ\} }}| dt  |dtd   t  dt d t  |dtd   t dt  dt  tt | g}tt|g}tt||ƒƒdksFJ ‚| dt  |dtd   t  dt d t  |dtd   t dt  dt  tt | g}tt|g}tt||ƒƒdks…J ‚d S )Nzlam a0 concr³   r·   g{®Gázt?gÌ«¢Ã;Êç?)r   r   r   r¥   rq   )rI  Úa0ÚconcrÛ  Úsymr—   r—   r˜   Ú_test_issue_5335ï  s   ."
þ
."
þ
rX  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h}t||f| |fƒ|ksHJ ‚t||| |  f| |fƒtjksZJ ‚|d
7 }t||f| |fƒtjkslJ ‚d S )Núx yTr¬   r³   rÊ   r²   é¿   rÙ   i‡  rÍ   )r   r3   r   rq   r   rÄ   )r   r   Úe1Úe2r}   r~   r  r—   r—   r˜   Útest_issue_2777	  s   8$ r]  c                  C   s  d} d}d}d}d}d}d}d}t ttg}t |  d	 t| d	  |t d	  }	|t  d	 |t d	  td	  }
t | d	 t| d	  |t d	  }|	|
|g}tt |  d	 t| d	  ƒt | }|
}tt | d	 t| d	  ƒt | }|||g}t||ƒ}t||ƒ}||ks‰J ‚d S )
Nr   i”ýÿÿi˜  é~   i  é3   éÍ   éh   r³   )r   r   r‘   r3   rq   )r¿  Úy1Úr1rÀ  Úy2rÍ  Úy3Úr3Úvr}  r~  rá  ÚFÚg1Úg2Úg3ÚGr‡  r¶  r—   r—   r˜   Útest_issue_8828	  s(   
$ $
$$


rm  c                  C   s˜   t dƒ} | tƒtd  }| tƒttddƒ  }td| tƒ t dƒtd| tƒ dt  dƒ@ }tttƒ}t||tj	d ƒ}t
||gttgƒ|ksJJ ‚d S )Nr‚   r³   r²   r   )r   r   r   r   r   r   r   rO   r   rT  rq   )r‚   r}  r~  Úintermediate_systemrÚ  rë  r—   r—   r˜   Útest_nonlinsolve_conditionset*	  s   0
ýro  c                  C   sú   t g ttgƒtjksJ ‚t g g ƒtjksJ ‚dtd  dtd   d dtd  dtd   d g} tddddƒ}t | ttgƒ|ksDJ ‚td	ƒ}t tt gtgtd
igtgtƒ ttgƒ|ks`J ‚t tt gtgtd
igtgtd
 httgƒtjks{J ‚d S )Nr³   r²   r&  é   )rË   r   )rË   r³   )r²   r   )r²   r³   r  r·   )rp   r   r   r   rÄ   rS   rN  )rê  rë  r—   r—   r˜   Útest_substitution_basic9	  s   80þþrq  c                   C   sj  t td td td td dt gtttgƒddtfhksJ ‚t tt t tjtjtjgtttgƒt t ttfhks=J ‚t t	t
 tt
 tt
 t
d d gt	ttt
gƒt
t
 t
 t
fhks_J ‚t t	t	ttƒ  t	td  gt	tgƒdtfhksyJ ‚t t t dt  dt  dt dtd   d	 d
t t t td  td dt  d gttttgƒjthks³J ‚d S )Nr·   r³   rØ   r   r   rÍ   i¯ÿÿÿr  i  rË   r²   )rp   r„   r‡   r‚   r   r   r‘   r   r»   r}   r€   r~   r   r%   rË  r—   r—   r—   r˜   Útest_substitution_incorrectG	  s*   "ÿ
ÿ$ÿ,ÿ$ÿ0(ÿ
þþrr  c                  C   s”   t td td  td gttgƒt dftdfttd ƒ dfttd ƒdfhks+J ‚t tt td dtd   d gttgƒ} t| ƒdksHJ ‚d S )Nr³   r·   r²   rÌ   )rp   r   r   r‘   r3   r¥   )r\  r—   r—   r˜   Útest_substitution_redundant`	  s
    .ÿ*rs  c                  C   s2  t ddd\} }}}}|| d  |d  t|ƒ||   g}ttt|t|ƒd d  ƒ ƒtdƒƒ}ttt|t|ƒd d  ƒƒtdƒƒ}t|t|ƒd d  ƒt|ƒ }t||fƒt|| fƒ }	t|| |gƒ|	kslJ ‚tdƒ}
t| ƒd t|ƒ |d  dt|ƒ d g}t	dƒ }ttd|  ƒ tt	dƒƒ ƒ}t||f|| fƒ}t
|
d|
 t t t	dƒ  ƒ}t|tjƒ}t
|
ttd|  ƒ td|
 t t t	dƒ  ƒ ƒƒ}t|tjƒ}t
|
ttd|  ƒ td|
 t t t	dƒ  ƒ ƒ ƒ}t|tjƒ}t||f||fƒ}|| }	tt|||gƒ|	ƒsJ ‚d S )	Nzx, y, z, r, tTr¬   r³   r·   r   rŠ   r²   )r   rD   rR   rS   r3   rp   r   r$   rC   r%   r   r   r   rP   r   rÅ   r”   )r   r   r‘   rŒ   r   rê  Ús_x_1Ús_x_2rO  rë  rŠ   rÛ  rG  rH  r  rI  rJ  rK  rL  r  r—   r—   r˜   Útest_issue_5132_substitutionk	  s0   $(& ,
 68þrv  c                   C   sJ   t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ d S )Nc                   S   rî  r@  ©rp   r   r—   r—   r—   r˜   rµ   ‡	  r±  z*test_raises_substitution.<locals>.<lambda>c                   S   rð  r@  rw  r—   r—   r—   r˜   rµ   ˆ	  r;  c                   S   s   t td d gttƒgƒS r@  )rp   r   rC   r—   r—   r—   r˜   rµ   ‰	  rÁ  c                   S   s   t td d gtƒS r@  rw  r—   r—   r—   r˜   rµ   Š	  r±  c                   S   s   t td d gdƒS r@  rw  r—   r—   r—   r˜   rµ   ‹	  r±  )r]   rÃ   r³  r—   r—   r—   r˜   Útest_raises_substitution†	  s
   rx  c                     s2  ddl m‰  g d¢} tdƒ}‡ fdd„| D ƒ} tttjdd„ | D ƒŽ ƒƒ}t| |ƒ}t|d|d	d
ddt	dƒ dt	dƒ f|d|d	d
ddt	dƒ d
t	dƒ f|d|d	d
dd	t	dƒ dt	dƒ f|d|d	d
dd	t	dƒ d
t	dƒ fƒ}t
|ƒt
|ƒ  kr€dksƒJ ‚ J ‚||ks‰J ‚|jD ]
}t
|ƒd
ks–J ‚qŒd S )Nr   r   )zk-16zp-8zy*y+z*z-x*xz	d - x + pzd*d+k*k-y*yzz*z-p*p-k*kzabc-efgÚefgc                    s   g | ]}ˆ |ƒ‘qS r—   r—   ©r–   r   r   r—   r˜   rø   ›	  r±  z$test_issue_21022.<locals>.<listcomp>c                 S   s   g | ]}|j ‘qS r—   )rË  rz  r—   r—   r˜   rø   	  r;  rB  r  rÔ   r%  r`  rÌ   éøÿÿÿrØ   )Úsympy.core.sympifyr   r   rœ   r   rN  Úunionrq   rS   r3   r¥   r  )rÛ  ry  Úsybr\  r  r„  r—   r   r˜   Útest_issue_21022Ž	  s"   	
""""ü$
ÿr  c               	   C   sœ   t dƒ} t dƒ}tt|| fftd| t td|  t t tdƒ ƒ  ttd|  t t tdƒ ƒƒ ƒtt	j
t	j
ƒƒ}ttttƒƒd tƒ |¡sLJ ‚d S )NrŠ   r‰  r³   rÌ   )r   rP   r   r   r   r   r%   r   rX   r   rÅ   rn   r$   r   r    )rŠ   r‰  rÝ   r—   r—   r˜   Útest_issue_17940¬	  s   6ÿþ$r€  c                   C   s0   t dtd d  dt  tƒtddƒksJ ‚d S )Nr  r³   éP   r  r{  rÊ   )rn   r   rS   r—   r—   r—   r˜   Útest_issue_17906µ	  s   0r‚  c                  C   s¤   t tdƒ tttƒ  } t tdƒ tttƒ  }dt  tdƒ d tttƒ  }dt  tdƒ d tttƒ  t }t| |||gt tttƒtdddtfƒksPJ ‚d S )Nrf  r  rÊ   r   )r   rC   r   r?   r‹   r‘   rq   rS   )rý  rþ  rÿ  r   r—   r—   r˜   Útest_issue_17933¹	  s    $ÿrƒ  c                     s¾   t tdƒ tttƒ  } t tdƒ tttƒ  }dt  tdƒ d tttƒ  }dt  tdƒ d tttƒ  t }tdƒ‰ ‡ fdd„| |||fD ƒ}t|t ttˆ ƒtdddˆ fƒks]J ‚d S )Nrf  r  rÊ   Úzzc                    s   g | ]}|  tˆ ¡‘qS r—   )rà   r‹   )r–   r   ©r„  r—   r˜   rø   Ê	  r  z(test_issue_17933_bis.<locals>.<listcomp>r   )	r   rC   r   r?   r‹   r‘   r   rq   rS   )rý  rþ  rÿ  r   rÛ  r—   r…  r˜   Útest_issue_17933_bisÂ	  s    $(r†  c                	   C   sX   t ttt tttdt t ƒ  gttgƒtt t t	t
ttt ƒtjƒfƒƒs*J ‚d S )Nr   )r”   rq   r‡   r‰   r$   r   rS   rŠ   r   rP   r   r   rÅ   r—   r—   r—   r˜   Útest_issue_14565Î	  s   *"ÿr‡  c                  C   sn   t ddd} tttƒd ttjƒtju sJ ‚tttƒ|  ttjƒtju s&J ‚tt| dƒ| tjƒtju s5J ‚d S )Nr~   Tr°   r·   r¿   )r   rn   r   r   r   rÁ   rÄ   r   )r~   r—   r—   r˜   Útest_issue_9556×	  s     "rˆ  c                   C   sL   t ttt t tƒttjƒtjksJ ‚t ttt t tƒtƒtjks$J ‚d S r“   )rn   r   r   r}   r   rÁ   r   rT  r—   r—   r—   r˜   Útest_issue_9611ß	  s   &&r‰  c                   C   s>   t td t ttjƒttjttt ƒ tt ƒƒƒksJ ‚d S rý   )rn   r   r}   r   rÁ   rT   rS   r3   r—   r—   r—   r˜   Útest_issue_9557ä	  s   ÿrŠ  c                  C   sž   t ddd} t ddd}t| d d | tjƒtdƒksJ ‚t| tddƒ d | tjƒtjks0J ‚t| d | | tjƒtt|ƒtddƒ  t|ƒ ƒksMJ ‚d S )	Nr   Tr¬   r   r²   r·   r¿   rÌ   )	r   rn   r   rÁ   rS   r   rÄ   r   r!   r¼   r—   r—   r˜   Útest_issue_9778é	  s   "&ÿr‹  c                  C   sÚ   t ttddƒ d ttjƒtjksJ ‚t ttddƒ d ttjƒtjks&J ‚tdtddƒ  ƒ} t ttdƒ d ttjƒ| ksAJ ‚ttdƒ d  tt| ƒd ¡dksUJ ‚ttdƒ d  tdtddƒ  ¡dkskJ ‚d S )Nr²   r³   rØ   rË   r   r   )	rn   r   r   r   rÁ   rÄ   rS   rà   rœ   )r  r—   r—   r˜   Útest_issue_10214ò	  s   &&"(0rŒ  c                   C   s(   t tttƒƒd ttjƒtjksJ ‚d S rÒ   )rn   r   rC   r   r   rÁ   rÄ   r—   r—   r—   r˜   Útest_issue_9849ü	  s   (r  c                   C   s   t g tƒtjks
J ‚d S r“   )ri   r   r   rÄ   r—   r—   r—   r˜   Útest_issue_9953 
  rV  rŽ  c                	   C   sŽ   t dt dtd d   ttjƒtdtdƒ d tddƒ tddƒ  d dddtdƒ d tddƒ tddƒ    td	dƒ ƒksEJ ‚d S )
Nr³   r·   rÊ   r²   i^  rØ   i»  r¹   rÙ   )rn   r   r   rÁ   rS   r3   r   r—   r—   r—   r˜   Útest_issue_9913
  s    ,&ÿÿÿr  c                   C   s"   t ttƒttjƒtdƒksJ ‚d S rS  )rn   r3   r   r   rT  rS   r—   r—   r—   r˜   Útest_issue_10397

  rº  r  c                   C   s‚   t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ t tdd„ ƒ t td	d„ ƒ t td
d„ ƒ d S )Nc                   S   s   t td gtƒS rý   r°  r—   r—   r—   r˜   rµ   
  s    
ÿz"test_issue_14987.<locals>.<lambda>c                   S   s(   t tdt d  dt  t gttgƒS )NrË   r·   r³   )rh   r   r   r}   r—   r—   r—   r˜   rµ   
  s    "ÿc                   S   s$   t td dt  td  d gtƒS rJ  r°  r—   r—   r—   r˜   rµ   
  s    ÿc                   S   s,   t td d td  dtd   d gtƒS )Nr·   r²   r³   r  r°  r—   r—   r—   r˜   rµ   
  s    &ÿc                   S   s    t tdt d  t gttgƒS rÒ   r­  r—   r—   r—   r˜   rµ   
  s    ÿc                   S   s   t td t gttgƒS rÒ   r­  r—   r—   r—   r˜   rµ   
  s    ÿc                   S   s"   t tdt dt t ƒgttgƒS rÒ   ©rh   r   r   r   r—   r—   r—   r˜   rµ   
  ó    ÿc                   S   s"   t ttt tt t ƒgttgƒS r“   )rh   r   r   r   r—   r—   r—   r˜   rµ   
  r’  c                   S   s&   t tttd  td t ƒgttgƒS rë   r‘  r—   r—   r—   r˜   rµ   
  s     ÿ)r]   rÃ   r—   r—   r—   r˜   Útest_issue_14987
  s   r“  c                  C   sÖ   t tt dt dt    } t| t ƒttjƒksJ ‚t| t tjƒttt dt dt    htjƒks5J ‚t	ddd}t	ddd}t || d| d|    } t| t ƒttjƒks[J ‚t| t tjƒttjƒksiJ ‚d S )Nr   r³   ÚapTr°   Úbn)Únegative)
r   r}   r~   rn   rS   r   rÂ   rÁ   rT   r   )rû   r”  r•  r—   r—   r˜   Útest_simplification#
  s   6 r—  c            
      C   s4  dt  d dk} t d dt   d dk}t dt   ddt   k}t tt d d ƒ dk}t dt   ddt   k}| t tt ƒ¡}tt ƒt  dk}tt ƒt  dk }t t d  dk }t t d d  dk }	t| t tjƒtdtdƒksqJ ‚t|t tjƒt	tt ddƒtdtdƒƒksˆJ ‚t|t tjƒt	tdddƒtdtdƒƒksžJ ‚t|t tjƒtdtdƒks­J ‚t|t tjƒtdtdƒks¼J ‚t|t tjƒtdddƒksËJ ‚t|t tjƒtj
ks×J ‚t|t tddƒd	tdddƒkséJ ‚t|	t tddƒd	t	tdddƒtdddƒƒksJ ‚tt d dk t tjƒtt ddƒksJ ‚d S )
Nr³   r²   r   r·   r   rÌ   r¿   rË   r  )r   r3   rà   r%   rn   r   rÅ   rQ   r   rV   rÄ   )
rý  rþ  rÿ  r   rû   Úeq5Úeq6Úeq7Úeq8Úeq9r—   r—   r˜   Útest_integer_domain_relational/
  s(   .,$4.r  c                  C   s¤   t dƒ} t dƒ}t| tƒtd  ttjƒ ttt| tƒtd  dƒtjƒ¡s(J ‚t| |tƒƒtd  |tƒtjƒ t|tƒt| |tƒƒtd  dƒtjƒ¡sPJ ‚d S )Nr‚   rƒ   r³   r   )	r   rn   r   r   r   rÁ   r    rO   r   )r‚   rƒ   r—   r—   r˜   Útest_issue_10555I
  s   ÿ"&ÿrž  c                  C   sx   t dt   ddt   k} t| t tjƒt dt¡tdƒ ksJ ‚t|  t t	t ƒ¡t tjƒt t
dƒt¡tdƒ ks:J ‚d S )Nr·   r   r   )r   rn   r   rÁ   rU   rÏ   r   rS   rà   r%   r$   r   r—   r—   r˜   Útest_issue_8715R
  s   ÿÿrŸ  c                  C   sè   t d tdt ƒ ttƒ } ttjtt	t d  ttƒ ƒd ƒƒ}t
| ttjƒ|ks,J ‚ttƒtttƒƒ tttƒd d ƒ tttƒ  } ttƒ tttƒƒ tttƒd d ƒttƒ  }ttjt|ƒƒ}t
| ttjƒ|ksrJ ‚d S r@  )r‘   r$   r   rC   r   rT   r   rÁ   rS   r%   rn   r3   rŒ   r   rD   r   )rû   rë  r®   r—   r—   r˜   Útest_issue_11174Z
  s   &42r   c            	      C   sò   t ddd} t ddd}| | t| d  d ƒ  }|d  | d | d  d   }t| t|d d ƒ ƒt|t|d d ƒ ƒ}}t| t|dƒ|ƒ}|ddh |ddh B }||B ddh }t|| tjƒ|kslJ ‚t|| tjƒ|kswJ ‚d S )	Nr   Tr¬   r   r³   r·   r   r¿   )r   r3   rS   rO   r   rn   r   rÁ   )	r   r   rý  rþ  r©   rª   r(  r¦   r§   r—   r—   r˜   Útest_issue_11534e
  s    4
r¡  c                   C   sJ   t td dt  d t dk ttjƒtt t d¡t dd¡ƒks#J ‚d S )Nr³   rØ   r²   rË   r   r·   )rn   r   r   rÁ   rV   rU   rÏ   r   r—   r—   r—   r˜   Útest_issue_10477€
  s   $ÿr¢  c                  C   sT   t ttƒttdtƒƒtdtƒksJ ‚tddƒ} t dt  t¡dk t| ƒ| ks(J ‚d S )Nr   r·   rÊ   )rn   rC   r   rU   r   rS   r   r	   )r…   r—   r—   r˜   Útest_issue_10671…
  s   $
&r£  c                  C   sŽ   t tt d d ƒ } t| dkt tjƒttdƒtƒksJ ‚t| dk t tjƒtt tdƒ ƒks0J ‚t| tdƒkt tjƒt tdƒt¡ksEJ ‚d S )Nr³   rÌ   r   )r   r3   rn   r   rÁ   rU   r   rw  r   r—   r—   r˜   Útest_issue_11064‹
  s   ÿÿÿr¤  c                  C   sh   t td ƒd } t| tƒ}|tju sJ ‚t| dk ttjƒtju s"J ‚t| dkttjƒtdtƒks2J ‚d S ©Nr³   r   )	r3   r   re   r   rÄ   rn   rÁ   rU   r   )rû   rë  r—   r—   r˜   Útest_issue_12478•
  s
   
$r¦  c                  C   s6   t ttƒt dkttjƒ} t dd¡}| |ksJ ‚d S r€  )rn   r%   r   r   rÁ   rU   rw  )rû   rÝ   r—   r—   r˜   Útest_issue_12429
  s   r§  c                  C   sZ   t tt ƒ} tdƒ}t| ƒ tt|tt	|ƒd dƒt
jƒt|t|ƒdkt
jƒƒ¡s+J ‚d S )NÚCr·   r   )r   r   r   r   rn   r    rT   rO   r   r   r   rT  r    )rû   r¨  r—   r—   r˜   Útest_issue_19506£
  s
   $ÿr©  c                   C   sV   t ttƒttjƒt dt¡ksJ ‚t tdt d ƒttjƒt tddƒt¡ks)J ‚d S )Nr   rØ   r²   )	rn   r   r   r   rÁ   rU   rÏ   r   r   r—   r—   r—   r˜   Útest_solveset_argª
  s   "4rª  c                      sP   t ‰ t‡ fdd„tƒ tddtddfD ƒƒsJ ‚ˆ dtdd ƒdu s&J ‚d S )Nc                 3   s     | ]}ˆ d | ƒdu V  qdS )r·   Nr—   rz  rç   r—   r˜   r™   ²
  s   € z3test__is_finite_with_finite_vars.<locals>.<genexpr>Tr¬   )Úcomplexr·   F)rs   rž   r   r—   r—   rç   r˜   Ú test__is_finite_with_finite_vars¯
  s
   ÿr¬  c                   C   s6   t td dt  d ttt dƒdtdƒksJ ‚d S )Nr³   rÿ   r   )Úsymbolr	  rË   r˜  r—   r—   r—   r˜   Útest_issue_13550·
  rC  r®  c                   C   s4   t ttdƒtdƒ  tdƒ tftƒtju sJ ‚d S )NrÌ   r³   )rq   r   r3   r   rÄ   r—   r—   r—   r˜   Útest_issue_13849»
  s   4r¯  c                   C   sŠ   t ttttdƒ ƒd  t¡ttjƒtddƒksJ ‚t ttttdƒ ƒd  t¡tt	ddƒƒtdƒks5J ‚t tttddƒƒtj
u sCJ ‚d S )Nr³   r¿   r·   r   )rn   r   r   r4   r^  r6   r   rÁ   rS   rU   rÄ   r—   r—   r—   r˜   Útest_issue_14223¿
  s   ÿÿÿÿ r°  c                	      s¬  t j‰ ttttdƒ d tˆ ƒttddƒƒksJ ‚ttttdƒ d tˆ ƒttdƒ tdƒƒks2J ‚ttt	td ƒd td ƒd tˆ ƒtddƒksLJ ‚tt	td ƒt	t
ƒ tˆ ƒtt	t
ƒ d t	t
ƒd ƒksjJ ‚tt	tdt	td ƒ  ƒtˆ ƒttddƒtdd	ƒƒks‡J ‚tdt	tt	ttdtƒ ƒ ƒ d tt jƒtdd
ƒks¤J ‚t j‰ tt‡ fdd„ƒ tt‡ fdd„ƒ tt‡ fdd„ƒ tt‡ fdd„ƒ tt‡ fdd„ƒ d S )Nrÿ   rÊ   r³   r²   r·   r¿   rØ   rð   rÌ   r   c                      ó   t tttdƒ d tˆ ƒS ©Nrÿ   rÊ   )rn   r   r5   r—   ©Údomr—   r˜   rµ   Ð
  rÁ  z"test_issue_10158.<locals>.<lambda>c                      r±  r²  )rn   r   r4   r—   r³  r—   r˜   rµ   Ñ
  rÁ  c                      s&   t tttd ƒd td ƒd tˆ ƒS )Nr²   r·   r³   )rn   r5   r   r   r—   r³  r—   r˜   rµ   Ò
  rÂ  c                      s   t ttd ƒttƒ tˆ ƒS rÒ   )rn   r   r   r   r—   r³  r—   r˜   rµ   Ó
  s    c                      s    t ttdttd ƒ  ƒtˆ ƒS )NrØ   r·   r:  r—   r³  r—   r˜   rµ   Ô
  s     )r   rÁ   rn   r   r5   rS   r   r4   r3   r   r   rT  r]   rÃ   r—   r—   r³  r˜   Útest_issue_10158Ç
  s   ,24<::rµ  c               
   C   s¤   dt dt ƒ t } ttt d ƒ d ƒ}t| ttjƒttj|ƒks%J ‚t	t| tƒt
ttt dt t tt d ƒ  d tttd ƒƒd  ƒtjƒƒsPJ ‚d S )Nr·   i€Wíþi€¨r³   )r$   r   r   rS   r%   rn   r   rÁ   rT   r”   rP   r   rŠ   r   r   r   r   rÅ   )r‚   r  r—   r—   r˜   Útest_issue_14300×
  s   
ÿ
(ÿÿÿr¶  c                      s@   t td t d dƒ‰ tt‡ fdd„ƒ ttd ˆ tƒsJ ‚d S )NrØ   r·   r³   c                      s   t ˆ dtƒS rS  )rk   r   r—   ©Únumberr—   r˜   rµ   ä
  r¶   z"test_issue_14454.<locals>.<lambda>)rM   r   r]   rÃ   rk   r—   r—   r·  r˜   Útest_issue_14454â
  s   r¹  c                   C   sn   t dtd  dtd d tdƒd    ddtd d tdƒd     ttjƒttdƒtdƒ ƒks5J ‚d S )Nr{  r³   r  r·   rØ   r²   )rn   r   r   rT  rS   r3   r—   r—   r—   r˜   Útest_issue_17882è
  s   Pÿrº  c               	   C   s¬   t tdt d ƒƒddt gksJ ‚dtd  dtd   dtd   dtd   dtd   } tt| ƒƒdtd  dtd  dtd  dtd  ddtd  hksTJ ‚d S )Nr²   r³   r   rØ   r·   r¿   )rœ   rz   r   rN  )r6  r—   r—   r˜   Útest_term_factorsí
  s
   $<
4ÿr»  c                   C   sJ   t dt ttjƒtjksJ ‚t dt dtd   ttjƒtdƒks#J ‚d S )Nr²   r  rÌ   r¢  )rt   r   r   rÁ   rÄ   rS   r—   r—   r—   r˜   Útest_transolveö
  s   .r¼  c                  C   sl   dt  tt  tttt ƒ  t tttt ƒ  t d } t|  ¡ tƒttttdt  d ƒ ƒks4J ‚d S r@  )r   r   r‘   rE   rn   rs  rS   rH   r   r—   r—   r˜   Útest_issue_21276ü
  s   <0r½  c               
   C   s,  ddl m}  ddt  dtd   }dddt   ddt   }dt dt  }ttdƒt ƒdt  }tt|  ƒtt |  ƒ d }dtd  dtd   }dtd	  dtd   dtd	   dtd   dtd   }d
tdt d ƒ dtdt d	 ƒ  }dt dt  dt  d }	ddtd	   dt  ddt   }
t|ttjƒt	dtdƒ dtdƒ tdƒ  ƒks¼J ‚t|ttjƒt	t
ddƒƒksÌJ ‚t|ttjƒtjksØJ ‚t|ttjƒt	dƒksåJ ‚t|ttjƒttjt	| tdtt|  ƒ ƒ ƒƒksJ ‚t|ttjƒt	dƒksJ ‚t|ttjƒt	dƒksJ ‚t|ttjƒt	dtdƒ d dtdƒ d  t
ddƒ ƒks>J ‚t|	ttjƒt	dƒksLJ ‚t|
ttjƒt	tdƒ tdƒ tdƒ tdƒ tdƒ tdƒ  ƒksrJ ‚td
tdt d ƒ dtd	   tƒt	ddtdƒ  tdƒ tdƒd   ƒksJ ‚tdtd  dtd   tƒt	dƒks³J ‚tdƒttdƒƒ ttdƒƒ }tdtd  ddt   tƒt	| |ƒksÛJ ‚tdƒ\}}tdƒ}t||td   t|tƒ ƒ |tƒƒttjt	t||td   ƒ ƒƒksJ ‚tddd} ttd | d ttƒ  | ƒttjt	ttd ttƒ ƒ ttd ttƒ ƒƒƒks?J ‚tddd}td	| d	 |d	  |ƒ tttd	d	t  td	  dƒtjƒ¡shJ ‚tdt dt  d ttjƒdhks}J ‚tdt ddt   d ttjƒdhks”J ‚d S )Nr   rH  r²   r³   rØ   rÌ   r  rÔ   r·   rr  r   éT   é   ig  é{   i¦
  rË   rÿ   rÉ   rÍ   zC1 C2r‚   r   Tr°   rÀ   r  )r”  r   r   r$   r%   r‘   rn   r   rÁ   rS   r   rÄ   rT   re   r3   r   r   r   r    rO   r   )r   r[  r\  Úe3Úe4Úe5Úe6Úe7Úe8Úe9Úe10r~   ÚC1ÚC2r‚   rÀ   r—   r—   r˜   Útest_exponential_real  s\   <($
ÿ ÿBL&$ÿ, 0(ÿ.ÿ"
ÿ*2rË  c            	   	   C   sØ  t dƒ} ttdt dt  tƒtt| td|  t t  tdƒ ƒt	j
ƒƒs'J ‚ttt tt  d tƒttdƒttƒttƒ  ƒksDJ ‚ttdtd  dtd   tƒtt| d|  t t tdƒ ƒt	j
ƒƒsiJ ‚ttdt d tƒtt| td|  t t  dtdƒ  tdƒ ƒt	j
ƒƒsJ ‚dttd t ƒ d td d  }ttƒtttdƒƒ ttdƒd|  t t  ƒ ƒ }t|tƒt| |ƒksÊJ ‚tt| td|  t ttddƒ   tdƒ ƒt	j
ƒ}tt| td|  t ttddƒ   tdƒ ƒt	j
ƒ}ttdt dt  dt  tƒt||ƒƒsJ ‚dtd	  dtd   dtd	   dtd   dtd   }t|tƒ}d|  t t dtdƒ  dtdƒ  }d
tdƒ tdƒ }tt| || ƒt	j
ƒ}t||ƒsjJ ‚d S )NrŠ   r³   rØ   r²   rB  rÌ   rÿ   rÔ   r·   r   )r   r”   rg   r   rW   r   r   r   r%   r   rÅ   r‘   r   rS   rn   r$   r3   r   rV   )	rŠ   rû   r}   Úunion1Úunion2r\  ÚnumÚdenr  r—   r—   r˜   Útest_exponential_complex2  s2   $
ÿ
ÿ  
ÿ0
ÿ$6440<
(rÐ  c                  C   s‚  t tƒd t d } td t t d }dt t tƒ d }ttƒt tƒ }dt dt  dt  }t| ttjƒ ttt	t tƒd t d dƒtjƒ¡sNJ ‚t|ttjƒ ttt	ttd t  d dƒtjƒ¡sjJ ‚t|ttjƒ ttt	dt t tƒ d dƒtjƒ¡s†J ‚t|ttjƒ ttt	t tƒ ttƒ dƒtjƒ¡s¡J ‚t|ttjƒ ttt	dt dt  dt  dƒtjƒ¡s¿J ‚d S )Nr·   r³   r²   rÌ   r   )
r$   r   r   r%   rn   r   rÁ   r    rO   r   )r}  r~  rá  râ  rã  r—   r—   r˜   Útest_expo_conditionsetO  s(   
ÿ
ÿ
ÿ
ÿ"ÿrÑ  c            	      C   sx  t ddd\} }}t ddd\}}t||  | | tjƒttjtt|ƒt|ƒ ƒƒks,J ‚d| t  d|t   }| | t d }ttdƒt| ƒt|ƒ  htjƒ}ttdƒt| | ƒ htjƒ}t|ttjƒ|ksrJ t|ttjƒƒ‚t|ttjƒ|ks„J t|ttjƒƒ‚t| |  | t 	dt
¡ƒ ttttt dƒt dt
¡ƒ¡s¢J ‚t| | d	 |tjƒtdƒks³J ‚tt| | ƒt| | ƒ d |tjƒtt|tt| ƒ| dƒtt|ƒ| dƒ@ ttt| | tdƒ ƒtjƒtdƒƒƒtdƒƒksõJ ‚tt|| ƒt| | ƒ d |tjƒtt|| tdƒ ƒtdƒƒksJ ‚tt|  t|   | ƒ ttttdƒttdƒ@ tdƒƒ¡s:J ‚d S )
Nzx y zTr°   zxr, zrr¬   r³   rØ   r   r·   )r   rn   r   rÁ   rT   rS   r%   rŽ   rU   rw  r   r    rO   r   rÏ   r$   rR   r   r}   r~   r   )	r   r   r‘   ÚxrÚzrr}  r~  r¦   r§   r—   r—   r˜   Útest_exponential_symbolsc  s8   
ÿ"$$ÿ"&($ÿÿÿ&
ÿÿrÔ  c                  C   s@   t ddd} t dƒ}t| d d | ƒt|d d |ƒksJ ‚d S )Nr   Tr°   r³   rØ   )r   rg   )Úxposr   r—   r—   r˜   Útest_ignore_assumptions~  s
   ÿrÖ  c                   C   s*   t ttt  t ttjƒtdƒksJ ‚d S rÒ   )rn   r   r   r‘   r   rÁ   rS   r—   r—   r—   r˜   Útest_issue_10864†  s   *r×  c                   C   sX   t tttƒƒttt ƒƒ d tƒtdttdƒ d ƒ dttdƒd ƒ ƒks*J ‚d S )NrØ   r³   r²   )re   r3   r$   r   rS   r%   r—   r—   r—   r˜   Útest_solve_only_exp_2‹  s   "*ÿrØ  c                   C   sF  t ttƒdu s	J ‚t dt d tƒdu sJ ‚t dt ddt   tƒdu s'J ‚t tdt ƒdt  tƒdu s8J ‚t tt t tƒdu sEJ ‚t tt t tƒdu sRJ ‚t dt dt  d tƒdu scJ ‚t ttt  t tƒdu srJ ‚t tdt  dt  tƒdu sƒJ ‚t tt tt  tƒdu s’J ‚t tt tt  tƒdu s¡J ‚d S )	NFr²   r³   TrÌ   r  rØ   r·   )ru   r   r   rC   r‘   r—   r—   r—   r˜   Útest_is_exponential‘  s   """""rÙ  c                   C   s  t ddt  dtd   dttjƒtdtdƒ dtdƒ tdƒ  ƒks&J ‚t dt dt  dttjƒtttddƒtd	ƒd  ƒtdƒ ƒksIJ ‚t dt dt  dttjƒtj	ks\J ‚t dt dt  d	t  dttjƒt
ttdt dt  d	t  dƒtjƒks„J ‚d S )
Nr²   r³   r   rË   r   rØ   r·   r¿   rÌ   )rv   r   r   rÁ   rS   r%   r   r   r3   rÄ   rO   r   r—   r—   r—   r˜   Útest_solve_exponentialŸ  s   ""ÿ$ÿÿ"&ÿrÚ  c               
   C   s  t ttd ƒttd ƒ tƒttdƒ tdƒƒksJ ‚t ttd ƒtdt d ƒ tƒtdƒks2J ‚t ttd ƒtddt  ƒ d tƒt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  ƒks{J ‚tttƒ tttdtd td     ƒ } t | tƒt	t
jtttd tttƒ  ƒ ttd tttƒ  ƒƒƒt	t
jtttd ƒ ttd ƒƒƒ ksÈJ ‚t tdt ƒtt d ƒ tdt d ƒ tƒttddƒt
jƒksëJ ‚tttt ƒtttƒ  tt
jƒt
jksJ ‚d S )	Nr²   rÊ   r·   r³   rË   iôÿÿÿr¿   rØ   )re   r%   r   rS   r3   r$   r   r‘   r   rT   r   rÁ   rÂ   rn   r   r—   r—   r˜   Útest_logarithmic­  s,   
ÿ.&02
þ, ÿ"þÿ*ÿÿ2rÛ  c                  C   sz   t tdt ƒd ƒt ttƒ d ƒ t dƒ } t| tƒtju s!J ‚t dt ƒt ttƒd ƒ d } t| tƒtju s;J ‚d S )Nr³   r·   rÔ   )r%   r$   r   r)   re   r   rÄ   r3   r   r—   r—   r˜   Útest_uselogcombine_2¾  s   . rÜ  c                   C   s¼  t ttƒdu s	J ‚t ttƒtƒdu sJ ‚t ttƒd tƒdu s!J ‚t ttƒttƒ tƒdu s0J ‚t ttƒd tƒdu s=J ‚t ttd ƒttd ƒ tƒdu sPJ ‚t ttt ƒtttƒ  tƒdu scJ ‚t tttƒƒtƒdu spJ ‚t tt tƒdu s{J ‚t tdt ƒtdt ƒ d tƒdu sJ ‚t ttƒttƒ t tƒdu s¡J ‚t tttd ƒƒttd ƒ tƒdu s¶J ‚t ttdƒt ƒttƒ tƒdu sÉJ ‚t ttƒtd  ttƒ tƒdu sÜJ ‚d S )NFTr²   r³   r·   rØ   )rw   r   r   r%   rC   r—   r—   r—   r˜   Útest_is_logarithmicÆ  s   &&*"*&*rÝ  c                  C   sn   t dƒ} ttt|  ƒ| ttƒ  dttjƒtjksJ ‚t ddd} tttƒt| ƒ dttjƒtdƒks5J ‚d S )Nr   r   Tr°   r·   )r   ry   r%   r   r   rÁ   rS   rH  r—   r—   r˜   Útest_solve_logarithm×  s   .,rÞ  c                  C   sÜ  t dƒ\} }}ttd tƒdu sJ ‚t| td  |t  | tƒdu s%J ‚ttd tƒdu s0J ‚tttd  tƒdu s=J ‚tdttƒ ttdƒ  tƒdu sPJ ‚ttttd ƒƒttd ƒ tƒdu seJ ‚tdt d dtddt  ƒ  tƒdu s|J ‚t| t ttd ƒ  td¡tƒdu s‘J ‚ttd dt  d  tttƒdt  d d ¡tƒdu s°J ‚ttttƒ d tƒdu s¿J ‚ttt	tƒ d tƒdu sÎJ ‚tt
tƒdt  tƒdu sÝJ ‚tttƒttƒ tƒdu sìJ ‚d S )	Nza,b,cr³   FTr²   rÌ   r·   r  )r   rx   r   r   r%   r$   r	   rà   r'   r?   r)   r(   )r}   r~   r   r—   r—   r˜   Útest_is_lambertá  s   &&*.*>"rß  c                      sd  ddl m‰  ˆ dtƒddgksJ ‚tdd„ ˆ dtƒD ƒƒsJ ‚ˆ tdt  d ttƒg d¢ks1J ‚ˆ tdt  d ttƒg d¢ksCJ ‚ˆ tdtd   d ttd ƒg d¢ksYJ ‚tt‡ fd	d
„ƒ tt‡ fdd
„ƒ tt‡ fdd
„ƒ ˆ ttt  ttƒttdgks…J ‚ˆ dttƒg d¢ks‘J ‚ˆ tttt ƒttddtdiks¤J ‚ˆ dttddi ks°J ‚d S )Nr   ©Úlinear_coeffsc                 s   s    | ]}|t ju V  qd S r“   )r   r/  r÷   r—   r—   r˜   r™   ÷  r  z%test_linear_coeffs.<locals>.<genexpr>r³   r²   rÃ  )r³   r·   r²   c                      s$   ˆ t dt d   t d  t t d ƒS rJ  r´   r—   rà  r—   r˜   rµ   û  s   $z$test_linear_coeffs.<locals>.<lambda>c                      s   ˆ dt  t d  dt   t ƒS rÒ   r´   r—   rà  r—   r˜   rµ   ý  ó   c                      s   ˆ t t t ƒS r“   r´   r—   rà  r—   r˜   rµ   ÿ  s   rº   )r   r   rº   T)Údictr¿   )	r’  rá  r   rž   r   r]   rÃ   r}   r   r—   r—   rà  r˜   Útest_linear_coeffsô  s   $$,"&rä  c                   C   sJ  t ttƒdu s	J ‚t ttdƒd tƒdu sJ ‚t ttd dtd   t d dƒd tƒdu s1J ‚t tttt ƒdƒd tƒdu sCJ ‚t tttt ƒdƒttƒ tƒdu sWJ ‚t ttdƒd tƒdu seJ ‚t ttdƒd d tƒdu suJ ‚t ttdƒd t tƒdu s…J ‚t tttdƒƒd tƒdu s•J ‚t tdtƒd tƒdu s£J ‚d S )NFr²   r·   Tr³   rÌ   )r{   r   r   r
   r$   r%   r—   r—   r—   r˜   Útest_is_modular  s   4$(    rå  c                  C   s  t ddd} ddlm} |ttdƒtdƒd | tƒttjfks!J ‚|tttƒd	ƒtd
ƒ| tƒtttƒd	ƒd
fks:J ‚|tttƒd	ƒtd
ƒ| tƒtttƒd	ƒd
fksSJ ‚|tt	tƒd	ƒtd
ƒ| tƒtt	tƒd	ƒd
fkslJ ‚t
|ttd	ƒtd
ƒ| tƒttt| d	|  d
 ƒtjƒfƒsŠJ ‚t
|ttd d	ƒtd
ƒ| tƒttt| d	|  d ƒtjƒfƒsªJ ‚|ttd t d	ƒtd
ƒ| tƒttd t d	ƒd
fksÇJ ‚t
|tdt d	ƒtd
ƒ| tƒttt| d	|  d ƒtjƒfƒsçJ ‚|ttd td  d	ƒtd
ƒ| tƒttd td  d	ƒd
fks	J ‚|ttd d	ƒtd
ƒ| tƒttjfksJ ‚t
|tdt dƒtdƒ| tƒttt| d|  d ƒtjƒfƒs@J ‚t
|tdtd t d  d	ƒtdƒ| tƒtd t d tt| d|  d ƒtjƒfƒsmJ ‚|tttƒd d	ƒtd
ƒ| tƒttjfks…J ‚d S )NrŠ   T©Úintegerr   )Ú_invert_modularr  r·   r³   r  rÌ   rÔ   rØ   r²   )r   r’  rè  r
   r   r   rÄ   rC   r$   r%   r”   rP   r   rÅ   rÎ   )rŠ   Úinvert_modularr—   r—   r˜   Útest_invert_modular  s>   *222ÿÿÿÿ"
ÿ
ÿ
ÿ((
ÿ4rê  c                  C   s.	  t ddd} tttdƒt ttjƒ tttt ttdƒ dƒtjƒ¡s%J ‚tdtt	tƒdƒ ttjƒ ttttt	tƒdƒd dƒtjƒ¡sGJ ‚tdtt
tƒdƒ ttjƒ ttttt
tƒdƒd dƒtjƒ¡siJ ‚tdtttƒdƒ ttjƒ ttttttƒdƒd dƒtjƒ¡s‹J ‚tdttdƒ ttjƒtju sœJ ‚tdttdƒ ttjƒtju s­J ‚ttd	ttd
ƒ ttjƒtt| d
|  d	 ƒtjƒƒsÉJ ‚tdttd
ƒ ttjƒtju sÚJ ‚ttdttdƒ ttjƒtt| d|  d ƒtjƒƒsöJ ‚ttdtdt d dƒ ttjƒtt| d|  d ƒtjƒƒsJ ‚ttdtdt dƒ ttjƒtt| d|  d	 ƒtjƒƒs6J ‚ttttd	 dƒd ttjƒttt| d|  d ƒtjƒtt| d|  d ƒtjƒtt| d|  d ƒtjƒtt| d|  d ƒtjƒtt| d|  d ƒtjƒtt| d|  d ƒtjƒtt| d|  d ƒtjƒtt| d|  d ƒtjƒƒƒs«J ‚tdttd dƒ ttjƒtju s¿J ‚ttttd dƒd ttjƒttt| d|  d ƒtjƒtt| d|  d ƒtjƒtt| d|  d ƒtjƒtt| d|  d ƒtjƒƒƒsJ ‚tttdt dƒd ttjƒtt| d|  d ƒtjƒƒs#J ‚tttdt dƒd ttjƒtt| d|  d	 ƒtjƒƒsBJ ‚tttdt dƒd ttjƒtt| d	|  d ƒtjƒƒsaJ ‚tttd	t dƒd	 ttjƒtt| d|  d ƒtjƒƒs€J ‚tttddt  dƒd ttjƒttt| tt
d	|  d ƒt
dƒ htjƒƒtjƒtjƒƒs°J ‚tttd dƒd	 ttjƒtju sÄJ ‚ttttd dƒd ttjƒtt| d|  d ƒtjƒƒsãJ ‚ttttd dƒd ttjƒttt| d|  d ƒtjƒtt| d|  d ƒtjƒƒƒsJ ‚ttdtdt d dƒ ttjƒttt| d|  d ƒtjƒtjƒƒs5J ‚tttdƒt ttjƒtjksGJ ‚tttt dƒd	 ttjƒ tttttt dƒd	 dƒtjƒ¡sjJ ‚tttt dƒd	 ttjƒ tttttt dƒd	 dƒtjƒ¡sJ ‚ttttd dƒd ttjƒttt| d|  d ƒtjƒtt| d|  d ƒtjƒƒƒsºJ ‚ttttd  d!ƒd" ttjƒtt| d!|  d  ƒtjƒƒsÙJ ‚tddd} d#}d$}d%}d&}tt|t||  | |ƒ | tjƒtt| d'|  d( ƒtjƒƒsJ ‚tt|t||  | |ƒ | tjƒttt| d'|  d( ƒtjƒtjƒƒs-J ‚tt|t|d	|   | |ƒ | tjƒttt| d)|  d* ƒtjƒtjƒƒsTJ ‚t|t|d	|  d  | |ƒ | tjƒtju snJ ‚tt|t|| d  | |ƒ | tjƒttt| d'|  d+ ƒtjƒtjƒƒs•J ‚d S ),NrŠ   Træ  rØ   r   r²   r  rÌ   r³   rË   rÔ   é    r  r  rk  éM   éS   é]   é“   é   r  r  r.  é)   rÿ   r%  é   rj  rÍ   r·   ri  r¾   éJ   r&  i­VH,i½.qiÿÿÿi@È3iþÿÿr¹   iÿÿÿ?é2   ra  )r   rn   r
   r   r   rÅ   r    rO   r   rC   r%   r$   rÄ   r”   rP   r   rV   rÎ   rT   r   r   )rŠ   r}   r~   r‰   r   r—   r—   r˜   Útest_solve_modular6  s  ÿÿÿ ÿÿ ÿÿÿÿ""ÿ"ÿ 
ÿ
ÿù
ÿ(	ý
ÿ
ÿ
ÿ
ÿ
ÿ "ÿÿÿ
ÿ(
ÿÿ
ÿ  
ÿ
ÿ ÿÿ ÿÿÿ
ÿ
ÿ 
ÿ ÿ
ÿ$ÿ
ÿ4$ÿÿrõ  c                   C   sd   t ttdtdƒd  ƒttt dtdƒ ƒgttƒtdtdƒd  ddtdƒd   fƒks0J ‚d S )NrÌ   r·   rq  r²   rÊ   )rq   r   r   r   r   r3   rS   r—   r—   r—   r˜   Útest_issue_17276¡  s   2&ÿrö  c                  C   s¸   t dƒ} tdƒ}t dƒ}tt| | ƒt| ƒ |ƒ t dƒ¡ttt|d| t ƒt	j
ƒtt	jtt|t td| t ttdt |  ƒ ƒ  dt| ƒ   ƒt	j
ƒƒƒ t dƒ¡ksZJ ‚d S )Nr   r}   rŠ   r³   r   zx,n)r   r   rn   rC   r    rV   rP   r   r   r   rÅ   rT   rT  r   r   r$   r   )r   r}   rŠ   r—   r—   r˜   Útest_issue_10426¦  s   $Dÿþ
ýr÷  c                   C   s(   t ttƒd t ƒtdt ƒksJ ‚dS )z,Test solveset for simple conjugate functionsr²   N)rn   r"   r   r   rS   r—   r—   r—   r˜   Útest_solveset_conjugate°  s   (rø  c            '      C   s”  t dƒt dƒ } | \}}}}}}}}}	}
}}}}}}}}}}}}}}}}}}g || | | 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}t|| ƒ\}} d$d%„ t| |ƒD ƒ}!t|| ƒ|!ks·J ‚tt|Ž ƒ}"t|| ƒ|"ksÇJ ‚t|| f| ƒ|"ksÓJ ‚| | ¡\}#}$t|#ƒ}#|" 	t|||||g|$ƒ¡}%tt|#Ž ƒ|%ksöJ ‚td| |d d	| |d| |d d| |dddddddddd| | d || d  d| |d"| |d#| || | | d  || | d! fƒ}&t
|| ƒ|&ksHJ ‚d S )&Nzx0:16zy0:12r_  é.   é'   rô  é#   é"   rp  rq  é,   r¿  rZ  é5   é8   rl  é4   r'  é0   é<   r³   rÌ   r·   rÍ   rò  r  rÙ   é&   rÊ   r  rÔ   é   r²   é!   r  c                 S   s   i | ]\}}||kr||“qS r—   r—   )r–   rg  rû   r—   r—   r˜   Ú
<dictcomp>æ  r¯  z$test_issue_18208.<locals>.<dictcomp>)r   rh   rŸ   rd   rS   r   ri   Úgauss_jordan_solverœ   rà   rq   )'Ú	variablesrÕ  r¿  rÀ  rÍ  rÎ  Úx5Úx6Úx7Úx8Úx9Úx10Úx11Úx12Úx13Úx14Úx15Úy0rb  rd  re  Úy4Úy5Úy6Úy7Úy8Úy9Úy10Úy11rÛ  Úexpectedr‡  r~   Úsolve_expectedÚlinsolve_expectedÚgj_solveÚnew_varsÚgj_expectedÚnonlinsolve_expectedr—   r—   r˜   Útest_issue_18208µ  s¼   "ÿÿþýüûúùø	÷
öõôóòñðïîíìëêéèçæåäãâá à!ß"Þ($*.ý"	$(ýr$  c                  C   sª  t dƒ\} }}}}}}}}}	}
}}}}}}}}}}}}}||||||||||	|||||g}| | ||  | | | | | ||  |	 | | ||  | | | | ||  | | | ||  | | | | ||  | | | | ||  | | ||  |  ||  ||  | ||  ||  | ||  ||  | ||  ||  | | |	 | |
 | | | | | | | | | | | |
||||g}tdtt|ƒtdƒƒddddddddddd||f|tt|ƒtdƒƒd|ddddddddd| | | | fdtt|ƒtdƒƒd|dddddddd| | | | | |fdtt|ƒtdƒƒd|ddddddd| | | | | | ||fƒ}|t||ƒksSJ ‚d S )Nzja00, a01, a10, a11, l0, l1, l2, l3, m0, m1, m2, m3, m4, m5, m6, m7, c00, c01, c10, c11, p00, p01, p10, p11r   r·   r)  )Úa00Úa01Úa10Úa11Úl0Úl1Úl2Úl3Úm0Úm1Úm2Úm3Úm4Úm5Úm6Úm7Úc00Úc01Úc10Úc11Úp00Úp01Úp10Úp11Úsolveforrê  rÝ   r—   r—   r˜   Ú*test_substitution_with_infeasible_solution  sJ   4ÿ"ç.:>Bür>  c                   C   s   t dttƒ ƒtju sJ ‚d S rÒ   r;  r—   r—   r—   r˜   Útest_issue_200970  râ  r?  c                   C   s*   t ttdt t ƒƒƒtddƒksJ ‚d S )Nr·   r¿   )rn   r	   r3   r   rS   r—   r—   r—   r˜   Útest_issue_153504  s   *r@  c                  C   sä   t dtdk ftdtƒd tdtƒd  tdtƒd  dfƒ} t t dtdk ftdtƒd tdtƒd  tdtƒd  dfƒtdkfdƒ}tddƒ}t| tddƒ ttddƒƒ}t|tddƒ ttddƒƒ}||ksjJ ‚||kspJ ‚d S )Nr   r·   r³   r²   TrL  )r6   r   r4   rU   rn   r   )r   Úc2Úcorrect_resultÚresult1Úresult2r—   r—   r˜   Útest_issue_183598  s   <J
rE  c                  C   sX   ddt  d   tt d ƒ tt d   } t| t ƒsJ ‚t| dt tjƒtdƒks*J ‚d S )Nr³   r²   ri  r   )r   r$   r   ru   rv   r   rT  rS   )rÆ   r—   r—   r˜   Útest_issue_17604B  s   * rF  c                   C   s,   t ddtd  d  ttjƒtju sJ ‚d S rW  )rn   r   r   rÁ   rÄ   r—   r—   r—   r˜   Útest_issue_17580H  s   ,rG  c                  C   s\   dt  dt  d dt  dt  d g} t| t tƒttddt  ƒtdƒ tfƒks,J ‚d S )Nr³   r²   rØ   r  rÌ   )r   r   rq   rS   r%   )rõ  r—   r—   r˜   Útest_issue_17566_actualL  s   (4rH  c                  C   sˆ   t dtd d  dtd tdƒd    dtd  td tdƒd    dƒ} tt dtddƒ ¡tdtƒƒ}t| tt	j
ƒ|ksBJ ‚d S )Nr³   r²   r·   r   r¿   rØ   )r   r   r   rV   rU   rw  r   r   rn   r   rÁ   )rû   r\  r—   r—   r˜   Útest_issue_17565R  s   N rI  c                  C   s@   t d tt d  dt   ƒ } t| t tjƒttdƒƒksJ ‚d S )NrÌ   r³   rÊ   rÉ   )r   r3   rn   r   rÁ   rS   r   )Úfunctionr—   r—   r˜   Útest_issue_15024X  s   "rK  c                
   C   sd   t ttd ttƒgttƒtdtttdt t	 ƒt
jƒfdtttdt t	 t	 ƒt
jƒfƒƒs0J ‚d S rë   )r”   rq   r   rC   r   rS   rP   r   rŠ   r   r   rÅ   r—   r—   r—   r˜   Útest_issue_16877]  s
    ÿÿrL  c                   C   s˜   t tttƒdt dt  gttƒttttdt t	 ƒt
jƒttttt	 ƒt
jƒftttdt t	 t	 ƒt
jƒttttt	 t	d  ƒt
jƒfƒƒsJJ ‚d S ©Nr³   rØ   )r”   rq   rC   r   r   rS   rP   r   rŠ   r   r   rÅ   r—   r—   r—   r˜   Útest_issue_16876d  s    ÿÿþÿrN  c                  C   s    t dƒ\} }t ddd}t| | | | tjƒt| t| | | dƒtjƒks'J ‚t ddd\}}|| }t| | | | tjƒt| t| | | dƒtjƒksNJ ‚d S )Nzx zr   T)Úrationalr   ze1 e2)Úeven)r   rn   r   rÁ   rO   r   )r   r‘   r   r[  r\  r—   r—   r˜   Útest_issue_21236m  s   6:rQ  c                   C   sH   t td dt  td  ttƒ dt ttƒ gttƒddhks"J ‚d S )Nr³   r   )r   r   rü  )rq   r   r   r$   r—   r—   r—   r˜   Útest_issue_21908v  s   6ÿrR  c            
      C   s  t t d td d g} dd„ | D ƒ}dt tfdt t fh}t| t tgƒ}t|t tgƒ}||  kr9|ks<J ‚ J ‚t t d td d g}dd„ |D ƒ}t t fttfh}t|t tgƒ}t|t tgƒ}	|	|  krr|ksuJ ‚ J ‚ttt dt   dt  ƒgt gƒttjfƒksJ ‚d S )Nr·   r³   c                 S   ó   g | ]}t |d ƒ‘qS ©r   ©r   r÷   r—   r—   r˜   rø   ~  rŸ  z$test_issue_19144.<locals>.<listcomp>c                 S   rS  rT  rU  r÷   r—   r—   r˜   rø   …  rŸ  )r   r   r   rq   r   rS   r   rÄ   )
rœ  rý  ró  Ú
soln_expr1Úsoln_eq1r  rþ  r  Ú
soln_expr2Úsoln_eq2r—   r—   r˜   Útest_issue_19144{  s   4rZ  c                  C   s¨   t dt dt dttƒ  d  tdt ƒ dt tdt ƒ dt tdt t ƒ  dtdt t ƒ  d fttƒ} tttjfttƒ tj tfƒ}| |ksRJ ‚d S )NrØ   r³   r·   )rq   r   r   r$   rS   r   r/  rÂ   )r\  Úsolsr—   r—   r˜   Útest_issue_22413Ž  s   ,Bÿþ r\  c                  C   sÈ   t dtttdt  d ƒ t ƒt tdt ƒt ddt t ƒg} dd„ | D ƒ}dh}tt| tttgƒ|ƒ tt|tttgƒ|ƒ td	t dd	t   d ƒ}d
t | dt  }tt|tƒddhƒ d S )Ng}ŒjýÉJ@g      @r·   gú~j¼t“X?g¸…ëQ¥¾@c                 S   s   g | ]}|j |j ‘qS r—   )rÆ   Úrhs)r–   rû   r—   r—   r˜   rø     r  z$test_issue_23318.<locals>.<listcomp>)gO]¤¯p@g¹;Üõfl¡?g~adOºAgIüò¿x©‰>gú~j¼t“X¿gF„¿Ó­{å>r   g\adOºA)	r   r   r%   r   r‘   r«   rq   r¨   rn   )Úeqs_eqÚeqs_exprrÝ   Úlogtermrû   r—   r—   r˜   Útest_issue_23318—  s    ýra  c                   C   s^   t dt ddt   ddt  ddt   gttƒttddt  ƒtdƒ tjfƒks-J ‚d S rM  )rq   r‰   rŠ   rS   r%   r   rT  r—   r—   r—   r˜   Útest_issue_19814©  s   2 ÿrb  c                  C   sh   t ttƒ td  dt  ttƒ ttjƒ} |  tdi¡dtdƒ dtdƒ hks2J |  tdi¡ƒ‚d S r@  )rn   r3   r   r   r   rÁ   Úxreplacer9  r—   r—   r˜   Útest_issue_22058®  s   ,<rd  c                   C   sJ   t dttd ttd  td  ƒd d  ƒ d ttjƒtju s#J ‚d S )NrÙ   r³   rÊ   r  )rn   r3   r   r   rÁ   rÄ   r—   r—   r—   r˜   Útest_issue_11184´  s   Jre  c                  C   s<  t dƒd } tdtd  td  dt  dtd  td  dt  gttƒd|  dt  tfd|   d d|  tdƒ t d  t tfd|   d d|  tdƒ t d  t tfhks_J ‚tddtd   tdtd  dtd   ƒ dt t tdtd  ƒ tdtd  ƒ gttƒt dƒ d dft dƒd dfhks¢J ‚tdd	d
\}}td|d  |d  d|  d|d  |d  d|  g||ƒ}dt dƒd  d|  |fdt dƒd   d dt dƒd  tdƒ t d  | |fdt dƒd   d dt dƒd  tdƒ t d  | |fh}||ksJ ‚d S )Nr³   r²   rØ   r·   r   rð   r   rY  Tr¬   )r   rq   r   r   r3   r   r$   r   )r   ÚrxÚryrÝ   r  r—   r—   r˜   Útest_issue_21890¸  s&   >>,
þ,*ÿÿ ÿ@<<þrh  c                   C   sl   t td td td td dt gtttƒtjksJ ‚t td d tt td d gttgƒtjks4J ‚d S )Nr·   r³   rØ   r   r²   )rq   r„   r‡   r‚   r   rÄ   r   r   r—   r—   r—   r˜   Útest_issue_22628Ç  s   66ri  c                   C   s&   t ttd ƒt ƒdtjgksJ ‚d S r¥  )rd   r3   r   r   rÂ   r—   r—   r—   r˜   Útest_issue_25781Ì  s   &rj  c                  C   sÂ   t dƒ} ttdt ƒ }t|ttjƒ}ttt| d|  t	 d ƒtj
ƒtt| d|  t	 d t	d  ƒtj
ƒƒ}ttttdtdt ƒd  d  tdt ƒ dƒttj|ƒƒ}| ¡ | ¡ ks_J ‚d S )NÚ_nrÌ   r³   rÉ   r   )r   r   r@   r   r   rÁ   rV   rP   r   r   rÅ   rO   r   rR   Úas_dummy)rk  rJ  Úcritical_pointsÚexcluded_pointsrš  r—   r—   r˜   Útest_issue_26077Ð  s   $þ,
þro  N(}  Úmathr   Úsympy.calculus.utilr   Úsympy.core.containersr   Úsympy.core.functionr   r   r   r	   Úsympy.core.modr
   Úsympy.core.numbersr   r   r   r   r   r   r   Úsympy.core.relationalr   r   r   r   Úsympy.core.singletonr   Úsympy.core.sortingr   Úsympy.core.symbolr   r   r   r|  r   Ú$sympy.functions.elementary.complexesr   r   r   r    r!   r"   Ú&sympy.functions.elementary.exponentialr#   r$   r%   Ú%sympy.functions.elementary.hyperbolicr&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   Ú(sympy.functions.elementary.miscellaneousr3   r4   r5   Ú$sympy.functions.elementary.piecewiser6   Ú(sympy.functions.elementary.trigonometricr7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   Ú'sympy.functions.special.error_functionsrE   rF   rG   rH   rO  rI   Úsympy.matrices.denserJ   r²  Úsympy.matrices.immutablerK   Úsympy.polys.polytoolsrL   Úsympy.polys.rootoftoolsrM   Úsympy.sets.containsrN   Úsympy.sets.conditionsetrO   Úsympy.sets.fancysetsrP   rQ   Úsympy.sets.setsrR   rS   rT   rU   rV   rW   rX   Úsympy.simplifyrY   Úsympy.tensor.indexedrZ   Úsympy.utilities.iterablesr[   Úsympy.testing.pytestr\   r]   r^   r_   r`   ra   Úsympy.core.randomrb   r[  rÌ  rc   Úsympy.solversrd   r’  re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r”  r}   r~   r   r€   r   r‚   rƒ   r„   r…   r†   r‡   rˆ   r‰   rŠ   r‹   rŒ   r   rŽ   r   r   r‘   r”   r¨   r«   rÈ   rÑ   rÕ   rÖ   r×   rÞ   ræ   rè   ré   rì   rñ   rò   rü   rþ   r  r  r  r  r!  r,  r-  r0  r1  r3  r4  r5  r6  r7  r8  r9  r?  rA  rB  rD  rF  rG  rI  rK  rQ  rR  rU  rX  r]  r_  rb  rc  rd  re  ro  rt  ry  rz  r|  r  r  r‚  r…  r†  rˆ  rŒ  r•  r–  r—  r™  r›  rž  r¡  r§  r¨  r·  r¸  r¹  r×  rß  rà  ré  rì  rí  rò  rô  rú  r  r  r  r  r  r  r  r$  r(  r3  r5  r7  r:  r<  r=  rA  rD  rE  rF  rM  rP  rQ  rS  rX  r]  rm  ro  rq  rr  rs  rv  rx  r  r€  r‚  rƒ  r†  r‡  rˆ  r‰  rŠ  r‹  rŒ  r  rŽ  r  r  r“  r—  r  rž  rŸ  r   r¡  r¢  r£  r¤  r¦  r§  r©  rª  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@  rE  rF  rG  rH  rI  rK  rL  rN  rQ  rR  rZ  r\  ra  rb  rd  re  rh  ri  rj  ro  r—   r—   r—   r˜   Ú<module>   s   $ <@$ h\	

 ,
	;
'I

!	
!"

	
\bE+ 

V

$
/

9
o

	

 

	








G














			
	
	0
!k
R)
			