K i.ddlmZddlmZmZmZddlmZddlm Z m Z ddl m Z ddl mZddlmZddlmZmZd Dcgc] }e | c}\ZZZZZZZZd Zd Zd Zd ZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)ycc}w))Mul)IIntegerRational)Symbol)rootsqrt)cos)Integral) sqrtdenest)_subsets_sqrt_numeric_denest) cvtddtzzttztddtzztddtzztddtddtzzzztddtzzdtzztttttdtztdtztdtddtzzzdtzddtzzt ddzzdtddtzzzz ttddtzzzdddtzzt ddzzz ztddtzzdt ddztdz dtzdz zzdz i}|D]}t |||k(rJ|y)Nrrg@rr)r r6r2r3r7rr )dis j/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/simplify/tests/test_sqrtdenest.pytest_sqrtdenestr!s} a!b&j 27 R!b&[4QV , R!DQV$$ $%tC!B$J2,='> R$r( QV d1r6l Qa!B$h  2q1R4x(1a.( (!DQrTN*: ; DQrTN Aq1R4x(1a.88 9 : Q2X8Aq>)2a4!B$q&=9!; =A(!}!$'a'$(c ttddtzz dtddtzz zzttddtzz zk(sJtt tdtzdtdtzdzzzdzz}t|t dtzdzdk(sJtd t z}ttd |ztd |zk(sJtd td dtd t ztzzzzdzj}t|d td dtt tzd zzzzk(sJttd tzd t zztdt d dzt d dd zzk(sJttd tztd tzzdzjd tztd tzzk(sJttd tzt ztd tzzdzjd td tzztzt zk(sJtd tdztd ztd tzzdzj}t|td tdzd ztd tzzk(sJtdtzdt ztdtzdzzzd z}t|tdtzdt zz dtzzd zk(sJtdtztdzdtdtzdzzzdz}t||k(sJttttdztttdzk(sJtddtdzz dtddtzz zz}t||k(sJy)Nr7r rrrrrr) r r r29r5rrrexpandrr r10r)erzs r test_sqrtdenest2r2s d2#:$rBsF{*;(;;< = T"qu*    bS434C" #5!55:; ;?A a=AQ4R! +<)<%< == == = d1R4!B$;' ( QQ T!QZ]* ++ + dQVd1r6l2Q6>>@A B Ba"f   dQVb[4B<7!;CCEF G DRL2" ## # q3q6zCF"T!b&\1A5 = = ?@A a=CFSVOa/$q2v,> >> > RVad43 ,, ,r 12A a=DC!B$2!5!:; ;; ; RVc!f_qc#gl!33 3b 89A a=A   d2R=) *d2R=.A AA A R!DH*_qb2c6k!22 23A a=A  r"c ttdtdzdtzz dtdzzdzt tzdt zzk(sJttdt zdt zz dtdzzd zd t zdt zzk(sJttd tzd z dtd zd z zd td zd z zdztd tdztd zzd z k(sJttdtzdtzzdtzzdzdtzdzdtzzk(sJtdtzdtdzz dtdzz dz }t|tddt zdtzzdtdzzzk(sJtdtdzdtzz dtdzzdz}t||k(sJttdtzdt zz d zt d!ztzt zk(sJttd"tzdt zzd z tdt d!ztzt zzk(sJttd"tzdz dt zdz ztd#dzt dz tzt zdzk(sJtttdtzd$ztdt zd"zztd!tztzt zk(sJttdtzd"t zzd%tzzd&zd!tzt ztzk(sJd!tztzt zt z}tt|dzj|k(sJt|dzjd!z}t||k(sJtdtzd tzzdt zzd%zd'tzzd(tzz}t||k(sJy))Nr)rr!i#Rirr&rii i` iM 8ibsiYi;r"rr r) r r rrrrr,r15r.rr-)r1ws r test_sqrtdenest_recrK@s d2d2h;2-$r( :R?@ A b1R4   d3r6BrE>Ad2hJ6;< = R!B$   d1R47QtBxZ]2QtBxZ]BQFG H R"q&48#$R' (( ( d3r6DG+d2g5=> ? "r BrE   T"Wr$s)| #bcl 2T 9:A a=DHadQsUlQtBxZ&?@ @@ @ RR[1R4 !DH* ,r 12A a=A   d2b51R4<",- .3$(R-"2D DD D d1R4!B$;+, - R3$(R-"$% && & d1R46BrE!G+hsA.>>? @ Q b1   d4"q>D2N:; < QVb[2    d1S51R4<"R%/"45 6!b&2+:K KK K B b2A dAqD==?+ , 11 1 ad]]_q !A a=A   QsUQrT\AbD 2 %3 .B 67A a=A  r"cltddtdzzdtzz}t||k(sJy)Ni r@)r rIr )r1s r test_issue_6241rO_s4 dRQZ"S&()A a=A  r"c ~tddtzz dtztdtzdzzz}t|dtztzk(sJt|ddtdztdzk(sJtttdzdz}t||k(sJttdtzd tztdtzdzzzd ztdtzd tzz d tzzd zk(sJttd d tzzddtzztzztdzd tzzdtzzk(sJtdtdt zdztdt zdtdt zdzzzdzzz}tdt zdz}t|tt|zt|zztztzdzk(sJtdt zdz dtzdz zdtdzdz zdz}tddt zz dtddt zz zz}t||z tdt ztzztdtdt zdztzdz k(sJy)N rr'r&r?r)max_iterrrrDpF.rArrr(r%r$r*F)evaluate) r r.rr r,rr+rrIrr)r1r0nrs r test_sqrtdenest3rZds R!C%Z!B$tBsFRK00 01A a=BGcM )) ) a! $T!W tBx(? ?? ? T"q&\A A a=A   d2c6AbDbfrk):$::R?@ A RVad]QrT !B &' (( ( dC"R%KBBJ?:; < a!B$2   QadQhRVaSWr\0B.B%BR%G HH HIA RVb[A a=DA1s!2S!81!<= == = QrT!Vad1f_qbz!| +a /0A R!C%Z!Dbf-- -.A ac?b!b&2+.ARVb[8IB8N=B1DE EE Er"cBtdttdtz zz tddtzzz }t|}tt dz}t |zt |zz |zt|zzt z tz tztdzdz j}t||k(sJtdtzttdzzdtzzdttdzzzdz}t|tttdzzdzk(sJdtzt zdt ztdtzdt zzzz}t|dzj}t||jk(sJy)NrDrrrrHrr) r rr,r rIrrr.r-)r1z1crJs r test_sqrtdenest4r^xsV QDRL 47AF#3 34A AB bS1W A 46BqD=1 r!t #b (2 - 3d2h > A I I KB a=B   QrT$rAv, 2 %$rAv, 6 :;A a=Bb1f-1 11 1 B q2vtAFQrTM222A ad]]_A a=AHHJ && &r"c td}tdttd|zdzzdzj}t|tdttd|zdzzdzk(sJtdttdt dzdzzdzj}t|dttdt dzdzzk(sJdt dzdzdzj}t||k(sJtdttdt d|zzdzzdzdzj}t||k(sJt d}|dz}ttdtdt zz|z|zdzt |zzdtdt z|zz k(sJtdt z}td|ztddt zzzdt z|ztddt zzzzd t zzd z}t||k(sJy) Nxrrrrr?rSrFrNrT)rr r-r r r)r`r1r]c2ras r test_sqrt_symbolic_denestrcss A q4QU a((1, 4 4 67A a=D!d4A;?&;";a!?@ @@ @ q4QQZ(1,--1 9 9 ;!+b014r"u<= > T!b&\!^   a"fB RU4AbD> !BrE"HT!ad(^$; ;be Cc IJA a=A  r"cddlm}m}tddtzdzz dz}t t ztdzz }t||k(sJtd|zd|zk(sJtt|dz|ddftd|z|ddfk(sJt|t|z|t|zk(sJt t ztdzz }t||k(sJtd|zd|zk(sJtt|dz|ddftd|z|ddfk(sJt|t|z|t|zk(sJy)Nr)r`yrrrr) sympy.abcr`rer rrrr r )r`rer1anss r test_issue_5857rhs\ Q"q\A A 7R!V C a=C   a!e C '' ' hq1uq!Qi0 1S1a)$ %% % a$q'k "a$q'k 11 1 7R!V C a=C   a!e C '' ' hq1uq!Qi0 1S1a)$ %% % a$q'k "a$q'k 11 1r"ctddggk(sJtdgdgdgdgdgdgdgd gd gd gd gd gdgdgdgdgk(sJy)Nrr)rrrr)rrrr)rrrr)rrrr)rrrr)rrrr)rrrr)rrrr)rrrr)rrrr)rrrr)rrrr)rrrr)rrrr)rrrr)subsetsr"r test_subsetsrlsX 1:1#   1:lL, lL, lL, N NN Nr"c ttdtdtdzztdtdtdzzk(sJy)Nr)r r rkr"r test_issue_5653rnsP  Qa$q'k" "# %(,Qa$q'k1B-B(C DD Dr"c tdtdtddtzzzz dtzzdz tk(sJdtdtdtzzz dtzz}t||k(sJy)Nrrr)r r rr/s r test_issue_12420rqss q474AaC=001Q369 :a ?? ? DGDQK !A#%A a=A  r"cttdtztddtzzztddtzzz dk(sJy)Nrrrrr)r r rrkr"r test_sqrt_ratcombrss? d1r6lT!ad(^3d2"9oE F! KK Kr"ctddtdztzz }t|dtdtzz k(sJy)Nr'rrr?)r rr rps r test_issue_18041rus> b1T!W9Q; A a=BaN ** *r"ctd}td}td}||z||z|zz }t||||tdtzdz dtdztzdz zk(sJt tdtdz tdtzdz dtdztzdz zk(sJy)NrBr??r)rr)rrr rr )abr0d2s r test_issue_19914r{s A A A 1qs1uB 1a , R 1 qay{1}$ %% % d2d2h;' (DHQJqL1T!W9Q;q=,H HH Hr"N)*sympy.core.mulrsympy.core.numbersrrrsympy.core.symbolr(sympy.functions.elementary.miscellaneousrr (sympy.functions.elementary.trigonometricr sympy.integrals.integralsr sympy.simplify.sqrtdenestr r rjrrrr,rrr.rIr+r!r2rKrOrZr^rcrhrlrnrqrsrur{)r`s0r rs55$A8.0/72%3T!W%3!BBCc ( F> E( ' &2"ND L+Is%3sB