K ih JdZddlmZmZmZddlmZddlmZm Z m Z ddl m Z m Z mZddlmZddlmZmZddlmZdd lmZmZmZdd lmZdd lmZdd lmZdd l m!Z!m"Z"m#Z#m$Z$m%Z%ddl&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0ddl1m2Z2ddl3m4Z4m5Z5ddl6m7Z7ddl8m9Z9m:Z:ddl;mm?Z?e d\ Z@ZAZBZCZDZEZFZGZHZIdZJdZKdZLdZMdZNdZOdZPdZQdZRd ZSd!ZTd"ZUd#ZVd$ZWd%ZXd&ZYd'ZZd(Z[d)Z\d*Z]d+Z^d,Z_d-Z`d.Zad/Zbd0Zce:d1Zdd2Zed3Zfd4Zgd5Zhd6Zid7Zjy)8zBTests for algorithms for computing symbolic roots of polynomials. )IRationalpi)S)SymbolWildsymbols) conjugateimre)exp)rootsqrt) Piecewise)acoscossin)ZZ)Interval)powsimp)Polycyclotomic_poly intervalsnrootsrootof) root_factors roots_linearroots_quadratic roots_cubic roots_quartic roots_quinticroots_cyclotomicroots_binomialpreprocess_rootsroots) legendre_poly)PolynomialErrorUnsolvableFactorError)_nsort)raisesslow)verify_numericallyN)productza,b,c,d,e,q,t,x,y,zctd|D}t|d|t|d|k(sJt|t |dD]*}||dz||k(r||dzt ||k(r*yy)Nc3<K|]}|jrdndyw)rN)is_real.0is f/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/polys/tests/test_polyroots.py z_check..(s5!QYYA%5r0FT)sumsortedlistrangelenr )r%nrealixs r5_checkr@$s 5u5 5E %- Dv$7 77 7E3u:q)b1f r*b1f 59!55  cjttdtzdzttddgk(sJy)Nr8r0)rrxrrAr5test_roots_linearrF2s- QqS1Wa( )hr1o-> >> >rAc 8 ttdtdzztddgk(sJttdtdzzdtzzttdddgk(sJttdtdzzdztt t dzdz tt dzdz gk(sJttdtdzzdtzzdztdtt dzdz z dtt dzdz zgk(sJt tdtdzzdtzzdztjtdzdtztzdtztzzttz z tzzttz ttdzzzttdzzz ttz z z}tt|tt ttzzttz z t ttzttzzttzz ttzz dtztztdzzzttz z z t ttzzttz z t ttzttzzttzz ttzz dtztztdzzzttz z zgk(sJtttdzzdtzz dtzz t}t|t dtdzzdz tz dtz zt dtdzzdztz dtz zgk(sJttdztdz dz tzztdzzdzt}t|dtdzdzgk(sJtt dtdzzdz t}t|}|t|k(sJtd tdzzd tzz d z}|jd Dcgc]}|jdc}|jd Dcgc]}|jdc}k(sJt!dddD]C\}}}t|tdzz|tzz|z}t|}|t|k(rCJycc}wcc}w)Nr8rrCr0iiT)radicalsF)r8)rrC)rrrDrrrr@ all_rootsaecdbyr)nr-)frw_a_b_cr%s r5test_roots_quadraticr]6sM 4!Q$? +1v 55 5 4!Q$1 a0 1hr1oq5I II I 4!Q$ A. /QBtAwJqL!DG)A+3N NN N 4!Q$1 q 0!4 5"qay{:JBQRSWXYSZQZ[\Q\L\9] ]] ] 4!Q$1 q ! $ . . 01 1!A!A A&q((AEAadFNQq!tV,Ca!e+LLA 41: & QUQU d1Q319qs?QqS#81Q3q5A:#EFAN N QUQU d1Q319qs?QqS#81Q3q5A:#EFAN N P PP P Qq!tVac\AaC #A 1  qAvz  1 qs "D1a4!$4Q$61$<= >> > QTadUQYM !AqD (1 ,a0A 1  1a4!8    T!WQT\A q!AA q >> SAXA  #$AKKK6 7qACCF 7KKK7 8qACCF 8 99 9gw8& B AqD2a4"$ %"u %%%& 8 8s 1TTc ttdztztdzztzt}t|t tdz t dtzdz zdt t d tzdz tdz zdt tdz t dtzdz z dt t d tzdz tdz z dik(sJy)NrKr8r0)rrDrr%reqs r5test_issue_7724rbXs ad1fq!tma #B 9 QqS4719Q;  d1gXaZ\AaC  ! acDGAIaK  ! tAwhqjlQqS !!1 & && &rAc tdtddgtjt ttt}t ddt dzdz z |Dcgc]}|jt}}t|tt tjttk(sJtfd|DsJycc}w)Nr0rNrIr8c3K|]5}jtt|ijdddk(7yw)r8TchoprN)subsrUrDrV)r3r4pzs r5r6z"test_issue_8438..is7GQqvvq!Ql#%%ad%3q8Gs;>) rrUrDas_exprrrrrhsetall)r%rXpostrirjs @@r5test_issue_8438roas aB^Q'')A Q A &EQ!A#a%A"' (QAFF1aL (D ( t9 D1q)*+ ,, , G$G GG G )s$Cctdtdzzdz tttdzdzzj}t|sJttdzdtdzzzdzt}t dDcgc]}t ||}}ttdzdtdzzzdztj}||k(sJt|sJtdtdzzdz j}t|sJt tdtdzzdz jdk(sJycc}w)NrKr0r8r_rJ )rrDrOr@r<rr=)r%rWr4ros r5test_issue_8285rtls !AqD&1*a adQh / : : .s,ar!uz,s)rrDrr%rm)roots_eqras @r5test_issue_14522rs adQT219%%1dSUl(;;aQ>OORVVY]^_Y__ab cBRyH ,8, ,, ,rActttdzdtdzzz ttz zdz t}|dj tsJy)NrKrJr8rHr)r rtrDhas)sols r5test_issue_15076rsE QTAadF]QqS014a8 9C q6::a==rActtdzdtdztdzzz dtdzzzdtdztdzzz dtzzt}t|}d|vsJy)NrKrqr8rH@ir)rrDrr%)rars r5test_issue_16589rsg adQtAwYq!t^#a1f,r$q'z!Q$>aG KBRyH ==rAc Fttdtdzztgdk(sJtttdzdtdzzz dtzzdz tgdk(sJttd}tttdztz t||t j tdtzdz zz|t j tdtzdz z zgk(sJtttdzdz tdt j ttdzdz z t j ttdzdz zgk(sJttdtdzzdtdzzz dtzz dz tdt j dtddzdz zdtddzdz zk(sJtdz dtdzzzdtzzdz }t|dd tt|td cxk(rtdddtd zttd td zd z dz zdz zdtd zttd td zd z  dz tdz zzdz tddzdtd zttd td zd z  dz tdz zzdz tddzgk(sJJy)Nr8rH)rrrr0r0r0r0rCrT)trigmultiple)r rqrNrJ)rrrDrrUrHalfrrrr%rrrr)rXras r5test_roots_cubicrs tAadFA '9 44 4 tAqD1QT6MAaC/!3Q7 8I EE E Q A tAqD1Ha( )a AFF7T!WQYq[ ! AFF7T!WQYq[ !.# ## # tAqD2Iq) * QVVaQik !166Ad1gIaK#78 99 9 tAadFQq!tVOac1A5q9 :1 = !Xa^#A% %8Aq>(9!(; ; << < Q$1a4!A#  !B $ . tB{ . A48CQtBxZ^($??AA 48 CaRjn--a/"Q$6779HQNJ 48 CaRjn--a/"Q$6779HQNJ3      rAc tttdztgdk(sJtttdztdzztgdgdgdgdfvsJtttdztdzz tgdgd gd gd fvsJtttdztzt}tjt t dzd z ztjt t dzd z z tjtj g}t|t t|t k(sJtgdD]\}\}}}}|d k(r%| |d ztdz |td z z z}n;|dk(r6|||d ztddz|tdz z z|tdz zz}tdz|tdzzz|td zzz|tzz|z tt t}t fd|DrJtttztdz ztdzztdzzd td zzztddz t t }t fd|DsJtdd tdzd tdzzzdtd zzzt dzzzdz tt t} t fd| DsJtt tdzztdzztz zt t }td|DsJtddtdddtddtdd dtddddf} | D]J tt j# t}t fdt%||DrJJy) NrKrrrrrH)rCrrr)rrCrr)rrrCr)rrrrC)r0rrr)rr0rr)rrr0r)rrrr0r8key))r0r8rHr)rHi r0r8rHrKr)rrIrH)rIr_r)rJirIrqrc3pK|]-}jt|jddk(/yw)TrfrNrhrDrV)r3airas r5r6z%test_roots_quartic..s.B2771b>###.!3Bs36r0c3^K|]$}tjt|d&ywrr,rhrD)r3r4ras r5r6z%test_roots_quartic..s#A!"''!Q-3As*-rjT)negative r_c3hK|])}tjt|fdffd+yw)rCrNr)r3r4rarjs r5r6z%test_roots_quartic..s/OQ!"''Aq6Ar7*;".s1tAw)#1srC)rUrjrNc3`K|]%\}}t|j|z d'ywr)r,rh)r3rYsreps r5r6z%test_roots_quartic..s)Tda%affSkAoq9Ts+.)r rrDrrrrZeroOner:hash enumeraterrmqr rUrhzip)lhsrhsr4rPrTrRrSryrzansrepsrarrjs @@@r5test_roots_quarticrs adA '< 77 7 adQTk1- . 3   adQTk1- . 3   QTAXq) *C 66Ad1gIaK !DG)A+!5qvvv FC #4 F3D$9 99 9%&89 C.sB:a+Br7rKr8rHr_rCr0)anyr rrDrrErAr5test_issue_21287rssB] QTAqD!ac'N "QqS"q&\ 1A 5! ;Q?6ABBB BBrAcBtdzdz tdz dzdzdtdz dzzz dztdzdtdzzz dtdzzz dtzzd zf}|D]<tt}t|dk(sJt fd |Dryw)rrgh㈵>rfrNrrs r5r6z%test_roots_quintic..s7Jq2771acc"g&(((5:JsAA)rDr!rr=rm)eqsr%ras @r5test_roots_quinticrs a4!8 qS1WqL1acAg; & + qD3q!t8ObAg %Q . 4 6CKd2h'5zQJEJJJJKrAc ttdtddgk(sJttdtddgk(sJttdtdtddtt dzdz z tddtt dzdz zgk(sJttdtdt tgk(sJttdtdt jtt dzdz z t jtt dzdz zgk(sJttd tdttd z  tttd z zz ttd z  tttd z zztttdd z ttttdd zzz tttdd z ttttdd zzztttdd zttttdd zzz tttdd zttttdd zzzgk(sJttd tdt d dz tt dzdz z t d dz tt dzdz zt ddz tt dzdz z t ddz tt dzdz zgk(sJttd tdt d dz tdz z t d dz tdz zt ddz tdz z t ddz tdz zgk(sJttdtdd dgk(sJttdtdd dgk(sJttdtdd tdd dtddzgk(sJttdtdd t tgk(sJttd tdd tdd  tdd dz tdd dzdtdd dzz tdd ztdd dzzgk(sJttdtdd dtddz tddgk(sJy)Nr0Tpolysr8rCrHrKrJrdrqr)factorr_) r"rrDrrrrrrrrrrErAr5test_roots_cyclotomicrs OAq= >1# EE E OAq= >2$ FF F O 1D 'A471[\ ]] ] OAq= >A2q' II I O 1D  vv$q' ! 3QVVaQik5IJ KK K OAq= > RT Qs2a4y[ RT Qs2a4y[ RA  !C8Aq>(9$:":: RA  !C8Aq>(9$:":: Bx1~ 3r(1a.'8#9!99 Bx1~ 3r(1a.'8#9!99 C   OAq= > a QtAwYq[ a QtAwYq[  Q Ad1gIaK Q Ad1gIaK C   OB> ? a QqS a QqS Q AaC Q AaC D   1D)$ 8<=3 ?? ? 1D)$ 8<>4 @@ @ OAq=d K r1+rDQK'( )) ) OAq=d K Q   OAq=d K r1+R QR QT"a[!^8KdSUWXk8Y\`acef\gij\j8jk ll l OAq=d K T"a[$r1+& '' 'rAc Tttdtztdgk(sJttdtdzztgdk(sJttdtzdzttddgk(sJdtddzdz }ttdtdzzdzt| |tzz | |tzz||tzz ||tzzgk(sJt tttd zdz t d d }t d d }tt|tdzz|zt}tt|tdzz|zt}t|dt|dk(sJt|dt|dk(sJtddddD]H\}}}}||k(r|dk7rt|t|zz||zz} t| } | t| k(rHJttdtdzzdtdzzz tdtztddtdtzdz z zddtzddtztddtdtzdz zzdik(sJy)Nr_rrKrr8rNrrrHrqa1T) nonnegativeb1r0)r0r8)rCr0)r8rHrKr_rrC)r#rrDrrr@rrrr-r)r%rUr) Arrr0r1rPrTrrVrirys r5test_roots_binomialr7sx $qsA, 'A3 .. . $qAvq/ *l :: : $qsQw* +Q/@ @@ @ HQN2A $qAvz1- . acA2!8Q1Wa!A#g. // / >$q!tax. )* $ 'B $ 'B bAglA. /B R1Wr\1- .B 2a5>WRU^ ++ + 2a5>WRU^ ++ +ffg|D" 1a 6a1f  1a4!A# QfSk!!! " a1fr!Q$w&* + !Xb!_tAwqy{ *+Q !Q !Xb!_tAwqy{ *+Q00 00 0rAc  ttztdzztztz }t t |t\}}|dk(sJ|t ttztdzztztz tk(sJt dztdzzt dztdzzzt tzztz}t t |t\}}|dt z k(sJ|t tdztdzztztztk(sJt dztdzzt dztdzzztz}t t |t\}}|dt z k(sJ|t tdztdzztztk(sJt dztdzzt tzztz}t t |t\}}|dt z k(sJ|t tdztztztk(sJt dztdzztz}t t |t\}}|dt z k(sJ|t tdztztk(sJtd\}}}}d|dzz|dzz|dzz d|ztz|d zz|d zz|d zz zd |d zz|dzz|d zztdzz|d zz z d|dzz|dzz|dzztdzz|dzz zd|dzz|dzz|dzztdzz|dzz z d|dzz|dzz|dzztdzz|d zz zd|dzz|d zz|dzztd zzd|dzzz zd|z|z|d zztd zzd|dzzz z d|dzztdzzdz z}t t |t\}}|d|z|z||dzzz k(sJ|dtdzzdtd zzz dtd zzzdtdzzzdtdzzz dtdzzzdtdzzz dtzzd z k(sJt tdz tdzttzztttttf!}t tdz ttztttt!}t |t|fk(sJy)"Nr8r0rHE,F,J,L[r|)s2^rqr83ll8rd]$=,yrJr/@:r_rrD!^rKq Pyqidi Bi߰lul/1g&l glFW&kr}) rPrUrDrTr$rrRr r r)rWcoeffpolyEFJLgs r5test_roots_preprocessingrXs !AqD1 qA"41:.KE4 A:: 4!AqD1 q(!, ,, , 1QT AqDAI!#a'A"41:.KE4 AaC<< 41q!t a!+Q/ // / 1QT AqDAI!A"41:.KE4 AaC<< 41q!t a+ ++ + 1QT AaC!A"41:.KE4 AaC<< 41q1 a( (( ( 1QT A A"41:.KE4 AaC<< 41q!$ $$ $#JAq!Qad"1a4'2-1Qq!t#AqD(B. /Aad"1a4'1,QU2 3 q!tAqD A%ad*1b50 1 AqDAad"1a4'1,  - A ad1a41$QT)  * ad 1a41QT!1QT6*  + QqA adBq!tG$ % AqDA f A#41:.KE4 BqDFAadFO ## # 3q!t8fQTk)GAqDL89QT>IKXY[\X\L\\QT*1a4/02@2BCETU UU U adUQT#a&[ !Bq#a&yM:A adUSV^Qr#a&z2A A 1a& (( (rAcR.tdtik(sJttttjdik(sJttdzttjdik(sJttdz tdzztdz zj ttd dtddtddik(sJtdtzdztt dddik(sJtdtzdzdztt dddik(sJtdtzdzdztt dddik(sJtdtzdzdztt dddik(sJttdzdz tt dtjdtj dt dik(sJttdzdz dztt dtjdtj dt dik(sJtdtzdz dzj tt dddik(sJtdtzdzdzj tt d ddik(sJtdtzdz dzj tt dddik(sJtdtzdzdzj tt d ddik(sJtdtzdz dzj tt dddik(sJtdtzdzdzj tt d ddik(sJtttztz dzj tttz dik(sJtttztzdzj tt tz dik(sJttdzt dz tzztzttdtjdik(sJttdzdtdzzz dzttjdtjdik(sJttd zdtdzzz dtdzzztdzz ttjddtdz dtjddtdzdik(sJttd zdz ttddz t tdzdz zdtddz t tdzdz z dtd dz t tdzdz zdtd dz t tdzdz z dtjdtj dt dt dik(sJd tdzzd tdzzz dtdzzz dtdzzzdtd zzzdtdzzz dtd zzz dtdzzz }t|tjdtd dtddt dddt d ddt dddt dddik(sJtttztztzttztztzz tttztztzttztzz dik(sJttdztdzztz dztdik(sJttdz tdzztdz zj tdtd dtddtddik(sJttdz tdzztdz ztdz zj tdtd dtddtddtddik(sJttdzdtdzzzdtzzd zttd ddt zddt zdik(sJttdzdtdzzzdtzzd ztddt zddt zdtd dik(sJttdztz tdzdtdzzzdtzzd zzttjdtjdtd ddt zddt zdik(sJtjt dd}}dtdzdz|z}d|z dz }|dz }tdt zdz }||z }| |z }ttdztdzztz dztd| |z |z d| |z ||zz |z d| |z ||zz |z dik(sJtdzdtzzdzjtdtdzzdtzzjtdtzdz }dD cgc] } t |  c} \} } td} t|t| | tdd t z| zz zzd| | tdd t z| zz zz d| | tdd t z| zzzzd| | tdd t z| zzzz dik(sJtdztdzztdzztzdz}dD cgc] } t |  c} \} }}t|t| | d|zzzt ||d|zzz|zzzd| | d|zzzt ||d|zzz|zzz d| | d|zzz t ||d|zzz |zzzd| | d|zzz t ||d|zzz |zzz dik(sJt dzdt"z t dzzzddt"zzdtdzzz t zzt"z dtdzzz}t|t tjdtjtjt"zztjtddt"zz t"dzzd tdzzzzzdtjtjt"zztjtddt"zz t"dzzd tdzzzzz dik(sJtttztztdzzdtdzzzdtzzd ztdik(sJtttztztdzzdtdzzzdtzzd ztdik7sJttdzdz tdtjdtj dik(sJttdzdz td t dt dik(sJttdz tdzzttjdtj dik(sJttdz tdzztd!"tjdik(sJttdzdz tdd#tj tjgk(sJttdzdz td d#t t gk(sJt%d$d%\}}tdz||z dzzdtz||z zzdz}t|td&d||z z dik(sJttdztd'tjtjtjgk(sJtd(td'gk(sJtd ztdzz tdzztdzz tdzztz dz}t|t t't(dz zt+t(dz zdt t't(t ddzzt+t(t ddzz dt t't(t ddzzt+t(t ddzzdt t't(dz zt+t(dz zdt t't(t ddzzt+t(t ddzz dt t't(t ddzzt+t(t ddzzdik(sJtdzdz|dzzj }t|t t't(dz zt+t(dz zdt t't(t ddzzt+t(t ddzz dt t't(t ddzzt+t(t ddzzdt t't(dz zt+t(dz zdt t't(t ddzzt+t(t ddzz dt t't(t ddzzt+t(t ddzzdt dt dik(sJttdzd)tzzdz} | Dcgc]}|j,s|c}d*}d+d td,zz}|dt/|dzdz d-t/|dz zk(sJt1ddtdzztdzzd.dtdzz tdzzztd dz tzzdztd/0}t|dtdzdddtdzzdtd dzdik(sJt1d1tdzzd2tdztdzzzd3tdzzz d+tdztdzzz d4tdzzzd5tdztdzzzd6tdzzz d7tdztdzzz d8tdztzz d8tzz d9ztd/0}t|td dzdddtdzzddtdzdd:dtdzzdd dtdzzdik(sJt1tdzdtdzzz d tdztdzzzd tdztzz d;tzzdztest_roots0..s  rA) predicate)rrza, b)realRri(rli2rrr|r})}-rr)r%rDrrexpandrrrrPrT NegativeOnerrRrSrrhrjrUr rrrr1rr)rWr1_2r1_3x0x1x2x3x4x5rXr13_20r1_20s2r1_4r1_8r5_8arbrrirrx real_rootcrras r5 test_roots0rs A;"   A;1661+ %% % Aq>affa[ (( ( 1q51q5/1q5)113Q 7QqTE1adAqQRtUV;W WW W 1q! "a! 4 44 4 !A#'Aq !hr1oq%9 99 9 !A#'Aq !hr1oq%9 99 9 !A#'B "xA&; ;; ; A1 !Qq155&!aR!C CC C !Q$(Q "q!QUUAvq1"a&H HH H 1Q37Q,&&(! ,1a!0D DD D 1Q37Q,&&(! ,"a!0D DD D 1Q37Q,&&(! ,1a!0D DD D 1Q37Q,&&(! ,"a!0D DD D 1Q37Q,&&(! ,1a!0D DD D 1Q37Q,&&(! ,"a!0D DD D 1Q37Q,&&(! ,!A#q 99 9 1Q37Q,&&(! ,!Aq 99 9 A!a "Q& *q!QUUA.> >> > A!Q$"A &155!Q]]A*F FF F A!Q$1a4'!Q$. 2 2Q<AFFArDG|Q? @@ @ A1  Q Ad1gIaK Q Ad1gIaK a QtAwYq[ ! a QtAwYq[ ! q155&!QA2q "   ad T!Q$Yad*T!Q$Y6adB AqD q!t8  Ag &A 8AaD5!QqT1hr1oqQHROQAK KK K !a%!)Q!a%!)a-0! 4!a%!)a-!a%RS)9TVW8X XX X A1q1$a 6" << < 1q5 AA!E 389!ua1q!A$PQ6R SS S 1q51q5/1q5)1q5199;Qu M A$1Q4AaD!QqT1- .. . A!Q$1$q(! ,!A$2a4AaC0K KK K A!Q$1$q(!D 9 Aq!A#q1Q4%# $$ $ !Q$(QTAadF]QqS0145q : 1661qteQ1a1a8 99 9!Q$D DH*r/D B 2aB AB a1B dB tB A1q1$a 5 b4 BBq BBq:   A!aa1a4!A#.33AqsQw?A%' l'MFE aB A;tA!BJ'''tA!BJ'''tA!BJ'''tA!BJ'''    1q!t adQ"A/GI!1ID$ A; QW q$ag"5!<<(9$::A 3r(1a. !!C8Aq>(9$::A #bd) c"Q$i #b!Q  3r(1a.'8#991 #b!Q  3r(1a.'8#991    Q$(AqD  "A 8 3r!t9 s2a4y ! 3r(1a. !!C8Aq>(9$::A 3r(1a. !!C8Aq>(9$::A #bd) c"Q$i #b!Q  3r(1a.'8#991 #b!Q  3r(1a.'8#991 Aq!   adRTkBA.2::.q1I qd| B 4A;q(2d2qk>9 99 9 q1T!W9}ad"b1T!W9nad%::tAwhlA=MMPQQST]a bB 9d1gq"qay.!d1gX\1M MM M bAg47 1a4'#ad(2Sa[A5EE1H 47{1a4 "$QT'*,.tAwJq!tO<>@ajlKqD  B 9$q'Aq"qay.!R$q'\1aQiB47NA? ?? ? adQq!tVmaQi1n,qay{:RTABF tAwJ$ (B 9DGaBtAwJNAr$q'zA~qQ QQ Q q47{Q&*Ad; < q'DAJ$q'!)A+ 56 6 q'DAJ$q'!)A+ 56 6 q'DAJ  # ## #w'Jz/sA\2A\M7A\$N A\$c ltd\}}}}}|dz|z||z z||z|zz|z }|dz||||z z|zzz||z|z|z||z|z z z||z||z z z}tt||jddgk(sJtt||jddgk(sJtd\}}} } } } } || z || z z| | z z| | z| zz| z| z | z }|| z | z| z| || z z| zz| | z| | z zz}tt||z | jgdk(sJ|dzd|dzzzdz}tt|j }t d|Dcgc]$}|j ||jd &c}DrJy cc}w) z6Just test that calculating these roots does not hang. z a,b,c,d,xr8r0zzz,yy,xx,zy,zx,yx,krrHrqc3 K|]}|ywrrEr2s r5r6z"test_roots_slow..TsG1Gs TrfN)r r;r%valueskeysrrhrV)rPrTrRrSrDf1f2zzyyxxzyzxyxke1e2rWrris r5test_roots_slowr.@sK(MAq!Q Aa1Q3!A#a% ! #B Aq1a!e9Q; !A#a%'1Q37"3 3qsQqSy AB b! ##% &1a& 00 0 b! ##% &1a& 00 0")*?"@RRRQ q&26 BF #beBh . 3b 82 =B q&"R"b1f+b. (2b5"q&> 9B b2gq!((* +y 88 8 1qAv A U1X]]_AGAFbqvva}D9FGGG GGFs9)F1 cttdztzdztd}ttdztzdztd}t||D]\}}t||z dkrJtdzdt d ztd zzzd d t dzztdzzz d dt dzdzzz}t|d}d}t||D]\}}t||z dkrJy)Nr8r0Trg?g-q=rKg@g@rHgS@g8@gb@g"@)g؋~)g)c g3! @g @绽|=)r%rDrabsr)R1R2rr2rWs r5test_roots_inexactr5Ws q!tax!|Q .B q!tax#~q4 0Bb"+$B27|e###$ 1s49}QT!!TDcN%:AqD$@@ 49s" # $A q4 B .Bb"+$B27|e###$rActd\}}}}d|dzz|dzz|dzz d|ztz|dzz|dzz|dzz zd|d zz|d zz|d zztd zz|d zz z d |d zz|dzz|d zztdzz|dzz zd|dzz|dzz|dzztdzz|dzz z d|dzz|d zz|dzztd zz|d zz zd|d zz|d zz|d zztd zzd |dzzz zd|z|z|dzztdzzd|d zzz z d|dzztdzzdz z}t|tik(sJt|jtd}gd}t d}||z|z||d zzz }t |t |k(sJt ||D].\} } | j|} | t| || z dkr.Jy)NrrrqrrrdrrrJr8rrr_rHrrrrKrrrrrrTr)g?|YcgOXLzGX@g'I^g@g |۰n@gdZw@g5`e@gS$Ȫ@gJm@rYr0) r rDr%evalfrr=rmatchr1) rrrrrWr2r3rYrirr4r8s r5test_roots_preprocessedr9isv#JAq!Qad"1a4'2-1Qq!t#AqD(B. /Aad"1a4'1,QU2 3 q!tAqD A%ad*1b50 1 AqDAad"1a4'1,  - A ad1a41$QT)  * ad 1a41QT!1QT6*  + QqA adBq!tG$ % AqDA f A A;"   qwwy!d +B RB S A !AqAvA r7c"g  b"+@B  SqB%7%%???@rAcDttdzdtzz dzdddik(sJttdzdtzz dzdddik(sJttdzdtdzzz tdzz dtzzdz dddik(sJttd y) Nr8r0FstrictTrJr_rHcrttdzdtdzzz tdzz dtzzdz dS)NrJr8r_rHTr;)r%rDrErAr5rz#test_roots_strict..s5%1qAv 10Dqs0JQ0NW[*\rA)r%rDr*r(rErAr5test_roots_strictr>s A!a .1a& 88 8 A!a -!Q 77 7 A!Q$A%!+a/ >1a& HH H "\]rAc ddtzz dtdzzz dtdzzzdtdzzz }t|d \}}t|}t|d }|Dcgc]\\}}}t ||}}}}|Dcgc]E\\}}}t t |t |t t |t |zG}}}}||z}|D cgc]} | j}} t|d }t|d }||fD]C} t|| D]2\} } | jr| | vrJt | t | f| vr2JEycc}}}wcc}}}wcc} w)Nipiir8i rH1rKT)rmrc"|jSrsort_keyrDs r5rz"test_roots_mixed.. AJJLrArc"|jSrrBrDs r5rz"test_roots_mixed..rErA) rDrrr%rr r r7r:rr1) rW_re_im_nroots_srootsrPrT_ _intervalsrX_rootsr4s r5test_roots_mixedrNsv Qad"T!Q$Y.AqD8A%HCQiGA%G,/ 1 1yv1qHQN 1C 1  ?fq!  RUBqE "8BqE2a5#9 9 C sJ#*,a ,G,W"89GW"89GG$+ F+ +DAqyyAv v1r!u~***  ++ 2 -s"EA E#E*c `ttdttdtgk(sJtttttttgk(sJttdzdz ttdztdz gk(sJttdztz ttt tz tt tzgk(sJttdzdz dztdztdztdz tdz tt z tt z tt ztt zgk(sJtttdzdz tdttdztttdz tttdzdztgk(sJtdtdzzdtdzzzdtdzzztdzztd tttdzdtdzzzdtdzzzdzgk(sJy) Nr0r8rKrrrqrrJQ)rrrDrUrrrErAr5test_root_factorsrQs Q #Q | 33 3 Q #Q | 33 3 1q! $QA 66 6 1q! $T!Wa$q'k(B BB B AA & QAq1ua!eQUAE1q5!a%@ AA A QTAXq)# 6 a!eQa!eQadQh):; << < !Q$AqD(1QT61AqD8!C H Aq!ta1f}r!Q$w&*+ ,, ,rAcd}t|tdttjj fdj d}|Dcgc] }t|c}gdk(sJycc}w)NrTrc*jddS)NrHr_)rVmaxsteps)r)risr5rztest_nroots1..sAHHq1H,ErArHrV)@z-0.999z-0.996z-0.991z-0.983z-0.973z-0.961z-0.946z-0.930z-0.911z-0.889z-0.866z-0.841z-0.813z-0.784z-0.753z-0.720z-0.685z-0.649z-0.611z-0.572z-0.531z-0.489z-0.446z-0.402z-0.357z-0.311z-0.265z-0.217z-0.170z-0.121z-0.0730z-0.0243z0.0243z0.0730z0.121z0.170z0.217z0.265z0.311z0.357z0.402z0.446z0.489z0.531z0.572z0.611z0.649z0.685z0.720z0.753z0.784z0.813z0.841z0.866z0.889z0.911z0.930z0.946z0.961z0.973z0.983z0.991z0.996z0.999)r&rDr*mpmathmp NoConvergencerstr)rVr%rXris @r5 test_nroots1rZsi Aa$'A 699 " "$EF HHqHME" "qCF " K K K K "sA0c(ttdzdtzzdzt}|jd}|Dcgc] }t|c}gdk(sJ|jd}|Dcgc] }t|c}gdk(sJycc}wcc}w)Nr_rHr0rU)z-0.332z-0.839 - 0.944*Iz-0.839 + 0.944*Iz1.01 - 0.937*Iz1.01 + 0.937*I)z-0.33199z-0.83907 - 0.94385*Iz-0.83907 + 0.94385*Iz1.0051 - 0.93726*Iz1.0051 + 0.93726*I)rrDrrY)rir%rXs r5 test_nroots2r\s QTAaCZ!^QA HHqHME" "qCF " 4 44 4 HHqHME! "qCF " : :: : # #s B -Bc ttttdztdzt t zztzt ztddk(sJy)NrHr8T) composite)r=r%rrUrrDrErAr5test_roots_compositer_sB uT!Q$Ad1g-1A5qDIJ Kq PP PrAcvttdzttz dzttfdy)NrHr0ctSrrvr`sr5rz"test_issue_19113..s E"IrA)rrDr*r'r`s@r5test_issue_19113rbs) QSV a B ?-.rAcltddddtzz dzzdz dtzzdgd ddgk(sJy) Nr0rIrrKr8rqrrTr)r%rrErAr5test_issue_17454rdsA !RacA %a'"Q$.2T Bq!f LL LrActtdztjdgk(sJttdzdztjdtddz z gk(sJy)Nl l rHrKr8)rrD real_rootsrrErAr5test_issue_20913rgs` --q 1 < < >C]B^ ^^ ^ 1q!  ' ' )q1Q46{l^ ;; ;rAc 8tdd}dtz |ztdzd|zzz}ttttdzztdzdzzt|d| dt dt zzzdz d|dt dt zzzdz dik(sJy)Nr0rHrCr_r8)rrPr%rrDrr)rQrXs r5test_issue_22768risAA A 1q5AaC. A a1fAz)1- . 1 AQ M1a 2Q >1a3! !! !rA)k__doc__sympy.core.numbersrrrsympy.core.singletonrsympy.core.symbolrrr $sympy.functions.elementary.complexesr r r &sympy.functions.elementary.exponentialr (sympy.functions.elementary.miscellaneousrr$sympy.functions.elementary.piecewiser(sympy.functions.elementary.trigonometricrrrsympy.polys.domains.integerringrsympy.sets.setsrsympy.simplify.powsimpr sympy.polysrrrrrsympy.polys.polyrootsrrrrr r!r"r#r$r%sympy.polys.orthopolysr&sympy.polys.polyerrorsr'r(sympy.polys.polyutilsr)sympy.testing.pytestr*r+sympy.core.randomr,rV itertoolsr-rPrTrRrSrQrrrDrUrjr@rFr]rbrortrwrzrrrrrrrrrrrrr.r5r9r>rNrQrZr\r_rbrdrgrirErAr5r~sKH00"55DD6A:EE.$*HH???1(-0  ''<=1aAq!Q1 ?&D&H 4  -    .7UtB K-'`0B9)xj#XH.$$@:^+2 , KK*:"Q/ M< !rA