K iqHpddlmZmZmZmZmZmZmZmZm Z m Z m Z m Z m Z mZmZmZmZmZmZmZmZmZddlmZddlmZmZmZmZmZmZm 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/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:ddlm;Z;mZ>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRddlSmTZTmUZUddlVmWZWddlXmYZYmZZZm[Z[m\Z\m]Z]m^Z^m_Z_ddl`maZambZbmcZcmdZdmeZemfZfmgZgmhZhmiZimjZjmkZkmlZldd lmmnZnmoZompZpmqZqmrZrdd lsmtZtmuZumvZvmwZwmxZxmyZymzZzm{Z{m|Z|m}Z}m~Z~mZmZmZmZdd lmZmZed \ZZZd ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZeUdZd Zd!Zd"Zd#Zd$Zd%Zd&Zd'Zd(Zd)Zd*Zd+Zd,Zd-Zd.Zd/Zd0Zd1Zd2Zd3Zd4Zd5Zd6Zd7Zy8)9)SpioosymbolsFunctionRationalIntegerTupleSymbol EulerGamma GoldenRatioCatalanLambdaMulPowModEqNeLeLtGtGe) MatrixSolve)!argatan2 bernoullibetaceiling chebyshevu chebyshevt conjugate DiracDeltaexpexpint factorialfloorharmonic HeavisideimlaguerreLambertWlogMaxMin PiecewisepolylogreRisingFactorialsignsincsqrtzetabinomiallegendre dirichlet_eta riemann_xi)sincostancotseccscasinacosacotatanasecacscsinhcoshtanhcothcschsechasinhacoshatanhacothasechacsch)raisesXFAIL)implemented_function)eyeMatrix MatrixSymbolIdentityHadamardProduct SparseMatrix HadamardPower) jnynbesseljbesselybesselibesselkhankel1hankel2airyaiairybi airyaiprime airybiprime)gamma lowergamma uppergammaloggamma polygamma)ChiCierferfcerfierfcinverfinvfresnelcfresnelsliShiSiLierf2Ei) octave_coder}zx,y,zchttddk(sJttddk(sJy)NC67z-1)mcoder f/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/printing/tests/test_octave.py test_Integerr"s0   %% %   %% %rcXttdddk(sJttdddk(sJttdddk(sJttd ddk(sJtttddzd k(sJttddtzd k(sJy) Nz3/7 2iz-3/7zx + 3/7z3*x/7)rrxrrr test_Rationalr's !Q E )) ) "a !S (( ( !R !V ++ + "b! "e ++ + Xa^# $ 11 1 !Q! "g -- -rcttttdk(sJtt ttdk(sJtt ttdk(sJtt ttdk(sJttttdk(sJttttdk(sJy)Nzx == yzx != yzx <= yzx < yzx > yzx >= y) rrryrrrrrrrrtest_Relationalr0s Aq?h && & Aq?h && & Aq?h && & Aq?g %% % Aq?g %% % Aq?h && &rcHtttttzdk(sJtt tdk(sJtt tdk(sJtt tdk(sJtttdk(sJtttdk(sJttttdk(sJttttdk(sJttttd k(sJtttd k(sJtttd k(sJttttd k(sJttttd k(sJy)Nzsin(x).^cos(x)zsign(x)zexp(x)zlog(x)z factorial(x)zfloor(x)z atan2(y, x)z beta(x, y)z polylog(x, y)z harmonic(x)z bernoulli(x)zbernoulli(x, y)zlegendre(x, y))rr;rr<r3r#r,r%r&rrrr0r'rr8rrr test_Functionr9s? Q3q6! "&6 66 6 a>Y && & Q=H $$ $ Q=H $$ $ 1 . 00 0 q?j (( ( q!  .. . a  ,, , A ? 22 2 !  .. . 1 . 00 0 1a !%6 66 6 !Q $4 44 4rctttdk(sJtttdk(sJtt tdk(sJtt tdk(sJtt tdk(sJtttdk(sJttttdk(sJttttdk(sJttttd k(sJtttd k(sJtttd k(sJtttd k(sJtttd k(sJtt!tdk(sJtt#tdk(sJtt%ttdk(sJtt'ttdk(sJtt)tdk(sJtt)tddk(sJtt+tdk(sJtt+ttdk(sJtt-ttdk(sJtt/ttdk(sJy)Nzabs(x)zceil(x)zangle(x)zimag(x)zreal(x)zconj(x)zchebyshevT(y, x)zchebyshevU(y, x)zlaguerreL(x, y)z coshint(x)z sinhint(x)z cosint(x)z sinint(x)z logint(x)z gammaln(x)z psi(x, y)zpochhammer(x, y)zdirac(x)rz dirac(3, x)zheaviside(x, 1/2)zheaviside(x, y)zbincoeff(x, y)z mod(x, y))rabsrrrr)r1r!r rrr*rnrxroryrwrlrmr2r"r(r7rrrrtest_Function_change_namerIs' Q=H $$ $   )) ) Q=J && & A<9 $$ $ A<9 $$ $ 1 ) ++ + Aq! "&8 88 8 Aq! "&8 88 8 !Q $5 55 5 Q=L (( ( Q=\ )) ) A<; && & A@ ADR SS Srctttzdk(sJtttzdk(sJtttz dk(sJtt dk(sJy)Nx.*yzx + yzx - yz-x)rrrrrrtest_basic_opsrusX 1:   Q<7 "" " Q<7 "" " !9  rctdtz dk(sJttdzttdzcxk(rdk(sJJtdttz dk(sJtttj zttdzcxk(rdk(sJJtttdk(sJtttjzttdzcxk(rdk(sJJtdt z d k(sJtt dztt dzcxk(rd k(sJJtt dzd k(sJy) Nrz1./xrgz 1./sqrt(x)gzsqrt(x)g?z1/piz 1/sqrt(pi))rrr5rHalfrrrrtest_1_over_x_and_sqrtr|s' 1:   B<5D> 3V 33 33 3 47 | ++ + QVVG ag >, >> >> > a>Y && & AFF uQV} 9 99 99 9 2;&  R=E"d(O 5v 55 55 5 T?l ** *rctdtzdk(sJtttzdk(sJtdtz dk(sJtttz dk(sJttdz dk(sJtttz dk(sJtttzdk(sJtdtztzd k(sJtdtztztzd k(sJtttz d k(sJtdtztz d k(sJtttztz d k(sJtttz tzdk(sJtdtz tz dk(sJtdtztztz tz dk(sJtdtztz dk(sJtt ddz dk(sJtt ddz tzdk(sJtttz tz dk(sJtttztz dk(sJtttzttzz dk(sJtttzt z dt jdzk(sJttdz tz dk(sJtt ddz tztztz dk(sJy)Nrz3*xzpi*xz3./xzpi./xzx/3zx/pirz3*x.*yz 3*pi*x.*yzx./yz3*x./yzx.*y./zzx.*z./yrz 1./(x.*y)rz2*pi*x./(y.*z)z3*pi./xz3/5z3*x/5z x./(y.*z)z (x + y)./zz(x + y)./(x + z)z (x + y)/%szx/(3*pi)z 3*x.*y/(5*pi))rrrrrrr evalfrrrtest_mix_number_mult_symbolsrs 1:   A;&  1:   A;' !! ! 1:   2;&  1:   1Q<8 ## # 2a?k )) ) 1:   1Q<8 ## # 1Q<9 $$ $ 1Q<9 $$ $ 1Q<; && & 2a!  0 00 0 2a=I %% % 1a=E !! ! 1a?g %% % 1Q<; && & !A#q>\ )) ) !A#! !3 33 3 !A#z! "lZ5E5Eb5I&I II I 1R=J && & 1a!B ? 22 2rcZttdzdk(sJttdzdk(sJtttdzzdk(sJtttzdk(sJttttzzdk(sJtttztzdk(sJy) Nrzpi^3rzx.^2z x.^(pi^3)zx.^yz x.^(y.^z)z (x.^y).^z)rrrrrrrrtest_mix_number_pow_symbolsrs Q<6 !! ! A;&  RU  ++ + A;&  QT { ** * !Q$ { ** *rctd}t|dk(sJtd|zdk(sJttddz |zdk(sJtdd|zzd k(sJttd|zd k(sJy) NI1ir5irrz3*1i/2z3 + 4iz sqrt(3)*1i)rrr5)rs r test_imagrs #A 8t   1:   !A$q&!  (( ( 1Q3<8 ## # a | ++ +rcdttdk(sJttdk(sJtt dk(sJttjdk(sJttj dk(sJttj dk(sJttddk(sJy)Nrinfz-infNaNzexp(1)r)rrrrNegativeInfinityrExp1r#rrrtest_constantsrs 9   9   ":   ## $ .. . <5  =H $$ $ Q=H $$ $rctdtzdk(sJtdtzdtjdzk(sJtdtzdt jdzk(sJy)Nrz2*(1+sqrt(5))/2z2*%sr)rr rrr rrrtest_constants_otherrsf ; #4 44 4 7 v b(99 99 9 : &:+;+;B+?"? ?? ?rctttzdk(sJtttzdk(sJttdk(sJtttztzdk(sJtttztzdk(sJtttztzdk(sJtttztzdk(sJy)Nzx & yzx | yz~xz x & y & zz x | y | zz z | x & yz z & (x | y))rrrrrrr test_booleanrs Q<7 "" " Q<7 "" " !9   Q { ** * Q { ** * !a%1  ,, , !a%1  .. .rcddlm}t|ttdk(sJt|ttdzdk(sJt|dtztdk(sJy)NrKroneckerDeltazdouble(x == y)rzdouble(x == (y + 1))rzdouble((2.^x) == y))sympy.functionsrrrrrs rtest_KroneckerDeltars^. 1% &*: :: : 1q5) *.D DD D 1a( )-B BB Brc &ttdddgdk(sJtdttdz t tgddt gdt dttgg}d}t||k(sJt|dddfdk(sJt|dddfdk(sJttddgd k(sJttdd gd k(sJtttttz t ggd k(sJy) Nr 10rrz-[1 sin(x/2) abs(x); 0 1 pi; 0 exp(1) ceil(x)]z [1; 0; 0]z[1 sin(x/2) abs(x)]z[]rz zeros(0, 3)z [x x - y -y]) rrWr;rrrr#rrAexpecteds r test_Matricesrs  1rd# $ ,, ,C!Hc!f%Ar CFGAJ') *A?H 8x   1Q3=K '' ' 1Q3=1 11 1 1b! "d ** * 1b! "m 33 3 !QUQB() *n << 1q"gr: ;3 44 4  $4 44 4 !:   ;%    " #{ 22 2 !QqS1ad)$ %)? ?? ? !SVVAq"-r2 37[ [[ [rctttztz dd}dtjdz}||k(sJy)NmeF assign_toinlinez#Catalan = %s; me = (x + y)/Catalan;r)rrrrr)sourcers rtest_octave_noninliners@ AaC=D ?F  bH X  rcbtttdkftdzdftdk(sJtddk(sJtdd d k(sJttdztdkftd ztdkftd ztd kftd zdfd}t|k(sJtdd|zdzk(sJtdd dk(sJtttdkftdztdkDftttdkDft t fdy)NrrTz#((x < 1).*(x) + (~(x < 1)).*(x.^2))rrz(r = ((x < 1).*(x) + (~(x < 1)).*(x.^2));Frz(if (x < 1) r = x; else r = x.^2; endrrrzp((x < 1).*(x.^2) + (~(x < 1)).*( ... (x < 2).*(x.^3) + (~(x < 2)).*( ... (x < 3).*(x.^4) + (~(x < 3)).*(x.^5))))zr = ;zaif (x < 1) r = x.^2; elseif (x < 2) r = x.^3; elseif (x < 3) r = x.^4; else r = x.^5; endrctS)Nr)exprsrz'test_octave_piecewise..Es uT{r)r/rrr;rS ValueError)rrs @rtest_octave_piecewiser(sA aQZ!Q$ .D ;? ?? ?  %2 44 4 U 3    adAE]QT1q5MAqD!a%=1a4, OD:H ;( "" "  %():S)@ @@ @ U 3     aQZ!Q$AQQ @D :*+rctttdkftdzdf}td|zdk(sJt|tz dk(sJt|ttzz dk(sJt|dz dk(sJy) NrrTz%2*((x < 1).*(x) + (~(x < 1)).*(x.^2))z&((x < 1).*(x) + (~(x < 1)).*(x.^2))./xz+((x < 1).*(x) + (~(x < 1)).*(x.^2))./(x.*y)rz%((x < 1).*(x) + (~(x < 1)).*(x.^2))/3)r/rrr)pws r!test_octave_piecewise_times_constrHs~ Aq1u:1d| ,B 2;A AA A A;B BB B QqS?K KK K A;A AA Arctgdg}t|ddk(sJtddgddgg}t|d d k(sJy) Nrarz a = [1 2 3];rrrrrzA = [1 2; 3 4];)rWrrs rtest_octave_matrix_assign_torPsP {A c "n 44 4AA A c "&7 77 7rctgdgtddd}tdddt|dk(sJttfd ttfd y) NrrrrCrrz B = [1 2 3];c&ttSNr)rrrsrrz3test_octave_matrix_assign_to_more..]suQ!4rctSrrrrsrrz3test_octave_matrix_assign_to_more..^uQ!4rrWrXrrSrrrrs @@r!test_octave_matrix_assign_to_morerWsV {AS!QAS!QA a N 22 2 :45 :45rctdggtddd}tdddt|dk(sJttfdy) NrrrrrrzB = 3;ctSrrrsrrz(test_octave_matrix_1x1..hrrrrs @@rtest_octave_matrix_1x1rasNu AS!QAS!QA a H ,, , :45rcFttdttzgg}t|ddz|dz|dzdk(sJt ddd}t|dk(sJt|ddzt |dz|dzd k(sJtt |d k(sJy) Nrrr)rr)rrzx.^2 + x.*y + 2AArrz&sin(AA(1, 2)) + AA(1, 1).^2 + AA(1, 3)zAA(1, 1) + AA(1, 2) + AA(1, 3))rWrrrrXr;sumrs rtest_octave_matrix_elementsr ksAqs }A 4!ag%$/ 04E EE ET1a A 8t   4!c!C&k)AcF2 3 3 44 4 Q=< << W $$ $rctt5ttjdddt d}t|t jt ddk(sJy#1swYDxYw)NfFstrictz;% Not supported in Octave: % Derivative Derivative(f(x), x))rSNotImplementedErrorrrComplexInfinityrrdiffrs rtest_octave_not_supportedr|sa # $! a ! A 11e ,   !!s A--A6cddlm}tt5t |t t tdddy#1swYyxYw)Nrassoc_laguerre)#sympy.functions.special.polynomialsrrSrrrrrrs r*test_octave_not_supported_not_on_whitelistrs4B # $' nQ1%&'''s ?Acttdtdk(sJtt5ttdtdddttt tddk(sJy#1swY.xYw)Nrz expint(x)rFrz0% Not supported in Octave: % expint expint(y, x))rr$rrSrrrrrtest_octave_expintrsk 1 + -- - # $ fQl 1e ,   s A55A>ctd}td}t|tdkf|tdkfd}t|ddk(sJy) Nendless elsewhererr)rTF)rz=if (x < 0) endless elseif (x <= 1) elsewhere else 1 end)rr/rr)t1t2rs r%test_trick_indent_with_end_else_wordsr#sP 9B ;B BA;Q!V i 8B E "   rc0tddd}tddd}tddd}tddd}t||}td}t|dk(sJt||zd k(sJt||z|zd k(sJt||zd k(sJt|tzt zd k(sJtt ||d k(sJtt |d|zdk(sJtt ||jzd|zdk(sJy)NrrrvrhrzA.*Bz(A.*B)*vz h*(A.*B)*vz(A.*B)*Az (x.*y)*(A.*B)zA.**nz A.**(n + 1)z(A*B.T).**(n + 1))rXrZr rrrr\r)rrr%r&rrs r test_hadamardr's"S!QAS!QAS!QAS!QA1As A 8v   1: ## # 1Q<< '' ' 1: ## # 1Q\ )) ) a!e !3 33 3 b!a%j! "m 33 3rcPtttttt t tttttttttt t"t$t&t(t*t,t.fD])}t1|t2|j4dzk(r)Jy)N(x))r;r<r=r>r?r@rArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRr}r__name__rs r test_trigfunr3sh3S#sD$dD$D$dD%uU71Q41::#556667rc td}ttttfD]*}t ||t |jdzk(r*JttttttttfD])}t |t |jdzk(r)Jt t!|t dk(sJt t#|t dk(sJt t%t dk(sJt t't dk(sJt t)t dk(sJt t+t d k(sJt t-|t d k(sJt t/|t d k(sJt t0t/|t zd k(sJt t3|t d k(sJt t5|t dk(sJt t7t dk(sJt t7t |dk(sJt t9t dk(sJt t;t dk(sJt t=t dk(sJy)Nrz(n, x)r1zbesselh(n, 1, x)zbesselh(n, 2, x)z airy(0, x)z airy(1, x)z airy(2, x)z airy(3, x)z#(gammainc(x, n, 'upper').*gamma(n))z(gammainc(x, n).*gamma(n))zz.^(gammainc(x, n).*gamma(n))z2sqrt(2)*sqrt(pi)*sqrt(1./x).*besselj(n + 1/2, x)/2z2sqrt(2)*sqrt(pi)*sqrt(1./x).*bessely(n + 1/2, x)/2z lambertw(x)zlambertw(n, x)z(logint(exp(x)))zA(((x == 1).*(log(2)) + (~(x == 1)).*((1 - 2.^(1 - x)).*zeta(x))))z/(pi.^(-x/2).*x.*(x - 1).*gamma(x/2).*zeta(x)/2))r r_r`rarbr}rr2rqrrrprtrsrurvrircrdrergrfrhrkrjrr]r^r+r|r9r:)rrs r test_specfunr5ss Aw 1=1Q7#qzzH'<<<<=D#vw(E J71Q4 AJJ$66667 wq!} %); ;; ; wq!} %); ;; ; vay !\ 11 1 {1~ &, 66 6 vay !\ 11 1 {1~ &, 66 6 z!Q' (,S SS S z!Q' (,H HH H q*Q** +/N NN N r!Qx $X XX X r!Qx $X XX X x{ #} 44 4 x1~ &*: :: : r!u !3 33 3 }Q' (,o oo o z!} %)Z ZZ Zrctddd}tddd}tddd}t|ddk(sJtd|dzdk(sJ|dj|||z }t|d k(sJy) NrrrrrrzA(1, 1)z 3*A(1, 1)z (A - B)(1, 1))rXrsubs)rrrFs rtest_MatrixElement_printingr9sS!QAS!QAS!QA 4>Y && & QtW  ,, , $ QAA 8 && &rctttdk(sJtt5tttt dddy#1swYyxYw)Nzzeta(x))r}r6rrSrrrrrtest_zeta_printing_issue_14820r;sE tAw 9 ,, , # $ DAJ   s AActttdk(sJttttdk(sJy)Nz(logint(x) - logint(2))z(-erf(x) + erf(y)))r}rzrr{rrrrtest_automatic_rewriter=s4 r!u !: :: : tAqz "&: :: :rN) sympy.corerrrrrrr r r r r rrrrrrrrrrrsympy.codegen.matrix_nodesrrrrrrrrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r/r0r1r2r3r4r5r6r7r8r9r:r;r<r=r>r?r@rArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRsympy.testing.pytestrSrTsympy.utilities.lambdifyrUsympy.matricesrVrWrXrYrZr[r\sympy.functions.special.besselr]r^r_r`rarbrcrdrerfrgrh'sympy.functions.special.gamma_functionsrirjrkrlrm'sympy.functions.special.error_functionsrnrorprqrrrsrtrurvrwrxryrzr{r|sympy.printing.octaver}rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr r rrrr#r'r-r/r3r5r9r;r=rrrrGsGGGGGG3)))))))))MMMMMMM/9JJJNNNN@@?????D ' 1a& .' 5 +46 S +36+,%@ /C="7   )0 . \,@B866=%'  C( 4 7[4 ' ;r