K i/ddlmZmZddlmZddlmZmZddlm Z ddl m Z m Z m Z mZmZmZmZmZmZddlmZddlmZe dd d Ze d d d Ze d d d Ze d ddZe dddZe dddZe dd dZe dd dZdZ dZ!dZ"edZ#dZ$dZ%dZ&dZ'dZ(dZ)dZ*dZ+dZ,d Z-d!Z.ed"Z/d#Z0d$Z1d%Z2d&Z3d'Z4d(Z5y))*)Qask)Symbol) DiagMatrixDiagonalMatrix)Matrix) MatrixSymbolIdentity ZeroMatrix OneMatrixTrace MatrixSlice Determinant BlockMatrixBlockDiagMatrix)LofLU)XFAILXYZA1x1B1x1C0x0V1V2cttjtsJttjtrJttjttj zsJyN)rrsquarerrTk/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/assumptions/tests/test_matrices.py test_squarer&sL qxx{  188A;  qxx!##  r$cttjttjtsJttjtdusJttjttztjtdusJttjtt ztjtJttjtt ztjttjt zdusJttjtj Jttjtj tjtdusJttjtjdusJttjtddusJttjtdddusJttjtdddusJttjtdddusJttjttjttjtzsJy)NFTrr) rr invertiblerrrr"Ir r r fullrankr!r#r$r%test_invertibler+s q||A Q 00 0 q||A 5 (( ( q||AaC !,,q/ 2e ;; ; q||AaC !,,q/ 2 :: : q||AaC !,,q/ALLO"C D LL L q||ACC ! )) ) q||ACC !,,q/ 2d :: : q||ACC !T )) ) q||HQK( )T 11 1 q||Jq!,- .% 77 7 q||IaO, - 55 5 q||IaO, - 66 6 q||A 1  ; << AKKN#B Ct KK K q{{1~ % '' ' q{{1QSS5! "d ** * q{{133q57# $ ,, , q{{133q57#Q[[^ 4 << < q{{1b5!1;;q> 2d :: : q{{4 !T )) ) q{{4$;' (D 00 0 q{{4$;' (D 00 0 q{{2447# $ ,, , q{{244b>* +t 33 3 q{{244b>D01 2d :: : q{{;q&&9: ;t CC C q{{8A;' (D 00 0 q{{:a+, - 55 5 q{{9Q?+ , 44 4r$ct|t|tsJt|tj|tdusJt|tj|tdusJt|tdz|tsJt|tdusJt|tJt|tt j tdusJt|ttztz|t|tzdusJt|tddusJt|tdddusJtt j t|tsJt|ttz|t|tzrJy)NTrFr) rrr"r)rrr(rr r ) predicates r%_test_orthogonal_unitaryrChsw y|Yq\ ** * y~y| , 44 4 y~y| , 44 4 yA ! -- - y|  %% % y|  $$ $ y|all1o- .% 77 7 y1Q1 ! !< = EE E y!% &$ .. . yAq)* +u 44 4 q||A ! -- -9QU#Yq\IaL%@AA AAr$c6ttjyr )rCr orthogonalr#r$r%test_orthogonalrFvsQ\\*r$cttjttjttj tsJyr )rCrunitaryrrrEr#r$r% test_unitaryrIys.QYY' qyy|Q\\!_ -- -r$cttjttjtsJttjtdztjtsJttjtjtjtdusJttjtJttjt Jttjtt ztjttjt zdusJttjtddusJttjtdddusJttjtdddusJttjtdddusJttjttjtdk(sJy)NrTrFr) rrr*rr"rrr r r r(r#r$r% test_fullrankrK}s qzz!}ajjm ,, , qzz!Q$A // / qzz!## 1 .$ 66 6 qzz!}  %% % qzz!}  %% % qzz!A# 1  1 = >$ FF F qzz(1+& '4 // / qzz*Q*+ , 55 5 qzz)Aq/* +t 33 3 qzz)Aq/* +u 44 4 q||AA /5 88 8r$cttjttjtsJttjtjtjtdusJttjtj tjtdusJttjt dusJttjtJttjtdztjtsJttjttztztjttjtzdusJttjttjtsJttjt jtzt ztjttjt zdusJttjt jtzt ztjtrJttjtddusJttjtdddusJttjtdddusJttjtdddusJttjttztjttjtzdusJttjt tjtrJttjtdtjtsJy)NTFrr)rr)rrpositive_definiterr"r)rrrEr*r r r positiver#r$r%test_positive_definiterOs q""1%q':':1'= >> > q""133')<)> > q""9Q?3 4 << < q""9Q?3 4 == = q""1q5)1+>+>q+A   ",# $'+ ,, ,1&&r*A,?,?,BCC C qzz!D'"A$7$7$: ;; ;r$cttjttj zt dztjttjtzdusJttjttj ztjttjtzdusJttjt ddusJttjtdddusJttjtdddusJttjtdddusJttjtdddusJttjtdddusJttjtdddusJttjttjtsJttjtdztjtsJttjtdztjtsJy)NrTrrF) rrupper_triangularrrr"r lower_triangularr r triangularunit_triangularr#r$r%test_triangularrUs q!!!acc'HQK"78!:L:LQ:O  q !;" #&* ++ + q!!!ACC%(!*<* ?? ? q!!!Q$'););A)> ?? ?r$c ttjttj zt dztjttjtzdusJttjtddsJttjtdddusJttjtdddusJttjttjtztjtsJttjttjttjtzsJttjttjtsJttjttjtsJttjtsJttjtsJttjttzsJttjttzsJttjt j t"zsJttjt j ttzzt zsJttjt%t&dddusJttjt j t t"zzdusJttjtdztjtsJttjt dsJttjt)t sJttjt+tsJy)NrTrrFr=r>)rrdiagonalrrr"r r r rRrQr?rSrrrrrrrrrr#r$r% test_diagonalrXs qzz!acc'HQK/0!**Q-zz!}3 !% && & qzz*Q*+ ,, , qzz)Aq/* +t 33 3 qzz)Aq/* +u 44 4 q!!!$q'9'9!'<> > q||AaC !"4"4Q"7!!!$#% &)- .. .r$cbtddd}t|dd}t|dd}ttj|tj|sJttj |tj |sJttj |tj |sJttj|tj|sJttj|tj|sJttj|tj|rJttj |tj |rJttj |tj |rJttj|tj|rJttj|tj|rJy)Nrr3)rr)rr) r rrrr?r(rWrErQ)rBCs r%test_MatrixSliceras{S!QAAvv&AAvv&A q{{1~q{{1~ .. . q||A Q 00 0 qzz!}ajjm ,, , q||A Q 00 0 q!!!$a&8&8&; << <1;;q>1;;q>22 21<<?ALLO44 41::a=!**Q-00 01<<?ALLO44 41%%a(!*<*+>q+A BB Br$c~ tddd}tddd}ttj|tj|sJttj|tj|rJttj |tj|sJttj |dztj|sJttj|dztj|sJttj||ztj|Jttj||ztj|tj|zsJddlm}ttj|||tj|tj|zsJttj ||ztj|tj |zsJttj|jtj|sJttj|jtj|tj|zsJttjt|tj|sJttjt|tj|sJttj|jtj|rJtd}ttj||ztj|tj|zsJttjt|tj|sJtdd d }ttj||ztj|tj|zsJttj||ztj|Jy) Nrr3rrr)HadamardProductalphaeT)integernegative)r rr real_elementsinteger_elementscomplex_elements#sympy.matrices.expressions.hadamardrfr"r)r(r rrrZr)rrrfrgrhs r%test_field_assumptionsrosNS!QAS!QA qq!1??1#5 66 61%%a(!//!*<== = q!!!$aooa&8 99 9 q!!!Q$'); << < qq!t$a&8&8&; << < qqs#Q__Q%7 8 @@ @ qqs#Q__Q%7!//!:L%L MM MC qq!45OOA&);; == = q!!!A#&(:Q=O=OPQ=R(R SS S qqss#Q__Q%7 88 8 qqss#Q__Q%7!,,q/%I JJ J quQx(!//!*< == = q!!+a.113E3Ea3H II I1%%acc*A,>,>q,ABB B 7OE quQw');affUm)K LL L quQx(!//!*< == =sD40A qq!t$aooa&81<<?&J KK K qq!t$aooa&8 9 AA Ar$ctddd}ttj|dtj|sJttj |dtj |sJttj|dtj|sJttj tdsJttj tddsJttj tddsJddl m }ttj|dsJy)Nrr3r>rr)DFT)r rrrZrkrirlcomplexrmr r r "sympy.matrices.expressions.fourierrq)rrqs r%test_matrix_element_setsrtsS!QA qvvag 2 33 3 qyy4!1#5#5a#8 99 9 qyy4!1#5#5a#8 99 9 q!!(1+. // / q!!*Q"23 44 4 q!!)Aq/2 33 36 q!!#a&) ** *r$ctddd}ttj|dddftj|sJttjt |g|ggtj|sJy)Nrr3r)r rrrlrrcs r%&test_matrix_element_sets_slices_blocksrvsxS!QA q!!!AqD'*A,>,>q,A BB B q!!+sQCj"9:**1- // /r$cttjtttj tsJttjt ttj tsJyr )rrrirrrlr r#r$r%*test_matrix_element_sets_determinant_tracerxsR qyyQ(!*<*rs+*$L'RRR;&aaaFAq!FAq!FAq!$1$1 =8 778U 5* B+. 9<,@".07..A C B6 +/ ;r$