K i;dZddlmZmZddlmZmZmZddlm Z ddl m Z ddl m Z ddlmZddlmZdd lmZdd lmZdd lmZdd lmZdd lmZddlmZmZmZm Z m!Z!m"Z"ddl#m$Z$ddl%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0ddlm1Z1ddl2m3Z3ddl4m5Z5ddl6m7Z7m8Z8ddl9m:Z:dZ;dZdZ?dZ@dZAdZBdZCdZDy )!z6Tests for solvers of systems of polynomial equations. )ZZQQ_I)IIntegerRational)S)symbols)sqrt)QQ)UnsolvableFactorError)Options)Poly)CRootOf)solve)flatten)abcxyz)PolynomialError) solve_poly_systemsolve_triangulatedsolve_biquadratic SolveFailed solve_genericfactor_system_boolfactor_system_condfactor_system_poly factor_system _factor_sets_factor_sets_slow)parallel_poly_from_expr)raises)Eq)sincos)expc ttdz gttjfgk(sJtttz ttz dz gttJtttdzz ttdzzgtttj tj fgk(sJtdtzdz tt ddzdtzz tdtzz gtttt ddtdtdfgk(sJtttzdtzz dtdzztdzz gttddtd fdtdfgk(sJtttdzz ttdzzdzgttt ttjzt ddftttjzt ddfgk(sJtdztztzdz }ttdzztzdz }ttztdzzdz }tddz td dz }}t|||gtttdd d |||f|||fgk(sJd d g}tttdztdzz ttdz g|k(sJttdztdzz tdz gtt|k(sJttdztdzz tdz g|k(sJttttzzdz tttzzd z gttddgk(sJttdttdttdttdttdttdztz dzgtgdgk(sJtt dttdz tdztz dzztdzdz gttgdd d gk(sJtt dy)N )rrrrr+rr+rr+rrr+r0r+r+))r+r,cPttdztdzz gttS)Nr-rrrf/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/solvers/tests/test_polysys.pyz(test_solve_poly_system..@s(91a4!Q$;-A(Nr<cttdtztdzztztdztzztdzt dz zdzgS)Nr8r,r6)rrrrr;r<r=r>z(test_solve_poly_system..AsF(9 BqDAIMAqDF "AqD1"q&MA$56)8r<c2tdtz gtSNr+rrr;r<r=r>z(test_solve_poly_system..Cs$5qseQ$?r<c>ttdz gttfSrAr:r;r<r=r>z(test_solve_poly_system..E(9 Q3&1a&)r<c>ttdz gttfSrA)rrrr;r<r=r>z(test_solve_poly_system..GrDr<FstrictcLttdztz dzgtgdS)Nr.r+TrFrBr;r<r=r>z(test_solve_poly_system..Ms#*; AAD+*r<cttdz tdztz dzztdzdz gttgdS)Nr+r.r,TrFr:r;r<r=r>z(test_solve_poly_system..Ss9$q1uq!tax!|&> > a!Q$hAqD11a 8affaff=M !d1gXDG - .. . a!Q$hAqD1 5q! < "T!&&\/8B? +aQVV nhr1o-NO PP P Q$(Q, C ad(Q, C a%!Q$, C 7Q;a1 qA c3_aA 6 Iy1a)aAY? @@ @ H d1a4!Q$;/a!e= >( JJ J adQTk1q511a 8H DD D adQTk1q51 2h >> >  QqS1a!A#gk"Aq *.6-? @@ @  NO !89 ??@ ! ! adQhl^aS ?2 EE E #*+ q1uq!tax!|4adQh?!Q$) +/6.? @@ @  :;r<c ^tttfddittdzdtdzzz tdztz dzgt dt dt zz  t ddt dt zdz z ft dt dt zz t ddt dt zdz z ft dt dt zz t ddt dt zdz zft dt dt zzt ddt dt zdz zfgk(sJtdtztz tdz tdztz dzzgd t dddfgk(sJttfd y) Ndomainrr,r+r0r-r.FrFcvtdtztz tdz tdztz dzzgdS)Nr,r+r.TrF)rrr NewOptionsr=r>z$test_solve_generic..ds6- 1q1q51a4!8a<()9T+Cr<) r rrrr rrr%r rVs@r=test_solve_genericrXWsA4 01I !Q$1a4-AA6 B2Q >" "HQNT!WQYq[$@ A "tAwqy. !8Aq>DGAIaK#? @2Q >" "HQNT!WQYq[$@ A "tAwqy. !8Aq>DGAIaK#? @ B BB B  1q1q51a4!8a<()9U D 1a.!    #CDr<c^td\}}}}}tdz dztdz dzz|dzz }tdz dztdz dzz|dzz }td|dzzdz }d|z dz }d|zdz } t ||gtt|| f| |fgk(sJtdz dztdz dzz|dzz }tdz dztdz dzz|dzz }t ||gttdtd|zdz d|zdzzdz z t ddfdtd|zdz d|zdzzdz zt ddfgk(sJdtdz dztdz dzz|dzz }t|z dztdz dzz|dzz }t ||gtt} t | dk(rtd| DsJtfdt| DsJt|z dzt|z dzz|dzz }t|z dzt|z dzz|dzz }t ||gtt} t | dk(rtd| DsJtfd t| DsJttztz tdztz f} t| tditd td igk(sJttztz tdztz f} t| tditd td igk(sJttf} | | fD])}t|g| \\ttfd +tdztdzzdz tdzdz f}t|g| \\tgd k(sJd dg}tdztdzzdz tdzdz f}t|g| \\t|k(sJtdztdzzdz tdztz tdzzdz f}t|g| \\t|k(sJy)Nz x0 y0 x1 y1 rr+r,r-cV|jxr|jtjuSN)is_Powr)rrL)exprs r=r>z(test_solve_biquadratic..ys;QVV);r<c38K|]}t|dk(ywr,Nlen.0rs r= z)test_solve_biquadratic..#@ACFaK#@c3FK|]}|jdk(ywr+N)countrcrdquerys r=rez)test_solve_biquadratic..s.rfrgc3XK|]!}t|jdk(#ywri)rafindrks r=rez)test_solve_biquadratic..s#@1s166%=!Q&@s'*rctSr[)r)fgoptsr=r>z(test_solve_biquadratic..s$5aC$@r<))r0r0)r0r+r4r5)rr0)rr+)r rrr rrraallrrr$r%rr)x0y0x1y1rdrNrOsrrresults1s2gensseqansrqrrrsrls @@@@r=test_solve_biquadraticrhsu0BBA q51*Az !AqD (C q51*Az !AqD (C Qq!tVaZA Q A Q A c3ZA .Aq6Aq62B BB B q51*Az !AqD (C q51*Az !AqD (C c3ZA . dAaC!GacAg&') )8Aq> : dAaC!GacAg&') )8Aq> : < << < 1 %wq!taczA~q'AqA sCoq!Q$ G Iy1a)aAY? @@ @r<cNttdz dzdz ttddz dzdz zdz tgtt}|dtj dt dzz fdtj dt dzzfgk(sJttdz dzdz td z dzdz zdz tgtt}t|dk(sJ|dddk(sJ|ddjd d sJ|dddk(sJ|ddjd d sJy) Nr.r,ir/r+riWg?g7gmBgG@) rrrrrrLr ra epsilon_eq)rootss r=test_solve_issue_3686rs8 Q 6 1Q!R5H14LV4S SWXXZ[\^_ab cE a"T$Z-/01affr$t*}6L2MN NN N Q 6 1QZ!OF4J JaOQRSUVXY ZE u:?? 8A;!   8A; ! !"3T :: : 8A;!   8A; ! !"2D 99 9r<cttdzdtzzdzgtdzggk(sJttdzdtzzdztdzdtzzdzgtdztdzggk(sJttdzdzgtdzdzggk(sJtgggk(sJttdztdzzdtztzztdzdz gtdttzttdzgttzttdz ggk(sJttdzdztdzdzgdttzttzgttzttz gttz ttzgttz ttz ggk(sJttdzdztdzdzgt ttzttzgttzttz gttz ttzgttz ttz ggk(sJtdgggk(sJtdggk(sJtdtgtggk(sJtddtggk(sJttdzdz td zdz gtdzdztdztzdzgtdzdztdztz dzgtdzdztdzgtdzdztdz gtdztdztzdzgtdztdztz dzgtdz tdztzdzgtdz tdztz dzgtdztdzgtdztdz gtdz tdzgtdz tdz gg k(sJttdz tdz ztdz t d z zgtdz t d z gtdz ggk(sJtttdzttdzzdz tgtttdzttdzzdz ggk(sJtttdzttdzzdz gttdzttdzzdz ggk(sJtttdzttdzzgttdzttdzzggk(sJtttzttgttggk(sJtttzttgttggk(sJttdztztgttgttggk(sJtttztdz zttztgttggk(sJtttztdz zttztgtttgtdz ttgtttggk(sJtttztdz zttztgtdz ttgtttgtdz ttgtttgtttgtttggk(sJttdzdz gtggk(sJttdzdz gtgtdzdz ggk(sJtttdzttdzz ttdzttdzzdz gttdzttdzzdz ttttzgttdzttdzzdz tt ttzggk(sJtttttzdzdz ttdzttdzz tdtzz gttdzttdzz tdtzzttttzdzgttdzttdzz tdtzzttttzdz ggk(sJtttttzttzdz ttttz ttzdz gttttzttttzzdz tt ttzttttzzdz ggk(sJy) Nr,r+rT)gaussianrrr6r-) r!rrr rrrr'r(rrrr)r;r<r=test_factor_systemrs !Q$1*q.) *Qy 88 8 !Q$1*q.!Q$1*q.9 :QA?O OO O !Q$( $1a4!8* 55 5   $$ $ !Q$A+!A-q!tax8DG L QDG  QDG Q   !Q$(AqD1H- = QA QA QA QA B   !Q$(AqD1H-d ; QA QA QA QA @   ! " %% % !  ## # !a !qcU ** * !Q #r )) ) !Q$(AqD1H- . A1a4!8a< A1a4!8a< A1q5 A1q5 Q1q1  Q1q1  Q1q1  Q1q1  QA QA QA QA 3    1q51q5/AEAE?; < QA QA   #a&!)c!fai/!3Q7 8 CFAIA !A %&=   #a&!)c!fai/!34 5 QSVQY  "#:   #a&!)c!fai/0 1 QSVQY 6   !A#q! %1a& 11 1 !A#q!q!f - 33 3 !q&1*a1a& 1q!fX == = !A#q1u+qsA.A 72 == = !A#q1u+qsA.Aq : Q1 Aq ?   !A#q1u+qsA. / Q1 Aq Q1 Aq Aq Aq 4   !Q$(aS )R // / !Q$(aS )q!taxj\ 99 9 #a&!)c!fai/QSVQY1F1JK L QSVQY  "CFSVO4 QSVQY  "SVGc!f$45Q   3q6CF?Q.2CFAIA 4ICPQRSPSH4TU V QSVQY QqS )3q6CF?Q+>? QSVQY QqS )3q6CF?Q+>?[   3q6CF?CF2Q6Q#a&#a&8PST8TU V QAQA & *SVGCFNSVCF],JQ,NO[  r<c d}d}d}d}t|tdzdz |tdzdz g|tdz|tdzg|tdz|tdz g|tdz|tdz g|tdz |tdz ggk(sJt|tdzdz g|tdzg|tdz ggk(sJt|tdztztz |tdztztz g|tdzg|tdz g|t|tggk(sJt|tdztdz dzz|ttdz zg|tg|tdz ggk(sJt|tdzttzz|tdzttzzg|ttz|ttzg|tggk(sJt|tdz tdz z|t dz tdz zg|tdz g|tdz |t dz ggk(sJt|tdzdzg|tt zg|tt z ggk(sJtgggk(sJt|dggk(sJt|d |tg|tggk(sJy) Nc"t|tSr[)rres r=r>z)test_factor_system_poly..+s 41:r<cHt|ttttfSNr)rrrrrrs r=r>z)test_factor_system_poly..,sT!Qr!Q$x0r<c.t|ttSr)rrrrs r=r>z)test_factor_system_poly..-sDAd+r<c8t|tttfSr[)rrrrrs r=r>z)test_factor_system_poly...sT!aAY'r<r,r+r6r-r)r rrrrrr)pxpxabpxIpxyzs r=test_factor_system_polyr)s B 0D +C 'D r!Q$(|R1q\: ; AEBq1uI AEBq1uI AEBq1uI AEBq1uI @   r!Q$(|n -2a!e9+1q5 {1K KK K tAqDFQJ/ad1fqj1AB C a!e a!e a$q'H   r!Q$Az/2Bq!a%yMB C A AE H   tAqD1Q3J/adQqSj1AB C a!ed1q5k" a H   tQUQUO4dAEAE?6KL M a!e a!ed1q5k"R   s1a4!8}o .CAJ<#a!e*2N NN N b !bT )) ) r!ug &" ,, , r!uben -2a5' :: :r<c ttdzdz tdzdz gtdztdzgtdztdz gtdztdz gtdz tdz ggk(sJtdggk(sJtdgggk(sJtdtggk(sJtdtgtggk(sJtgggk(sJttdzttzzgttzgtggk(sJttdz tdz ztdz tdz zgtgtdz gtdz tdz ggk(sJtttdz ztgtgtdz tgttggk(sJtttztdz zttzt gttgtdz tt gttt gtdz tt gttt gttt gttt ggk(sJtttdz ztgttgtdz tgttggk(sJtttzttgttgttggk(sJtttzttzgttgtgttggk(sJtttztztgttgttgtttzggk(sJtttztztgttgttgttggk(sJttdztztgttgttgttggk(sJy)Nr,r+r6rr-)rrrrrrr;r<r=test_factor_system_condrVs? qAvz16A:6 7 QA QA QA QA <   qc "b (( ( qc "rd ** * q!f % ++ + q!f %1# .. . b !bT )) ) q!taczl +Q!~ == = AAQQ@1# F Q QAK   qAE{A. 4!a%aV8L LL L qsAaCy!A#q1Aq6 : Q1 Aq Q1 Aq Aq Aq ?   q!A#wlQF 3Q QF7K KK K qsAqkAq6 21vh >> > qsAaCj1a& 1qcAq6] BB B qs1uaj1a& 1q!fq!A#h5G GG G qs1uaj )q!fq!fq!f-E EE E q!tAvqkAq6 21v1v6F FF Fr<c ttdz ztdz zttdz ztdz ztdz zg}t |ttgt tdz dt tdt tdzzt tdt tdz dzzt tdt tdz dzzt tdt tdz dzzt tdz dt tdz dzzt tdz dt tdz dzzk(sJt tdz gtgt tdz dk(sJt tdz tdz zgtgt tdz dt tdz dzk(sJt gtgdk(sJt dgtgdk(sJt dgtgdk(sJt tgtgt tdk(sJt ttzttgttgt tdt tdzk(sJt ttzttztztgttgt tdt tdzt tdt tdzzt tdt tdzzk(sJt ttzttzgttgt tdt tdt tdzzk(sJt ttztztgttgt tdt tdzt tdt ttzdzzk(sJt tdztztgttgt tdt tdzt tdt tdzzk(sJt ttztzttzt zgttt gt tdt tdt tdzzt tdt t dzzt tdt tdzzt tdt t dzzk(sJt ttdz ztgtgt tdt tdzt tdz dt tdzzk(sJy)Nr+r,rTF)rrrrrr&r)eqss r=test_factor_system_boolrs a!e9a!e aQiQ/Q7 8C cAq6 * 1q5! a8bAh  a8bQl " $ a8bQl " $ a8bQl "  $ a!eQ<"QUA, &  ( a!eQ<"QUA, &  (   q1ugs +r!a%| ;; ; AA/! 5AE11q5RS 9T TT T b1# &$ .. . qcA3 '4 // / qcA3 '5 00 0 qcA3 '2a8 33 3 q1uamaV 41a2a88K KK K !QqSUAA 7 1a2a8 a8bAh <  a8bAh <  ! !QqSzAq6 2bAh 1X1a 7" "# " !AqzAq6 2 1a2a8 AqBqsAJ 7  !  1Q{QF 3 1a2a8 AqBq!H 8   qs1uac!enq!Qi 8 1a a8bAh  a8bAh   a8bAh   a8bAh      q!a%y!nqc 2 AqBq!H  a!eQ<"Q( " $  r<cddlmd fd }ddgddggddgddggdgddgdggg}|D]}t|t|k(rJt dD]"}|}t|t|k(r"Jy) Nr)randintr-r,c t|Dcgc])}td|Dcgc] }d| c}+c}Scc}wcc}w)Nr+r)range)n_eqs n_factorsmax_val_rs r=generate_random_systemz0test_factor_sets..generate_random_systemsJ5\ +090E*F GQWQ G  G sAA AAr+r6d)r-r,r/)randomrr"r#r)r test_casescasersystemrs @r=test_factor_setsrs  Q!Q Q!Q q!fqcJ =D!%6t%<<<<=3ZA')F#'8'@@@@Ar<N)E__doc__sympy.polys.domainsrrsympy.core.numbersrrrsympy.core.singletonrsympy.core.symbolr (sympy.functions.elementary.miscellaneousr !sympy.polys.domains.rationalfieldr sympy.polys.polyerrorsr sympy.polys.polyoptionsr sympy.polys.polytoolsrsympy.polys.rootoftoolsrsympy.solvers.solversrsympy.utilities.iterablesr sympy.abcrrrrrr sympy.polysrsympy.solvers.polysysrrrrrrrr r!r"r#r$sympy.testing.pytestr%sympy.core.relationalr&(sympy.functions.elementary.trigonometricr'r(&sympy.functions.elementary.exponentialr)rRrXrrrrrrrrr;r<r=rs<)55"%908+&+'-&&'SSSS :'$=66;rD"5/p@( :eP*;Z+GZ3lAr<