K iMddlmZddlmZmZmZmZddlmZm Z m Z m Z ddl m Z ddlmZmZddlmZmZddlmZmZmZmZddlmZdd lmZdd lmZmZm Z m!Z!dd lm"Z"m#Z#m$Z$dd lm%Z%m&Z&dd lm'Z'm(Z(ddl)m*Z*ddl+m,Z,ddl-m.Z.ddl/m0Z0m1Z1ddl2m3Z3ddl4m5Z5m6Z6dZ7dZ8dZ9dZ:dZ;dZdZ?dZ@dZAdZBd ZCd!ZDd"ZEd#ZFd$ZGd%ZHd&ZId'ZJd(ZKd)ZLd*ZMd+ZNe3d,ZOd-ZPd.ZQd/ZRd0ZSy1)2)product)Subs count_opsdiffexpand)EIRationalpi)S)Symbolsymbols)explog)coshcothsinhtanh)sqrt) Piecewise)coscotsintan)acosasinatan2)asecacsc)acotatan) integrate)Matrix)simplify) exptrigsimptrigsimp)XFAILxyc 8 td\}}tdt|dzz t|dzk(sJtdt|dzz t|dzk(sJtt|dzt|dzzdk(sJtdt |dzzdt|dzz k(sJtdt|dzz dz t |dzk(sJtdt|dzz t |dzz dk(sJtdt |dzzdt|dzz k(sJtdt|dzz dz dt |dzz k(sJtdt|dzz t |dzz dk(sJtdt|dzzdt|dzzzdk(sJtdt|dz dzzdt|dz dzzzdt|zdz t ddzk(sJtt|t|z t |k(sJtdt |zt|zdt|zk(sJtt |dzt|dzzt|dzk(sJt|t |dzzt|dzz |t|dzz k(sJtt |t|z dt|z k(sJtt||zt||z zdt|zt|zk(sJtt||zt||z z dt|zt|zk(sJtt||zt||z zdt|zt|zk(sJtt||zt||z z dt|zt|zk(sJtt ||zt |dt |t |zz z z t|t| t |zt|zz k(sJtt||zt||z zdt|zt|zk(sJtt||zt||z z dt|zt|zk(sJtt||zt||z zdt|zt|zk(sJtt||zt||z z dt|zt|zk(sJtt||zt|dt|t|zzz z t|t|t|zt|zz k(sJttddztddzzd k(sJdt|dzzdt|dzzz}tt|tdk(sJy) Nx,y|Pk??) rr&rrrrr rrrr)r)r*es h/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/simplify/tests/test_trigsimp.pytest_trigsimp1r7s 5>DAq AA M "c!fai // / AA M "c!fai // / CFAIA ) *a // / AA M "aA k 11 1 Ac!faiK!O $A 11 1 Ac!faiK#a&!)+ , 11 1 AA M "aA k 11 1 Ac!faiK!O $#a&!) 33 3 Ac!faiK#a&!)+ , 11 1 Ac!faiK!CFAI+- .! 33 3 Ac!A#hkMAc!A#hkM1 2aAhqj8Aq>6Q QQ Q CF3q6M "c!f ,, , Ac!fHSVO $#a& 00 0 CFAIc!fai' (CFAI 55 5 Ac!faiKA ) *aA k 99 9 CF3q6M "aAh .. . CAJQU+ ,#a&Q ?? ? CAJQU+ ,#a&Q ?? ? CAJQU+ ,#a&Q ?? ? CAJQU+ ,3q6 #a&0@ @@ @ CAJQSVCF]):!;; < AQAQ'( )) ) DQK$q1u+- .!DG)DG2C CC C DQK$q1u+- .!DG)DG2C CC C DQK$q1u+- .!DG)DG2C CC C DQK$q1u+- .!DG)DG2C CC C DQK$q'1tAwtAw+>"?? @ Qaa47*+ ,, , CL!Oc'lAo5 6# == = #a&!) aA k!A CF s1v %% %cttddztdztdztddzz t ddztdztdzk(sJtt ddztdztdztddzztddztdztdzk(sJtt dtdztdztdztdtdztdzk(sJtt dtdztdztdz tdtdztdz k(sJtt dtdztdztdz tdtdztdz k(sJtt dtdztdzt dztdtdzk(sJtt dtdztdztdz tdtdztdzk(sJttdtdztdztdzt dtdztdzk(sJttdtdztdzt dztdtdztdzk(sJttdtdztdzt dz tdtdztdz k(sJttdtdztdztdz tdtdzt dz k(sJttdtdztdztdztdtdzk(sJy)Nr.r0) r&rrrrrrrrrr8r6test_trigsimp1ar;BsT CFAIc!f$SV+CFAI5 6#a&!)CF:J3q6:Q QQ Q CFAIc!f$SV+CFAI5 6#a&!)CF:J3q6:Q QQ Q CF3q6M#a&(Q/ 0CF3q6M#a&4H HH H CF3q6M#a&(Q/ 0CF3q6M#a&4H HH H CF3q6M#a&(Q/ 0CF3q6M#a&4H HH H CF3q6M#a&(Q/ 0CF3q6M AA A DGCFN3q6)$q'1 2d1gc!fnSV6K KK K DGCFN3q6)$q'1 2d1gc!fnSV6K KK K DGCFN3q6)$q'1 2d1gc!fnSV6K KK K DGCFN3q6)$q'1 2c!fSVmDG6K KK K DGCFN3q6)$q'1 2c!fSVmDG6K KK K DGCFN3q6)$q'1 2c!fSVm CC Cr8c  td\}}tt|dzt|dzzt|dzt|dzzzt|dzzddk(sJtt|dzt|dzzt|dzt|dzzzt|dzzddk(sJtt ||t|dzt|dzzt ||dk(sJy)Nr,r.T recursiver-)rr&rrrr(s r6test_trigsimp2r?Qs 5>DAq CFAIc!fai'#a&!)CFAI*==A I   !! ! CFAIc!fai'#a&!)CFAI*==A I   !! !  Q3q619s1vqy() +.21am << DAq CF3q6M "c!f ,, , CFAIc!fai' (CFAI 55 5 CFAIc!fai' (CFAI 55 5 CFBJs1vrz) *c!fbj 88 8 CF3q6M "aAh .. . CFAIc!fai' (Ac!faiK 77 7 CFBJs1vrz) *aA l :: : CF xAs1v 6 66 6r8c,td\}}}dt|dzzdt|dzzzdt|dzzz }t|dk(sJt|dzdt|dzzt|dzzzdt|dzzt|dzzzdt|dzzz}t|dz dt|dzzz }t ||z dk(sJtd t|dzzt|dzzt|dzz dk(sJt|d z dz t|zt|d zdz t|zztd|ztd|zzdz z }t|d k(sJy) Na x yr.r/r2r0r)rrrr&r$)ar)r*eqnds r6test_issue_4661rTnsgGAq! CFAI#a&!) #aA k 1B B<2   A Ac!faiKA ))Ac!faiKA ,AAAc!faiKOA Q Qs1vqy[ A AaC=B   Bs1vqyL3q619,s1vqy8 9R ?? ? FAI+a-Q 3q619Q;A"6 6QqS#ac(9J19L LB B<1  r8ctd\}}t|dzt|dzzt|dzt|dzzt|dzzzt|dzz}t |dk(sJy)Na br.r-)rrrrr&)rPbrQs r6test_issue_4494rXzso 5>DAq Q3q619 s1vqyQ23q619< > > CF3q6M#a&Q-/1 2c!a%j1n DD Dr8cztd\}}}tt|dzt|dzt|dzzzt|dzt|dzzzdk(sJt|dzt|dzz|dzt|dzzt|dzzz|dzt|dzzt|dzzz|dzk(sJt|dzt|dzzt|dzz|dzt|dzzt|dzzz|dzt|dzzk(sJy)NrJr.r-)rr&rrrZs r6test_issue_4280r_s8gGAq! CFAIA #a&!) 33c!faiA 6II Ja OO O AqDQNQT#a&!)^CFAI%==1SVQYsSTvWXy@XX Y]^`a]a aa a AqDQN3q619,q!tCFAI~c!fai/GG HAqDQTUVQWYZQZN ZZ Zr8c tdtdztdtdzztd tdztdtdzztdtdztdtdzz tdtdztdtdzztdtdztdtdzztdztdtdztdtdzztdtdztdtdzzf}|Dcgc] }t |c}tdtdtd tdtdtdztdtdgk(sJycc}w)Nr.r0r/r-)rrrrr&)eqsr5s r6test_issue_3210rbsZ q6#a&=3q6#a&= ( QAQA& As1v As1v % As1v As1v % As1v As1v %A. QQ$q'$q'/) QQ$q'$q'/)  C"% %AHQK % A A Q A AQ Q Q*    %sGc Rtd\}}}tt|dzt|dzt|zzt|k(sJtt t t|t|dzz ||t|t|dzz k(sJtt t t|t|dzz ||t|t|dzz k(sJt||zt||zz }t||k(sJt|j |dt|dzk(sJt|j |dtd|zk(sJt|dzt|dzz t|dzzt|dzz jdt|dzz t|dzz k(sJtt|t|z t||zzt||zz dt|t||zzz k(sJtdtddzdzztddz dzz }t||jk(sJttdtddzdzztddz dzztdtddzzk(sJt|jt|dusJt|dzt|dzzdz }t|dzdt|dzz z }d||z z}tt|tdk7sJ||dz z||zz }t|tjusJt|dtjusJtdjsJtt|dz dt|dzzt|dzzz t|dzz d k(sJy) NrJr0r.r-rLFTr=rO)rr&rrrr"subsrfactorrequalsr NaN is_Integer)rPr)r*r5rQzz1rRs r6test_trigsimp_issuesrksgGAq! CFAIA #a& 00 1SV ;; ; D3q6#a&!)#3Q7; < As1vqy   D3q6#a&!)#3Q7; < As1vqy   A #a&!)A A;!   AFF1aL !SVQY .. . AFF1aL !SVQY .. . FAIc!fai A )#a&!) 3 = = ? #a&!) CFAI   CF3q6M#ac(*3qs83 4 3q6#a!e*    QQ!a Q!a /B B<299; && & CFCFQJ?*CFQJ?: ; As1vqy   q6==Q E )) ) A CFAI!A QQs1vqy[ B RTA CF s1v %% % AEQqSB B<155  B$ '155 00 0 A; ! !! ! SVQYJ3q619SVQY!66QB Cr II Ir8ctd}t|t|zt|z|t |zk(sJtt | t|t|zzdk(sJy)Nr)r)r r&rrrrDs r6test_trigsimp_issue_2515rms`s A Ac!fHSVO $#a& 00 0 SVGc!fSVm+ , 11 1r8cttdtzjdtdtzk(sJy)Nr.T)trig)r&rr)rr:r8r6test_trigsimp_issue_3826rps0 C!HOOO. /3qs8 ;; ;r8ctddd}td|dz ztt|zdz zdz d|dz zdz zd|dz ztt|zdz zdz d|zdz zk(sJy)NrRT)integerpositiver.rLr-)r r&rr )rRs r6test_trigsimp_issue_4032rtssD40A A!HSAa[(*QQZ\9 : AaCRT!VQAa' (( (r8cdtttdz ttdz k(sJy)NrL)r&rr r:r8r6test_trigsimp_issue_7761rvs% DAJ 41: -- -r8c td\}}tdd\}}t||t|dzzz |t|dzzk(sJt||t|dzzz |t|dzzk(sJt|t|dzz|t|dzzz|k(sJt||t |dzzz|t|dzz k(sJt|t|dzz |z |t |dzzk(sJt|t|dzz |t |dzzz |k(sJt||t |dzzz|t|dzz k(sJt|t|dzz |z |t |dzz k(sJt|t|dzz |t |dzzz |k(sJt||zt|dzz||zt|dzzz||zk(sJt|t|zt|z |t |zk(sJt|t |zt|z|t|zk(sJt|t |dzzt|dzz|t|dzzk(sJt||zt |dzzt|dzz ||zt|dzz k(sJt|t |zt|z |t|z k(sJt|t||zz|t||z zzd|zt|zt|zk(sJt|t||zz|t||z zz d|zt|zt|zk(sJt|t||zz|t||z zzd|zt|zt|zk(sJt|t||zz|t||z zz d|zt|zt|zk(sJt|t ||zz|t ||z zzd|zt |zt|zk(sJt|t ||zz|t ||z zz d|zt |zt|zk(sJt|t||zz|t||z zzd|zt|zt|zk(sJt|t||zz|t||z zz d|zt |zt |zk(sJt|tddzz|tddzzzd |zk(sJy) Nr,zA,BF commutativer.r0r2r3r4rr&rrrrrr)r)r*ABs r6test_trigsimp_noncommutativer}s\ 5>DAq 5e ,DAq A#a&!) O $#a&!) 33 3 A#a&!) O $#a&!) 33 3 Ac!faiK!CFAI+- .! 33 3 A#a&!) O $#a&!) 33 3 Ac!faiK!O $#a&!) 33 3 Ac!faiK!CFAI+- .! 33 3 A#a&!) O $#a&!) 33 3 Ac!faiK!O $#a&!) 33 3 Ac!faiK!CFAI+- .! 33 3 AaCA MAaCA M1 2ac 99 9 Ac!fHSVO $#a& 00 0 Ac!fHSVO $#a& 00 0 Ac!faiKA ) *aA k 99 9 AaCA M#a&!)+ ,!CFAI == = Ac!fHSVO $#a& 00 0 Ac!a%jL1SQZ</ 0AaCAJs1v4E EE E Ac!a%jL1SQZ</ 0AaCAJs1v4E EE E Ac!a%jL1SQZ</ 0AaCAJs1v4E EE E Ac!a%jL1SQZ</ 0BqDQKA4F FF F Ad1q5kMAd1q5kM1 2ac$q'k$q'6I II I Ad1q5kMAd1q5kM1 2ac$q'k$q'6I II I Ad1q5kMAd1q5kM1 2ac$q'k$q'6I II I Ad1q5kMAd1q5kM1 2ac$q'k$q'6I II I Ac'lAo%#g,/(99 :c!e CC Cr8c td\}}tt|dzdzt|dzk(sJtt|dzdz t|dzk(sJtt|dzt|dzz dk(sJtdt |dzz dt|dzz k(sJtddt|dzz z t |dzk(sJtt |dzdt|dzz zdk(sJtt |dzdz dt|dzz k(sJtdt|dzz dzdt |dzz k(sJtt |dzdt|dzz z dk(sJtdt|dzzdt|dzzz dk(sJtdt|dz dzzdt|dz dzzz dt|zdz t ddzk(sJtt|t|z t |k(sJtt |tt|t|z k(sJtt|t|z dt |z k(sJtdt |zt|zdt|zk(sJtt |dzt|dzzt|dzk(sJt|t |dzzt|dzz |t|dzz k(sJtt |t|z dt|z k(sJtdz tztdz tztdz tzfD]}tt|t|zt|t|zzt||zk(sJtt| t|zt|t|zzt||z k(rJdt|dzzdt|dzzz }tt|tdk(sJttt|dzdz tt|dzk(sJtt|dzt|dzzt|dzt|dzzz t|dzz d dk(sJtt|dzt|dzzt|dzt|dzzz t|dzzd dk(sJttd t|dzzd t|dzzz d z d ksJtt|dzt|dzz t |dzk(sJtt|dzt|dzz t |dzk(sJtt|d zt|d zz t |d zk(sJtt|dzt|dzz dt |dzz k(sJtt|t|z dt |z k(sJtt|dzt|dzz dt |dzz k(sJtt|d zt|d zz dt |d zz k(sJt|t|zt |z|t|zk(sJtt| t|t |zzdk(sJt|dt|z k7sJtt|dt|z z dk(sJtdt |dzzdt |dzz z t |dzk(sJy)Nr,r.r-r/r0r1rNrLTr=rArBrGr)rr&rrrrr r r rrrCrr)r)r*rPr5s r6test_hyperbolic_simpr sb 5>DAq DGQJN #tAwz 11 1 DGQJN #tAwz 11 1 DGQJa!+ , 11 1 AQ N #qa!| 33 3 A$q'1* $ %a! 33 3 DGQJ47A:- .! 33 3 DGQJN #qa!| 33 3 Ad1gqjL1$ %47A: 55 5 DGQJ47A:- .! 33 3 Ad1gqjL1T!WaZ</ 0A 55 5 Ad1Q3ilNQtAaCy!|^3 4$q' ! hqRSn8T TT T DGDGO $Q // / DG aa 9 99 9 DGDGO $$q' 11 1 Ad1gId1g% &!DG) 33 3 DGQJtAwz) *d1gqj 88 8 Ad1gqjLa!+ ,$q'1* << < DGDGO $$q' 11 1d1fbd1fbd1f %KQQ$q'$q'/9:d1q5kIIIaa(4747?:;tAE{JJJK $q'1* qa!|#A CF s1v %% % Da!a( )T$q'1*-= == = DGQJtAwz)DGQJtAwz,AADGQJN   !! ! DGQJtAwz)DGQJtAwz,AADGQJN   !! ! xDGQJT!WaZ783> ?% GG G DGQJtAwz) *d1gqj 88 8 DGQJtAwz) *d1gqj 88 8 DGRKQ + ,Q ;; ; DGQJtAwz) *aQ l :: : DGDGO $$q' 11 1 DGQJtAwz) *aQ l :: : DGRKQ + ,$q'2+ == = Ad1gId1g% &!DG) 33 3 T!WHtAwtAw. /1 44 4 q6Qs1vX   CFQs1vX% &! ++ + Ad1gqjL1T!WaZ</ 0DGQJ >> >r8cJddlm}tt}t t}d|z|zd|zzd|dzzzd|dzzzd |zzd z| |dzzd|z|zzd |zzd |dzzzd |dzzzd |zzdzz }d|zd|zz dz}d|zd|zz }||z | | z g}|||vsJ|||z t gt tk(sJ|||z||zk(sJt | dz|z || dzz zdd|z k(sJt | dz|z || dzz zddd|z k(sJ||dg|vsJ||tdg|vsJ|t ttztttzz tgtttzk(sJ|ttttzdttttzzz tttfgtttzk(sJy)Nr)trigsimp_groebnerrL r/r0r.r1%r-rMrN)hintsgroebnermethodT)r polynomial) sympy.simplify.trigsimprrr)rrr&intr rr*)rcsexresnumresdenomresultss r6test_trigsimp_groebnerrGsg9 AA AA A#a%"Q$,1a4 "QT' )BqD 02 5 1a4!A#a%"Q$1a4'"QT'1BqD82= ?BcAaCi!mF!ac Hh&H9 56G R G ++ + QqS .#a& 88 8 QqS !QqS (( ( aR!VQJQBF+% '*+A# .. . aR!VQJQBF+%$ 8; 36:1q5k BB Br8cd}d}tdztttdzzttdzzz }tdg}t|gt d||k(sJt d||k7sJtj dt fddjDsJdttz tz}t||k(sJy) Nc*tt|SN)lenstrexprs r6z2test_issue_2827_trigsimp_methods..fsCD Nr8ct| Sr)rrs r6rz2test_issue_2827_trigsimp_methods..gs Yt_,r8r-r.fu)rmeasurec3>K|]}t|k(yw)rN)r&).0mMs r6 z3test_issue_2827_trigsimp_methods..qs!,ax!$),szfu matching groebner old) r)rrr#r&eyeallsplitrrr%)measure1measure2ransrQrs @r6 test_issue_2827_trigsimp_methodsres*H,H EAA MCFAI- .D !+CvA AdH 5 << < AdH 5 << <  1 A ,"((*, ,, , 47QB r?b  r8c  tttddttdddg}tttddttdddg}tttddttdddg}|j |}|j |}t |ttddk(sJt |ttddk(sJy)Nr-2rr0)r#rr rdotr&)t1t2t3r1r2s r6!test_issue_15129_trigsimp_methodsrws Xa_%s8Ar?';Q? @B Xa_%s8Ar?';Q? @B Xa_%s8Ar?';Q? @B B B B<3x2/ // / B<3x2/ // /r8c d ttttt zdttzk(sJttttt z dt tzk(sJtdttzdtt zz tttt zz dt tzk(sJtdtdtzzdz tdtzdzz dt tzk(sJt ttttzzt ttttzz ttt tz ttt tzg}tttztt tztt ttg}t fdt|Dcgc] }t|c}|DsJt tttzt tttz tttt tzztttt tzz g}|Dcgc]}t||k(c}sJg}tt dzdtt dzz ttztdzt ttdzz tt tzdtt tzz ttzttzt tttzz tt dtzzdtt dtzzz g }dttttzdtzfD]\}t|}t|d|z z z|d|z zz }|jt||jtd|z ^t fdt||DsJtddD]}t|}|d|z z}t|}|t|k(sJ |dt|zsJ|d|z z }t|}|t|k(sJ |dt |zrJycc}wcc}w)Nc.ddlm}|||r||k(syy)Nr)verify_numericallyFT)sympy.core.randomr)rPrWtns r6validztest_exptrigsimp..valids>1aQ!Vr8r.r-c36K|]\}}||ywrr:rijrs r6rz#test_exptrigsimp..s,tq!uQ{,c36K|]\}}||ywrr:rs r6rz#test_exptrigsimp..s4tq!uQ{4rr0)r%rr)rrrrr rrzipr*rappendr$range) r5okeiueresrPwrQrrs @r6test_exptrigsimprs s1vQB' (Ad1gI 55 5 s1vQB' (Ad1gI 55 5 #a&3r7*SVCG^< =47 JJ J #ac( 1 s1Q3xz2 3qay @@ @ Q!CF( CFQs1vX- a47 DGd1g- /A ac(C1IsA2wA /B ,s#$%RR%r(+, ,, , a&3q6/3q6CF? q'Ad1gI tAw472 4B,. /bKOr ! // / C DG)Q$q' ]AaCAJAc!fH  $q' 1aQi=!A#c!f*qb!CF(m $q1u+ q!DQK-( *BAqsAE "# F AaC[!ac' " 8B<  8AbD>" # 4s3|4 44 4 1a[ # F !G QKKN"""Q$q' """ !G QKKN"""Q$q' """ ## & 0s TT c0tdd\}}tdd}t||ztt|t|zk(sJt|t|zt|t|zz }|t|cxk(rdk7sJJy)NrVFrxr)Tr)rr rr%)rPrWr)ps r6test_exptrigsimp_noncommutativers %U +CAas%A q1u:SVCF]3 33 3 As1v As1v %A A #! ## ## #r8cRdtdddz zdtddzdz k(sJy)Nr.r-r0rL)r r:r8r6test_powsimp_on_numbersrs0 x1~! "a!Q&7&9 99 9r8cztd\}}}}ddt|z|zdtd|zz|zzdtd|zz|zzd|zz z|zd t|zdtd|zzz z }t|d dt|zt |z|zd|zzz|zt|z k(sJy) Nz xp, y, x, zrLir/r0rr.r r2)rrrr&r)xpr*r)rirQs r6test_issue_6811_failrs -(KB1a CAJqL1S1X:a< '"S1X+a- 7"Q$ > ? BAc!fHqQTUVWXUXQYzDY ZB B<2qQxAq01Q367:3q6A AA Ar8cbtttzztttzzz }ttdzttdzz}t ttztztz }t |}t t|||kf|dft|||kf|dfk(sJy)Nr.T)r)r*rrrr$r&r)e1e2e3s2s r6test_Piecewisers AEQAY B QSVQY B Q ! B "B Ir27mb$Z8 92rBw-"d, -- -r8c tttddttddzttj dzk(sJy)Nr-r.rO)r$rr rr Halfr:r8r6test_issue_21594rs< C1 &Xb^)<< =affa OO Or8c  td\}}tdt|dzz dt|dzk(sJtdt|dzz dt|dzk(sJtt|dzt|dzzddk(sJtdt |dzzddt|dzz k(sJtdt|dzz dz dt |dzk(sJtdt|dzz t |dzz ddk(sJtdt |dzzddt|dzz k(sJtdt|dzz t |dzz ddk(sJtdt|dzzdt|dzzzddk(sJtt|t|z dt |k(sJtdt |zt|zddt|zk(sJtt |dzt|dzzdt|dzk(sJt|t |dzzt|dzz d|t|dzz k(sJtt |t|z ddt|z k(sJtt||zt||z zddt|zt|zk(sJtt||zt||z z ddt|zt|zk(sJtt||zt||z zddt|zt|zk(sJtt||zt||z z ddt|zt|zk(sJtt ||zt ||z zddt |zt|zk(sJtt ||zt ||z z ddt |zt|zk(sJtt||zt||z zddt|zt|zk(sJtt||zt||z z ddt |zt |zk(sJttd dztd dzzdd k(sJtt|t|z dd t |k(sJtt|t|z dd t|t|z k(sJtt|t|z dd tgt |k(sJtdtt|dzt|dzzdzz ddtddzk(sJy)Nr,r-r.T)oldr/r0r2r3r4combined)rrr)rrr)rdeeprzr(s r6test_trigsimp_oldrsN 5>DAq AA Mt ,A 99 9 AA Mt ,A 99 9 CFAIA )t 4 99 9 AA Mt ,#a&!) ;; ; Ac!faiK!O .#a&!) ;; ; Ac!faiK#a&!)+ 6! ;; ; AA Mt ,#a&!) ;; ; Ac!faiK#a&!)+ 6! ;; ; Ac!faiK!CFAI+-4 8A == = CF3q6Mt ,A 66 6 Ac!fHSVO .!CF( :: : CFAIc!fai'T 2c!fai ?? ? Ac!faiKA )t 4#a&!) CC C CF3q6Mt ,#a& 88 8 CAJQU+ 6!CF(3q6/ II I CAJQU+ 6!CF(3q6/ II I CAJQU+ 6!CF(3q6/ II I CAJQU+ 6"SV)CF:J JJ J DQK$q1u+-4 8Ad1gId1g>>>? Q!Q ?1RGA. ?DAq!A#qsOE%eT:N!U* **~&(3u:*>> >>~&(3u:*>> >>  ??r8N)T itertoolsrsympy.core.functionrrrrsympy.core.numbersrr r r sympy.core.singletonr sympy.core.symbolr r&sympy.functions.elementary.exponentialrr%sympy.functions.elementary.hyperbolicrrrr(sympy.functions.elementary.miscellaneousr$sympy.functions.elementary.piecewiser(sympy.functions.elementary.trigonometricrrrrrrrrrr r!sympy.integrals.integralsr"sympy.matrices.denser#sympy.simplify.simplifyr$rr%r&sympy.testing.pytestr' sympy.abcr)r*r7r;r?rErHrTrXr[r]r_rbrkrmrprtrvr}rrrrrrrrrrrrr:r8r6rs??33"/=JJ9:IIHHAA/',;&&&R D<F 7   E [ (+J\2 <( . DF8?vB<!$0)#V$:BB -P$UN?r8