K i&ddlZddlZddlmZddlmZmZmZm Z m Z m Z m Z m Z mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm 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:m;Z;mZ>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLddlMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUddlVmWZWmXZXddlYmZZZddl[m\Z\m]Z]m^Z^ddl_m`Z`dd lambZbmcZcmdZddd lemfZfdd lgmhZhmiZimjZjmkZkmlZlmmZmdd lnmoZompZpdd lqmrZree%eefZsee%fZteefZudZvdZwdZxdZydZzdZ{dZ|dZ}dZ~dZdZdZdZdZdZdZdZdZd Zd!Zd"Zd#Zd$Zd%Zd&Zd'Zd(Zd)Zd*Zd+Zd,Zd-Zd.Zd/Zd0Zd1Zd2Zd3Zd4Zd5Zd6Zd7Zd8Zd9Zd:Zd;Zd<Zd=Zd>Zd?Zd@ZdAZdBZdCZdDZdEZdFZdGZdHZdIZdJZdKZdLZdMZdNZdOZdPZdQZdRZdSZdTZdUZdVZdWZdXZdYZdZZd[Zd\Zd]Zd^Zd_Zd`ZdaZdbZdcZddZdeZdfZdgZdhZdiZdjZdkZdlZdmZdnZdoZdpZdqZdrZdsZdtZduZdvZdwZeldxZdyZdzZd{Zd|Zd}Zd~ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ dZ dZ dZ dZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)d„Z*dÄZ+dĄZ,dńZ-dƄZ.dDŽZ/dȄZ0dɄZ1dʄZ2d˄Z3d̄Z4d̈́Z5d΄Z6dτZ7eldЄZ8dфZ9d҄Z:dӄZ;dԄZdׄZ?d؄Z@dلZAdڄZBdۄZCd܄ZDd݄ZEdބZFd߄ZGdZHdZIdZJdZKdZLdZMdZNdZOdZPekddZQdZRdZSy)N)Hashable)GAbsAddArrayDeferredVectorEExpr FiniteSetFloatFunction GramSchmidtIImmutableDenseMatrixImmutableMatrixImmutableSparseMatrixIntegerKroneckerDeltaMatPowMatrix MatrixSymbolMaxMinMutableDenseMatrixMutableSparseMatrixPolyPowPurePolyQ QuaternionRationalRootOfS SparseMatrixSymbolTupleWildbanded casoratiancosdiagdiffexpexpandeyefloorhessian integratelogmatrix_multiply_elementwisenanonesoopi randMatrix rot_axis1 rot_axis2 rot_axis3 rot_ccw_axis1 rot_ccw_axis2 rot_ccw_axis3signsimpsimplifysinsqrtsstrsymbolssympifytantrigsimp wronskianzeroscancel)abcdtxyz) NumberKind UndefinedKind)_find_reasonable_pivot_naive) MatrixErrorNonSquareMatrixError ShapeError) MatrixKind)_dotprodsimp_state _simplify dotprodsimp)ArrayDerivative)ignore_warningsraisesskipskip_under_pyodideslowwarns_deprecated_sympy)captureiterable)versionchtddgd}|jdk(sJ|jdk(sJ|ddk(sJ|ddk(sJt|gdk(sJt|dddfgdk(sJt|dddfddgk(sJt|ddddft|k(sJ|ddddf|k(sJt||k(sJtgdgdg|k(sJtgdgdf|k(sJtddg|k(sJtd |k(sJtddgdd gdd gg|k(rJy) N)rhrirjrjrlrjrkrlrmrjrhri)rprorkrm)rrowscolslistrPs j/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/matrices/tests/test_matrixbase.pytest__MinimalMatrixrv#scq!'(A 66Q;; 66Q;; Q4199 T7a<< 7( (( ( !Q$=I %% % !Q$=QF "" " !Q$=DG ## # QT7a<< !9>> 9i( )Q .. . 9i( )Q .. . 9i( )Q .. . ( )Q .. .AAA/0A56 65ctddgddggjttk(sJtddgddggjttk(sJtddgjttk(sJttggjttk(sJtdtdggggjtt k(sJt dggjttk(sJt dtdggggjtt k(sJyNrjrhrirkr)rkindrYrSrPrTr#rwru test_kindr|6s Aq6Aq6" # ( (Jz,B BB B Aq6Aq6" # ( (Jz,B BB B !Q  Jz$: :: : A3%=  J!7 77 7 Avse}%& ' , , =0I II I !  # #z*'= == = !VaSE]+, - 2 2j6O OO Orwc^td\}}}}t||g||gg}t||g||gg}t||g||gg}t ||g||gg}|j |j cxk(r3|j cxk(r|j cxk(r ||||dk(sJJy)Nza:d)rrrrjrjrrn)rDrrrrtodok)rKrLrMrNm1m2m3m4s ru test_todokr@sJAq!Q aVaV, -B 1v1v. /B q!fq!f- .B AA/ 0B 88: 5rxxz 5RXXZ 5Aq!4 55 55 5rwc tjtjttztj gttt tdzgttj t tzdgg}tjtjttztj ttt tdzttj t tzdg }tdd|}|j|k(sJy)Nrhrirk) r"OneHalfrPrQZerorRrtolist)lstflat_lstms ru test_tolistrJs EE1661Q3 '!Q1a41quufac1:M NCqvvqsAFFAq!QT1quufac1MHq!XA 88:  rwcttjdgdtjgtdgg}dtjidtjidtid}|j |k(sJy)Nrrjrrjrh)rr"rrrPtodod)rdicts ru test_tododrQs[ QK!Q01A155zq!&&kq!f 5D 779  rwctddgdttfdttfdttfdttfdjdjdcxk(rt gd gd gk(sJJj dj dcxk(rt d dgd d gddggk(sJJjd jdcxk(rt gd gdgk(sJJj d j dcxk(rt d dgd dgddggk(sJJy)Nri rjrhrirkrlrm c&jdSNrlrow_delesruz"test_row_col_del..Yqyy|rwc&jdSNrrsrurz"test_row_col_del..Zqyy}rwc&jdSrcol_delrsrurz"test_row_col_del..[rrwc&jdSrrrsrurz"test_row_col_del..\rrwrhrprorjrkrlrrrrrrmr)rr_ IndexErrorrrrrs@rutest_row_col_delrWs&19:A :+, :,- :+, :,- 99Q<199R= JFIy3I,J JJ JJ J 99Q<199R= LFQFQFQF3K,L LL LL L 99Q<199R= JFIy3I,J JJ JJ J 99Q<199R= LFQFQFQF3K,L LL LL Lrwc@tddgddgg}tdtgtdgg}tdtdgtdtgtttgg}|j|gk(sJ|j|gk(sJ|j|gk(sJyNrjrhri)rrPrQrRget_diag_blocks)rKrLrMs rutest_get_diag_blocks1resAA AAA AAq Aq!9q!Qi01A 1   1# %% % 1   1# %% % 1   1# %% %rwctddgddgg}tdtgtdgg}tdtdgtdtgtttgg}t |||t |||t |||t |||f\}}}}t|j |j |}t|j |j |}t|j |j |}t|j |j |}|j|||gk(sJ|j|||gk(sJ|j|||gk(sJ|j|||gk(sJyr)rrPrQrRr*rqrrr)rKrLrMABCDs rutest_get_diag_blocks2rnsUAA AAA AAq Aq!9q!Qi01AaAQ1 tAq!}d1amKJAq!Qqvvqvvq!Aqvvqvvq!Aqvvqvvq!Aqvvqvvq!A   1a) ++ +   1a) ++ +   1a) ++ +   1a) ++ +rwctddgd}|jdtddgdk(sJ|jdtddgdk(sJy)Nrirrrjrprjrkr)rrowcolrs ru test_row_colr~sOq!01A 558vaI. .. . 558vaI. .. .rwc|tdjtgdtgdgdgdgk(sJy)Nrirrr)rjrrr)rrjrr)rrrjr)r.row_joinrr{rwru test_row_joinrs; q6??6), - <! " "" "rwctdjtgdgtgdgdgdgdgk(sJy)Nrirrjrrrrjrrrrj)r.col_joinrr{rwru test_col_joinrs@ q6??69+. / 9   rwctgdg}tddD]U}gd}|j|dtdj ||j dj |k(rUJy)Nrkrkrkrlrrkrir)rrangeinsertr. row_insertrflat)r4ils rutest_row_insertrsh  B 2q\;  A1v  B'++A.335:::;rwc tgd}tddD]U}gd}|j|dtdj ||j dj |k(rUJtdj dtd d gd d gd d gd d gd d gd d ggtgd gd gd gd gdgdgk(sJy)Nrrrlrrrrkrirrmrh)rjrrrhrhrrr)rrjrrhrhrrr)rrrjrhrhrrr)rrrrhrhrjrr)rrrrhrhrrjr)rrrrhrhrrrj)rrrrI col_insertrrr.)c4rrs rutest_col_insertrs  B 2q\=  AQx""1b)--a05571<<<= q6  QAAAAAQRTUPV'W X Y ++++++ - . .. .rwc`tdddjgdddgtddgdk(sJjddggd tddgd k(sJjtdtdk(sJttfd ttfd y) Nrkric|dz|zSNrir{rjs rurztest_extract..!A#'rw)rrjrirrjrh)rrjrirkr rrrh)rrrhrr c,jdgdgS)Nrkrextractrsrurztest_extract..qyy!qc2rwc,jdgdgS)Nrrirrsrurztest_extract..rrw)rrrr_rrs@ru test_extractrsq!)*A 99YA '6!Q8K+L LL L 99aVY '6!Q8K+L LL L 99U1XuQx (A -- - :23 :23rwctdddtdddjk(sJjtjcxk(rtgdgdgdgdgk(sJJttfd tjtk(sJtjd d }tjd d }tjd d }tjd d}tj||||j d k(rj d k(sJy)Nrkric|dz|zSrr{rs rurztest_hstack..rrwc|dz|zSrr{rs rurztest_hstack..1Q37rw) rrjrhrrjrhrrjrh) rirkrlrirkrlrirkrl) rmrrrmrrrmrr) rrrrrrrrrc(jSN)hstackrrsrurztest_hstack..qxx2rwrrjrhrm)rrr_rXrIrqrr)M1M2M3M4rrs @@ru test_hstackrs#q!)*A 1* +B    88Aq!  aA 6 4&1111 B3;4 44 44 4  :./ ==?fh && & a B a B a B a B b"b"%A 66Q;166Q;& &;rwctdddtdddjk(sJjtjcxk(r3tgdgdgdgdgdgdgdgdgdgdgdgdg k(sJJttfd tjtk(sJy) Nrkric|dz|zSrr{rs rurztest_vstack..rrwc|dz|zSrr{rs rurztest_vstack..rrwrrirkrlrmrrrrrc(jSr)vstackrsrurztest_vstack..rrw)rrr_rXrs@@ru test_vstackrsq!)*A 1* +B    88Aq!  aA 6 .& + + + + + + + + + + + + B- ;. . . . . . :./ ==?fh && &rwctttfdf}|jtsJ|jtrJ|jt sJtdtfdf}|jtrJy)Nrhrirh)rrPrQhasrRr$rs rutest_hasrsiA A 558O8uuQx< 55==A AuuQx.!rw)rDris_anti_symmetricrQr-r"rrs)rPrs rutest_is_anti_symmetricr sS A !QA  1 1 3u << <q!aA!aa!eaZKAaC!aRT1MNA   D (( (    . 66 6    4 << <q!!,Qhahhj,-A    .$ 66 6q!155'DGABK*?@Qhahhj@AA   E )) )-@s 6E E cbtdtgt dgg}|jsJtdtztgt dgg}|jdusJtttgt dgg}|jJttdgt dgg}|jdusJy)NrjrhFrr is_hermitianrPrKs rutest_is_hermitianrsA!Q !A >>>1aA2q'"#A >>U "" "A!Q !A >> !! !A!Q !A >>U "" "rwcJtttgttgg}|jdusJtgdgdg}|jdusJtgdddtdgg}|jdusJtdtd gg}|jdusJtgd g}|jdusJtdgtgd gg}|jdusJtdgd gd gg}|jdusJy) NTrjrhrirkrlrmrrFrlrmrrjrirprh)rrP is_symbolicr s rutest_is_symbolicrs#AA A 1==?d "" " l+,A 1==?e ## # q!Ql+,A 1==?d "" "Aq {A 1==?d "" " {A 1==?e ## #aS1#A 1==?d "" "aS1#A 1==?e ## #rwc|tdgdgg}tddgddgg}|jrJ|jsJyNrjrh)r is_squarers rutest_is_squarersCaSzA !Q!Q !B{{? <<>  q!\"A~~ rwc$tgdgdgdg}|jsJtddgd}|jsJtddgd}|jdusJ|jdusJtgdgdgdg}|jrJy) Nrirkrjrhrkrlrri) rirhrrkrkrjrjrlrh) rirhrrkrkrjrjrlrhFrirjrh)ris_upper_hessenbergis_lower_hessenbergrs rutest_is_hessenbergr# s 9i01A  q!01A  q!12A E )) ) E )) ) 9i01A$$$ $$rwc ttddgdjhdk(sJtdd}ttdd|dddgj|dhk(sJy) Nrhrrjrhri>rjrhrirPTrealrrj)setrvaluesr$rts ru test_valuesr*-sv vaL &(   !! !sA vaQ1aL &( 1v  rwctdtdggdg}|jtddgtdgddggk(sJ|jtdt dggdgk(sJ|j|j k(sJ|j |jjk(sJ|j tddgt dgddggk(sJy)Nrrlrjrhrrjrh)rrTr conjugateHMs rutest_conjugater25sAq  A 33&1a&a&a&"# ## # 33&1qb!*$&' '' ' 33!++-   33!##%%<< 33&Aq'2q'q'#$ $$ $rwcttttdgg}|ddtzk7sJ|jtdtzggk(sJy)NFevaluaterrh)rrrPdoitr s ru test_doitr7GsQQE*+,-A Q41Q3;; 1668v!ug && &rwctddtddgtfdtdDsJtfdtdDsJtfdtdDsJy)Nrhrjrlrmc3nK|],}j||jk(.ywrevalf.0rrKs ru ztest_evalf..Os,>wqwwy|qtzz|+>25c3rK|].}jd||jdk(0ywrhNr:r<s rur>ztest_evalf..Ps0@!wqwwqz!}! 1 -@47c3rK|].}jd||jdk(0ywrAnr<s rur>ztest_evalf..Qs08!sqss1vayAaDFF1I%8rB)rrBallrr s@ru test_evalfrGMsaq!d1gq\"A >U1X> >> > @uQx@ @@ @ 8uQx8 88 8rwctdt\tddfd}tddfd}|j}||k(sJy)NF, Gclsrhc||zSrr{rrGs rurztest_replace..V!AaC&rwc||zSrr{rrFs rurztest_replace..WrOrwrDr rreplace)Kr1NrRrNs @@ru test_replacerWTsK 6x (DAqq!()Aq!()A !QA 6M6rwc tdt\tddfd}|jd\}}|tddfdk(sJ|ddddddik(sJy) NrIrJrhc||zSrr{rQs rurz"test_replace_map..^rOrwTc||zSrr{rMs rurz"test_replace_map..`s!AaC&rwrrjrS)r1rVrNrRrNs @@rutest_replace_mapr[\s 6x (DAqq!()A 99Q4 DAq q!01 11 1 1qtQqT1Q41qt4 44 4rwcP ddlmm}t ddgddggddgddgg}|sJ|d |sJt td jd ddk\rttfd yy#t$rt dYwxYw) Nr)array array_equal?NumPy must be available to test creating matrices from ndarraysrjrhrirkTcopynumpy.cdS)NFr`r{)rr]srurz'test_numpy_conversion..ms%"6rw) rbr]r^ ImportErrorr`rintrfsplitr_ TypeError)r^np_arrayrr]s @@rutest_numpy_conversionrjcsP, 1!u~AqeaU^$H uQx ** * uQT*H 55 5 77  ! !# &q )*a/y670 P NOPsBB%$B%cHtddgddgg}||jdcxk(r|jdk(sJJ|jd|jdcxk(r$|jdcxk(rtdk(sJJ|jd|jd cxk(r$|jd cxk(rtd k(sJJ|j|jd cxk(r$|jd cxk(rtdk(sJJy)Nrjrhrirkrrrm))rkrirhrjrr))rhrkrjri)rirj)rkrh)rrot90rs ru test_rot90rrosAA A  (aggaj (( (( ( 771: N Nf=M6N NN NN N 771: N Nf=M6N NN NN N 779 Nqwwr{ Nf=M6N NN NN Nrwc0tdtgtdggjtdtddgddggk(sJttdgttzdggjtdgtdggtddgddggk(sJttdgttzdggjtdftdfgtddgddggk(sJttdgttzdggjtdtditddgddggk(sJtttzggjttdz ttdz id ttdz tdz zggk(sJy) NrjrkrlrhrrroT) simultaneous)rrPsubsrQr{rwru test_subsrvws Aq6Aq6" # ( (A .&1a&1a&9I2J JJ J Aq6AE1:& ' , ,q"g2w-? @ B7RG$ % && & Aq6AE1:& ' , ,q"g2w-? @ B7RG$ % && & Aq6AE1:& ' , ,aQ^ < B7RG$ % && & AaC5'?  AE1a!e 44  H QUQUO$% & '' 'rwc"tddgdttfdttfdjddgddgg}j ddgddgg|cxk(rtgd gd gd gk(sJJj ddgddgg}j ddgddggd |cxk(rtgdgdgdgk(sJJj ddgddggd}j ddgddggd d|cxk(rtgdgdgdgk(sJJj gdtgd gd gd gk(sJddlm}j |gdtgd gd gd gk(sJy)Nrirk) rjrhrirkrlrmrrrrr c.jddggS)Nrrl)permuter srurztest_permute..syqyy1a&2rwc:jtdS)NrP)rzr$r srurztest_permute..syqyy5rwrrhrjrrrrrxrrr) orientation)rhrirjrk)rmrrlr)rrrrxbackward) direction)r}r)rirjrhrk)rrlrmr)rrrrx)rjrhrri) Permutation) rr_r ValueError permute_rowsrz permute_colssympy.combinatoricsr)rLrrKs @ru test_permutersq!<=A :23 :56AA'(A 199q!fq!f% &! >v,;,;,;7=0> >> >> > AA'(A 199q!fq!f%6 :a ."+++$-. .. .. . AA':>A 199q!fq!f%6Z PTU ."+++$-. .. .. . 199\ "f,;,;,;.='> >> > 0 199[. /6,;,;,;;=4> >> >rwc>tgdgdgdgdg}|jd}|tgdgdgdgdgk(sJ|jd}|tgdgdgdgdgk(sJ|j}|tgdgdgdgdgk(sJy)Nrjrjrjrjrhrrrjrjrrrrjrrrrr)rrjrjrj)rupper_triangular)rRs rutest_upper_triangularrs  A 1A $$$$    2A $$$$    A $$$$   rwc>tgdgdgdgdg}|j}|tgdgdgdgdgk(sJ|jd}|tgdgdgdgdgk(sJ|jd}|tgdgdgdgdgk(sJy)Nrrjrrrrjrjrrrjrjrjrrhrr)rlower_triangularrLs rutest_lower_triangularrs$$$$  A A $$$$ &' '' ' 1A $$$$    2A $$$$   rwc Ftgdtttgdtzdttzggztgddtzdtzdtzgdtzddtztzggk(sJtddddgt t fdy) NrprhrhrkrmrkrjczSrr{rrEsrurztest_add.. q1urwrrPrQrRr_rXrs@@rutest_addr Aq!9qsC1o67A q5FI!QqS!A#1dAaCE8JKL LL Lq!aVA :}%rwc&tddgddgg}|jdtk(sJ|jdtk(sJ t d t dy#t $rYt $rY"wxYw#t $rYyt $rYywxYw)Nrjrhrirkz2 @ aza @ 2)r __matmul__NotImplemented __rmatmul__eval SyntaxErrorrhr s ru test_matmulrsAA A 1<<?n ,, , 1== ~ -- -  W   W            s0 A! A:! A7,A76A7: BBBcGddt}tddgddgg}|}||zt|d|zgd|zd|zggk(sJ||zt|d|zgd|zd|zggk(sJy)zd Test that if explicitly specified as non-matrix, mul reverts to scalar multiplication. ceZdZdZdZdZy)test_non_matmul..fooFrnN)__name__ __module__ __qualname__ is_Matrix is_MatrixLikeshaper{rwrufoors  rwrrjrhrirkN)r r)rrrLs rutest_non_matmulr s d AA A A Q3&1ac(QqS!A#J/0 00 0 Q3&1ac(QqS!A#J/0 00 0rwcLtddddg}| tddddgk(sJy)NrjrhrrrrDs rutest_negrs1q!aVA 21r2h' '' 'rwcPtddddg}||z tddddgk(sJy)NrjrhrrrDs rutest_subrs3q!aVA q5F1a!Q( (( (rwc tddddg}|dz tddtjtddz gk(sJyr)rr"rrDs rutest_divr#s@q!aVA Q3&A!Q/0 00 0rwcBttjddgdk(sJttjdgdk(sJttjdtk(sJttjdttk(sJy)NrhrjrrrjrJ)rsrr.typer{rwrutest_eyer(st  1a !\ 11 1  1 , .. .  1 & (( (  1&) *f 44 4rwcttjddgdk(sJttjdgdk(sJtjddtgdgdgk(sJttjdtk(sJttjdttk(sJy)NrhrrirjrjrjrJ)rsrr5rr{rwru test_onesr/s  Aq! "l 22 2  A < // / ;;q!  9'= > >> >  A 6 )) )  A6* +v 55 5rwcttjddgdk(sJttjdgdk(sJtjddtgdgdgk(sJttjdtk(sJttjdttk(sJy)NrhrrirrJ)rsrrIrr{rwru test_zerosr7s  Q" #| 33 3  Q L 00 0 <<1 I(>!? ?? ?  Q F ** *  QF+ , 66 6rwc tjtddgddggtdtgtdggtdtdgtdtgtttggtgdgddddtddgddtdddgdddddtgddddtdggk(sJtgdgddddtdddgddtddddgdddddtdgddddtdtgddddtttggk(sJtgdgddddtdddgddtdtddgddtttddgddddddtgdddddtdggk(sJttttgtddgdd ggtd d ggd ttdddddgtdddddgtdddddggd gdgdgdgk(sJt t fddtdggk(sJddtddgddggk(sJddtddgddggk(sJdddtddgddgddggk(sJddgtddgddggk(sJtddgtdgdggk(sJdddgd gddgddgd ggdcxk(rtddgddgd dggk(sJJtdtk(sJtdttk(sJtjgdtjdddk(sJtjgddjdk(sJtjgdgjdk(sJtjgdgdjdk(sJtjgdggjdk(sJtjtddddtgdgdgk(sJtjtddddtddgddgddgddggk(sJy)Nrjrhri)rjrhrrrr)rhrirrrrr)rjrhrrrrr)rhrirrrrrrkrlrmr)rrrrrr)rrrjrhrr)rrrirkrr)rrrrrlrmcddS)Nrrlrqr{rKrLrMr*srurz test_diag_make..lstAq!QQ7rwr)rr)rqrrF)unpackrJrprprmrrrjr)rrrrh) rr*rPrQrRr_rrrr5rs@@@@rutest_diag_maker?sQ ;;DAA AAA AAq Aq!9q!Qi01A 1a=F Aq!Q Aq!Q Aq!Q Aq!Q $   1a=F Aq!Q1 Aq!Q1 Aq!Q1 Aq!Q1 Aq!Q1$   1a=F Aq!Q1 Aq!Q1 Aq!Q1 Aq!Q1 Aq!Q1$   1ayAAA AAxA 1a v Aq!Q Aq!Q Aq!Q'    :78 7fqcUm ## # ?fq!fq!f%56 66 6 ?fq!fq!f%56 66 6  "fq!fq!fq!f-E&F FF F !Q=F A A$   1v 6  + $   QFAu - 1#1vs#E 2 6< A A A>7    Q=F "" " QF# $ .. . ;;y !V[[Aq%9 99 9 ;;y / 5 5 ?? ? ;; { # ) )V 33 3 ;; {5 1 7 76 AA A ;; } % + +v 55 5 ;;tAqz1a (F4-   ;;tAqz1a (F A A A A 4-  rwc tddtdj}|jdk(sJt|dk(sJtjddk(sJtjddk(sJtjd d k(sJt jt k(sJt ddd di}t |jt |k(sJt t |k7sJt tfd t tfd t tfdtd d}ttd|jz |jDcic]}|t|j|c}|k(sJycc}w)Nrirr)rrkrrjrjrlr)rirrhrhrnc&jdSrdiagonalrsrurztest_diagonal..sqzz!}rwc&jdS)Nrorrsrurztest_diagonal..sqzz"~rwc.jtSr)rr7rsrurztest_diagonal..sqzz"~rw) rrrtuplerr#r_rr5r'rqrrrs)rNsr1rrs @ru test_diagonalrsq!U1XA A  1   8y  A 6 )) ) B F ** * A 4 '' '  a (( (QFA;'A  a (( ( 7d1g   :,- :-. :-. Q A qx(* d1::a=))* +./ 00 0*s"F?ctjddtjddcxk(rktjddcxk(rPtjdddcxk(r4tjdddcxk(rtgdgd gd gk(sJJtjddd tgd gd gdgk(sJttdttdttdttdtjddtjddk(sJy)Nrirh eigenvalue)sizerupper)band)reigenvalrrhrjr)rrhrjrlowerrhrrr,rc,tjdSNrhr jordan_blockr{rwrurz#test_jordan_block..sv2215rwc.tjddS)Ng @rhrr{rwrurz#test_jordan_block..sv223:rwc.tjdS)Nrhrrr{rwrurz#test_jordan_block..sv22a@rwc0tjddS)Nrhrk)rrrr{rwrurz#test_jordan_block..sF  q "rw)rr)rrr_rr{rwrutest_jordan_blockrs:   q! $(;(;A!(L ""a8 ""1ag6 ""q2         q!' 2f>7     :56 ::; :@A :"#   A! 4Q/ 00 0rwc tddgddgg}|jtdgdggtdgdgggk(sJ|jtdgdggdtdtdzdz gtddz gggk(sJ|jtdgdggtdgdggtdgdggttd dgtd dgggk(sJ|jtd gd ggtdgdggtdgdgggk(sJ|jtd gd gggk(sJtgd gd gdg}tdgdggtdgdggtdgdggg|jtdgdggttddgtddgggk(sJtgdtgdtgdgt t fdtgdtgdtgdgt t fdy)NrjrhrirkT normalizerlrrmr)rrjr)rirmr)rrlrhrrrrp)rjrkrlc.tjddiSN rankcheckTr orthogonalizevecssrurz$test_orthogonalize..v33TJTJrwrorc.tjddiSrrrsrurz$test_orthogonalize..rrw)rrrBr r_r)rrErs @rutest_orthogonalizers`AA A ??6A3*- .6A3*3E2F FF F ??6A3*-? > !DG)A+a , -. // / ??6A3*-vtaSk/B C !qc VhsA&6%7(1a.9I$JKL MM M ??6A3*-vtaSk/B C "s    ??6A3*- ." 44 4 :y12A RD1#; "s !4frdRD\6J KD 1??D ! "s fx2&7(2r:J9K%LMN OO O 9 vi0&2C DD :JK 9 vi0&2C DD :JKrwc \tjd\}}|tgdgdgdgk(sJ|tgdgdgdgk(sJtjd\}}|tgdgdgd gd gd gd gd gk(sJ|tgdgdgdgd gd gd gd gk(sJy)Nrj)rrjrrjrrj)rrjrjrjrjrri)rorjrrrrr)rjrrjrrrr)rrjrrjrrr)rrrjrrjrr)rrrrjrjrjr)rrrrrjrhrj)rrrrrrjri)rirjrrrrr)rjrhrjrrrr)rrjrjrjrrr)r wilkinson)wminuswpluss rutest_wilkinsonrs$$Q'MFE V * ) )+, ,, , F%%%'( (( ( $$Q'MFE V 8 7 7 7 7 7     F111111134 44 4rwc >td\}}tddd|z |g}|j|dtddtdd|gk(sJtddt ||z f|ddfdd|dzdzff}|j|dtd|ddfd fk(sJy) Nx yrhrjrlrkrr)rjrkrj)rrlrj)rDrlimitr rA)rPrQrrs ru test_limitrs 5>DAqq!ac1XA 771a=F1a(1a.!)<= == =As1vax 1a)b!QTAX->?@A 771a=FI1ay*#EF FF Frwctgdgdgdggdttfdttfdy)NrprorrczSrr{r1vsrurz"test_issue_13774.. acrwczSrr{rsrurz"test_issue_13774..rrw)rr_rhrs@@rutest_issue_13774rs- 9i01AA 9k" 9k"rwc:tdtdttdttfdttfdttfdtd\}}}t j t d|gt | gk(sJt j t d||gt d | gd| ggk(sJt j t d|||gt d d | gdd | gd d| ggk(sJy) NrPrQc,tjdSNrj)r companionr{rwrurz test_companion.. sv//2rwcDtjtdgSr rr rrtsrurz test_companion.. sv//aS! =rwcFtjtddgS)Nrhrjr rtsrurz test_companion.. sv//aVQ@rwcLtjtzgSrr rPrQsrurz test_companion.. s!v//QqS1a&0ABrwzc0:3rjr)r$r_rrDrr r)c0c1c2rPrQs @@rutest_companionrss As A :23 :=> :@A :BCJBB   D!R!, -" >> >   D!Ra0 1RC1rc(#$ %% %   D!RR!4 5As aRC[1a"+67 88 8rwc Ptd\}}}t|||g}|jt|||ggd}|tdgdgdggk(sJt|||||g|||||g|||||gg}|jt|gdg}|tgdgdgdgk(sJy)Nzx, y zrprjrhri)rjrjrjrjrj)rDrruzip)rPrQrRrrs rutest_issue_10589rshGAq! Aq B aAY * +B !qcA3( (( ( !Q1a1aAq/Aq!Q?C DB aS1# B /?KL LL LrwcGddt}tddgd}|ddgd}||z}t||sJ|tddgddggk(sJy) Nc*eZdZejdzZy)test_rmul_pr19860..Foog{Gz?N)rrrr _op_priorityr{rwruFoor#s)66= rwrrhrrr)rr isinstance)rrKrLrMs rutest_rmul_pr19860r "sh>"> q!\"A Aq,A !A a   B"b*+ ++ +rwctddgddggtddgddggttfdttfdy)NrjrhrirkczSrr{rrsrurz"test_issue_18956..4 a!erwczSrr{r#srurz"test_issue_18956..5r$rw)rrr_rhr#s@@rutest_issue_18956r&1sD 1v1vA1qe}A 9m$ 9m$rwcGddt}tddddg}||k7sJGdd|}||k(sJy)NceZdZdZdZy)test__eq__..Myc3Kddywrr{selfs ru__iter__ztest__eq__..My.__iter__:sGG s ct||Sr)rs)r,rs ru __getitem__z"test__eq__..My.__getitem__>s:a= rwN)rrrr-r/r{rwruMyr)9s   !rwr0rhrjceZdZdZy)test__eq__..My_sympyct|Srrr+s ru_sympy_z$test__eq__..My_sympy._sympy_Cs $< rwN)rrrr4r{rwruMy_sympyr2Bs rwr5)objectr)r0rKr5s ru test__eq__r78sL!V! q!aVA 99 2   ??rwcttD]\}}|jdd}|jdk(rt d|jDsJ|j dk(rt |j tusJ|jdk(rt |jtusJ|dzs-t |jtttfvrJt |jturJy)Nrirh)rirhc3>K|]}t|tuywr)rrf)r=rs rur>ztest_args..Ls(IAaC(Is) enumerate all_classesrIrrFrqrrfrrrrsrr%rr)rErKrs ru test_argsr<HsK( +3 IIaOww& S(I(I%IIIvv{tAFF|s222vv{tAFF|s2221u>dE5%99 99 ?d* ** +rwcttfD]H}|jdd}t5|j}ddd|j k(rHJt tfD]H}|jdd}t5|j}ddd|jk(rHJy#1swYxxYw#1swY-xYwNrirh) rrrIrc_matrr#r_smatr)rKrmatsmats rutest_deprecated_mat_smatrCUs& IIaO # % &&C affh  22! IIaO # % 77D qwwy   !     s B0 B<0B9 <C ctddttg}|tz tddttz ttz gk(sJyr)rrPrQrR)rs ru test_divisionrEbs;q!aVA Q3&A!QqSz* ** *rwc Ftgdtttgdtzdttzggztgddtzdtzdtzgdtzddtztzggk(sJtddddgt t fdy) NrprhrrrkrrjczSrr{rsrurztest_sum..krrwrrs@@rutest_sumrHgrrwc&tddgttgg}t|tddgt tt tggk(sJtdddtg}tdddt tg}t||k(sJy)Nrjrrhrori)rrPrQabsrrs rutest_absrKns~B!Q !A q6VaVc!fc!f%567 77 7q!b!WAq!aQ[!A q6Q;;rwctd}td}||z|j|cxk(rtddgddggk(sJJy)N)rjrhrprM)rirrhrkrmrj)raddrKrLs ru test_additionrQvs] A  A q5EAEE!H 8AA'7 8 88 88 8rwc ttfD]}|ddtd}||ddddfk(sJ|dddftddgdk(sJ|dddftgdk(sJ|ddgddftgdgdgk(sJ|ddgdf|ddgdgfk(sJ|dddgf|dgddgfk(sJ|ddddgftddgdd gd d ggk(sJ|d dk(sJ|ddddftgdgdgk(sJ|ddddftddgdd gd d ggk(sJ|ddddf|ddgdfk(sJ|ddddf|dddgfk(sJ|ddtd}|gd ddftgdgdgdgdgdgk(sJ|ddgd ftgd gdgdgk(rJtjd}d|d<d|d<d |d<|jddgdgtdgdggk(sJ|jddggdtgdgdgk(sJ|jgdgdtgdgdgdgdgk(sJy)Nrirrjrrrrrhrkrmrr~)rrhrjrhrjr)rirlrkrlrk)rmrrrrrMrrhr)rhrhrhr)rjrrjrh)rhrrjrrhrrr)rrrir)rrkrrk)rr#rrIr)r1rKs rutest_fancy_index_matrixrUs!l # aE!H AadG||Aw&Ay1111Aw&++++!Q|vy)&<====!Q|q!Q!~---QF|q!q!f~---QF|v1v1v1v&>????w!||1ayFIy#9::::AaCyFQFQFQF#;<<<<1ayAq!faiL(((CaCyAa!QiL((( aE!H !#$      0)  K F   ,% +4 1AAdGAdGAdG 199aVaS !VCC- &     199aVY '6  3,   199\< 0F <5  rwc2tdtdttfdttfdz}|ddk(sJ|ddk(sJ|d d k(sJ|d d k(sJ|d d k(sJ|ddk(sJz}|ddk(sJ|ddk(sJ|d d k(sJ|d d k(sJ|d d k(sJ|ddk(sJt |}|j |k(sJ|ddk(sJ|ddk(sJ|d d k(sJ|d d k(sJ|d dk(sJ|ddk(sJttfdt dz}t|tsJ|dtk(sJ|ddtzk(sJ|d dtzk(sJ|d dk(sJtz}||k(sJdz}t|tsJ|ddk(sJ|ddk(sJ|d dk(sJ|d dk(sJttdgdtgg}|dz|k(sJtttgddgg}|dztttgttggk(sJttdd}tdd }t|||g}|j |t|g|g|ggk(sJy)N)rMrprrmrNczSrr{rPsrurz%test_multiplication..s qsrwcizSrr{r srurz%test_multiplication..s adrwr~rrrhrrmrnrSrlrrkctSr)r3rPsrurz%test_multiplication..s:1a@rwrPrirlrrrj) rr_rXrhr3multiply_elementwiser$rrPr6r4r5r ) rMhrr1r_hrrKrLs @@rutest_multiplicationr_s9 A  A  :{# 9l# !A T7a<< T7a<< T7a<< T7a<< T7b== T7a<< AA T7a<< T7a<< T7a<< T7a<< T7b== T7a<<#Aq)A &&&q) )) ) T7a<< T7a<< T7b== T7a<< T7a<< T7a<< :@A F3KA a  T7a<< T7ac>> T7ac>> T7a<< QB 7N7 AA a  T7a<< T7c>> T7c>> T7a<<Q!R!"A 6Q;;R1a&!"A 6Vc3Z#s45 55 5 tAqzA 1a.BB|A ! !! $   0)  rwc ttdtddgddggdztddgdd ggk(sJtgd gd gd gdztgd gdgdgk(sJdztdk(sJdzk(sJtdggdzdddzk(sJtddgddggt dztddgddggk(sJtddgddggj ddj ddk(sJt dztddgddggk(sJtdd ztdk(sJtddgd!d"ggt jzddgd#k(sJtddgd$dggt jzdzk(sJtddgddggt jztddgt jdggk(sJtddgddggd%ztddgd%dggk(sJdd&lm tdtgddggztdtzgddggk(sJtttgdtggzttzttdz zzzgdtzggk(sJttztdz zztzdzztzzz dtdzzz gdtztdz zzgddtzggsJttddgdtdgddtggzttztdz zzdgdtzdgddtzggk(sJtddgddggjt djdk(sJtdggdztd'ggcxk(r3jt dcxk(rjdk(sJJtgd(gd)gd*gd+gd,gttfd-ttd.tgd/gd0gd1gd2ztgd1gd1gd1gk(sJttfd3ttfd4td5dgddggd2ztd6d7gd8d9ggk(sJtgd0gd0gd0gd2ztgd0gd0gd0gk(sJtgd/gd0gd0gd2ztgd0gd0gd0gk(sJt!d:d;<t#zt$sJt!d:d;d;=ttfd>t!d:d;d;?ztt'dt'dt'd t'dz dzgdt'ddt'dz ggd0gk(sJdzztgd0gd0gd0gk(sJttfd@tgd0gdAgdBgdCztgdDgdEgdFgk(sJdCzdzk(sJtgd/gdGgd1gt!d:zj)dj+dzk(sJttfdHzdzzk(sJtgd1gd1gd1gt!d:d;d;Izk(sJt!d:d;d;?zt-dzdzdzk(sJzj)dtdk(sJzj)dt/dk(sJtgdJgdKgdLgdMzt-dNdNdNk(sJt0zt-dt0zdt0zdt0zk(sJtgd/gd0gd0gttfdOttfdPtt jt jgt jt jggt jzk(sJtddgddggt jztt jt jgdt jzdt jzggk(sJy)QNctddzSNrMrhrr{rwrurztest_power..s):rwrhrirkrliii,*i7)rhrjri)rkrhrk)rmrxrj)i"i)iiip)iiirrjdr~rrrrcayleymethodmultiplyrrx!i09)rlrhrkrrg?rDi)rirrrro)rrororri)rrirrir)rrrirri)rirrrirc8jtdSNr)_matrix_pow_by_jordan_blocksr"rsrurztest_power..%s > >qu ErwcTtddgddggjtdS)Nrjri)rrpr"r{rwrurztest_power..(s*AA'7 8 U UVWX[V\ ]rwrrr$@cdzSN@r{rsrurztest_power..+ q#vrwc"tddzSr>r rsrurztest_power..,q(1a.0rwrihiO<iv0irET)integer)r{negativeczSrr{)rrEsrurztest_power..6s q!trw)r{ nonnegativec"tddzSr>ryrsrurztest_power..=rzrw)rirrj)rkrirjg@)HY)i#)i<i iIrrrcDjdjS)Nr)rur6)AnrEsrurztest_power..Esrwwq"~224rw)r{positiver)rrhrrrvgd%%@cdzSrur{rsrurztest_power..TrwrwctzSrrrsrurztest_power..Us q!trw)r_rWrr.rpowr"r sympy.abcrErKrLrp_eval_pow_by_recursionrVrr$rrrrur6r*rIr)rrrrEs@@@@ru test_powerrs !:;AA A a46D$<%89 99 9 9j12A a46?O_MN NN N a43q6>> a4199 QC5MS $ '1c6 11 1 Aq6Aq6" #WQZ /6Ar7RH:M3N NN N1qe}A 55H5 %r*)E EE E gaj=FQGb"X#67 77 7 q68 s1v %% %R2r(#$A qvvIq>\ )) )AQ !A qvvI>Q   Aq6Aq6" #QVV +v1v{6K/L LL L Aq6Aq6" #S (FQFS!H3E,F FF F Aq6Aq6" #Q &&1ac(QF1C*D DD D Aq6Aq6" #Q &&1a41qs8A2FAqD 1R*S SS S  Aq1q5z!|ad1a4i!Q$q&01QT6:; q!ta!a%jl; !ad;= >> > Aq!9q!Qi!Q3 4a 76 Aq1Q3xz1 AqD! Aq!t C<   AA A ) )!A$ /13K3KA3N NN Nu A b5FUG9% %)G)G")N %   $ %% %% %  "3_oWfghA ;EF ;]^ 9i01A d7fiI>? ?? ? :~& :01AA A d7fz95 97MNO OO O 9i01A d7fiI>? ?? ? 9i01A d7fiI>? ?? ?sD!A adF ## #sD40A :|$sDd3A a46 1 ~a3nQ6J5J^\]_`Ma5ade5ef~a3QQ_`acdQeMeffhi ii i q1u:Iy AB BB B :01 9i01A c6V_oOP PP P c6QT>> *Y/0As A AB 771a=   1a4 '' ' :45 7a!A#h   ()AsD40A a4199sDd3A a441adAqD) )) ) qD;;q! A && & qD;;q! a (( ()*A c6T6662 22 2 a44Aq!tQT* ** * 9i01A :~& :|$ 166166"234A aff9>>A1vA aff9!&&!&&!1AaffHah3G HI II Irwc tdtzdtz gdtz dtzgg}td5|jj ttdtztdzdz tdtz tdzdz gtdtz tdzdz tdtztdzdz ggk(sJ dddy#1swYyxYw)NrjTrh)rrPr\r,r-r0s ru$test_issue_17247_expression_blowup_1r\s1ac QqS!A#J'(A T ?uuw~~61Q3x#a& !#s1Q3xi#a&&8!%; <1Q3xi#a& ! #s1Q3x#a&'8!&; <+>$?? ?????s B1C44C=ctdtzdtz gdtz dtzgg}td5|j\}}||z|j zsJ dddy#1swYyxYwNrjT)rrPr\ jordan_forminvr1PJs ru$test_issue_17247_expression_blowup_2rdsl1ac QqS!A#J'(A T }}1s1557{{s ,A//A8c :tdtzdtz gdtz dtzgg}td5|dztdtdzzdzddtdzzz gddtdzzz dtdzzdzggk(sJ dddy#1swYyxYw)NrjTrdl)rrPr\r0s ru$test_issue_17247_expression_blowup_3rks1ac QqS!A#J'(A T _#v +AsF 25S SUswUVWY\V\w\V\ ] +.LQPSV.S SUstuwztzUz~\V\ ]!^__ _____s ABBcttd}td5|dzttdk(sJ dddy#1swYyxYw)Na1[ [ -3/4, 45/32 - 37*I/16, 1/4 + I/2, -129/64 - 9*I/64, 1/4 - 5*I/16, 65/128 + 87*I/64], [-149/64 + 49*I/32, -177/128 - 1369*I/128, 125/64 + 87*I/64, -2063/256 + 541*I/128, 85/256 - 33*I/16, 805/128 + 2415*I/512], [ 1/2 - I, 9/4 + 55*I/16, -3/4, 45/32 - 37*I/16, 1/4 + I/2, -129/64 - 9*I/64], [ -5/8 - 39*I/16, 2473/256 + 137*I/64, -149/64 + 49*I/32, -177/128 - 1369*I/128, 125/64 + 87*I/64, -2063/256 + 541*I/128], [ 1 + I, -19/4 + 5*I/4, 1/2 - I, 9/4 + 55*I/16, -3/4, 45/32 - 37*I/16], [ 21/8 + I, -537/64 + 143*I/16, -5/8 - 39*I/16, 2473/256 + 137*I/64, -149/64 + 49*I/32, -177/128 - 1369*I/128]]Tra[ [ 7369525394972778926719607798014571861/604462909807314587353088 - 229284202061790301477392339912557559*I/151115727451828646838272, -19704281515163975949388435612632058035/1208925819614629174706176 + 14319858347987648723768698170712102887*I/302231454903657293676544, -3623281909451783042932142262164941211/604462909807314587353088 - 6039240602494288615094338643452320495*I/604462909807314587353088, 109260497799140408739847239685705357695/2417851639229258349412352 - 7427566006564572463236368211555511431*I/2417851639229258349412352, -16095803767674394244695716092817006641/2417851639229258349412352 + 10336681897356760057393429626719177583*I/1208925819614629174706176, -42207883340488041844332828574359769743/2417851639229258349412352 - 182332262671671273188016400290188468499*I/4835703278458516698824704], [50566491050825573392726324995779608259/1208925819614629174706176 - 90047007594468146222002432884052362145*I/2417851639229258349412352, 74273703462900000967697427843983822011/1208925819614629174706176 + 265947522682943571171988741842776095421*I/1208925819614629174706176, -116900341394390200556829767923360888429/2417851639229258349412352 - 53153263356679268823910621474478756845*I/2417851639229258349412352, 195407378023867871243426523048612490249/1208925819614629174706176 - 1242417915995360200584837585002906728929*I/9671406556917033397649408, -863597594389821970177319682495878193/302231454903657293676544 + 476936100741548328800725360758734300481*I/9671406556917033397649408, -3154451590535653853562472176601754835575/19342813113834066795298816 - 232909875490506237386836489998407329215*I/2417851639229258349412352], [ -1715444997702484578716037230949868543/302231454903657293676544 + 5009695651321306866158517287924120777*I/302231454903657293676544, -30551582497996879620371947949342101301/604462909807314587353088 - 7632518367986526187139161303331519629*I/151115727451828646838272, 312680739924495153190604170938220575/18889465931478580854784 - 108664334509328818765959789219208459*I/75557863725914323419136, -14693696966703036206178521686918865509/604462909807314587353088 + 72345386220900843930147151999899692401*I/1208925819614629174706176, -8218872496728882299722894680635296519/1208925819614629174706176 - 16776782833358893712645864791807664983*I/1208925819614629174706176, 143237839169380078671242929143670635137/2417851639229258349412352 + 2883817094806115974748882735218469447*I/2417851639229258349412352], [ 3087979417831061365023111800749855987/151115727451828646838272 + 34441942370802869368851419102423997089*I/604462909807314587353088, -148309181940158040917731426845476175667/604462909807314587353088 - 263987151804109387844966835369350904919*I/9671406556917033397649408, 50259518594816377378747711930008883165/1208925819614629174706176 - 95713974916869240305450001443767979653*I/2417851639229258349412352, 153466447023875527996457943521467271119/2417851639229258349412352 + 517285524891117105834922278517084871349*I/2417851639229258349412352, -29184653615412989036678939366291205575/604462909807314587353088 - 27551322282526322041080173287022121083*I/1208925819614629174706176, 196404220110085511863671393922447671649/1208925819614629174706176 - 1204712019400186021982272049902206202145*I/9671406556917033397649408], [ -2632581805949645784625606590600098779/151115727451828646838272 - 589957435912868015140272627522612771*I/37778931862957161709568, 26727850893953715274702844733506310247/302231454903657293676544 - 10825791956782128799168209600694020481*I/302231454903657293676544, -1036348763702366164044671908440791295/151115727451828646838272 + 3188624571414467767868303105288107375*I/151115727451828646838272, -36814959939970644875593411585393242449/604462909807314587353088 - 18457555789119782404850043842902832647*I/302231454903657293676544, 12454491297984637815063964572803058647/604462909807314587353088 - 340489532842249733975074349495329171*I/302231454903657293676544, -19547211751145597258386735573258916681/604462909807314587353088 + 87299583775782199663414539883938008933*I/1208925819614629174706176], [ -40281994229560039213253423262678393183/604462909807314587353088 - 2939986850065527327299273003299736641*I/604462909807314587353088, 331940684638052085845743020267462794181/2417851639229258349412352 - 284574901963624403933361315517248458969*I/1208925819614629174706176, 6453843623051745485064693628073010961/302231454903657293676544 + 36062454107479732681350914931391590957*I/604462909807314587353088, -147665869053634695632880753646441962067/604462909807314587353088 - 305987938660447291246597544085345123927*I/9671406556917033397649408, 107821369195275772166593879711259469423/2417851639229258349412352 - 11645185518211204108659001435013326687*I/302231454903657293676544, 64121228424717666402009446088588091619/1208925819614629174706176 + 265557133337095047883844369272389762133*I/1208925819614629174706176]])rr"r\r0s ru$test_issue_17247_expression_blowup_4rsso8 qKL MA T J "uq"H  I J J  J J J J J s AActddd}td5|jdttdzddt zz tdzzzdt ztdzzztd k(sJ dddy#1swYyxYw) Nrmc&dd||zztzzSNrjrrrs rurz6test_issue_17247_expression_blowup_5..!rQqSk!m"3rwTrPrl$rkEXdomain)rr\charpolyrrPrr0s ru$test_issue_17247_expression_blowup_5rs|q!34A T _zz#(1a42!8QT/+ABqDAI+MqY]"^^^^___s AA==Bc tddtdDcgc] }t|z c}}td5|j ddk(sJ dddycc}w#1swYyxYw)Nr@TbareissrrrrPr\detrr1s ru$test_issue_17247_expression_blowup_6rsaq!5":.aac./A T %uuY1$$$%%/%%A AA&ctddd}td5|jddk(sJ dddy#1swYyxYw)Nrmc&dd||zztzzSrrrs rurz6test_issue_17247_expression_blowup_7..rrwT berkowitzr)rr\rr0s ru$test_issue_17247_expression_blowup_7rsEq!34A T 'uu[!Q&&&'''s ;Ac tddtdDcgc] }t|z c}}td5|j ddk(sJ dddycc}w#1swYyxYw)NrrTlurrrs ru$test_issue_17247_expression_blowup_8rs`q!5":.aac./A T  uuT{a  /  rc tddtdDcgc] }t|z c}}td5|j tgdgdgdgdgdgdgdgdgdfk(sJ dddycc}w#1swYyxYw)NrrT)rjrrrrorrrrrjrhrirkrlrmrrrrrrrrrr)rrrPr\rrefrs ru$test_issue_17247_expression_blowup_9rsq!5":.aac./A T  6vvxF * * * * * * * *$,-/566 66 6 6/ 6 6sA: 9A??Bctddd}td5|jdddk(sJ dddy#1swYyxYw)Nrmc&dd||zztzzSrrrs rurz7test_issue_17247_expression_blowup_10..rrwTr)rr\cofactorr0s ru%test_issue_17247_expression_blowup_10rsGq!34A T %zz!Q1$$$%%%s <Actddd}td5|jtdddgdzk(sJ dddy#1swYyxYw)Nrmc&dd||zztzzSrrrs rurz7test_issue_17247_expression_blowup_11..rrwTrr)rr\cofactor_matrixr0s ru%test_issue_17247_expression_blowup_11rsTq!34A T ;  "fQA3r6&::::;;;s %A  Actddd}td5|jdddtzdddik(sJ dddy#1swYyxYw)Nrmc&dd||zztzzSrrrs rurz7test_issue_17247_expression_blowup_12..rrwTrjrrk)rr\ eigenvalsrr0s ru%test_issue_17247_expression_blowup_12rsSq!34A T 5{{}AqsAq! 4444555s #AAc tddtz tdzdtz gdtz tdzdtdzgddtz tdzdtz gdddtz dgg}|j}|dddtgdgfk(sJ|ddttdtdz zz dzk(sJ|dddk(sJ|dddj ddtt tdtdz zzdz tdz z gdtztdzdtzz dzz tdzttdtdz zz dzztdzdtzz dzz zgt tdtdz zzdz tdz z gdggk(sJ|ddttdtdz zzdzk(sJ|dddk(sJ|dddj ddtt tdtdz zz dz tdz z gdtztdzdtzz dzz tdzttdtdz zzdzztdzdtzz dzz zgt tdtdz zz dz tdz z gdggk(sJy) Nrrjrh)rrrrjFT)deepnumerr)rrP eigenvectsrBr-)r1evs ru%test_issue_17247_expression_blowup_13rs Aq1ua!e$ QA1a!e$ Aq1ua!e$ A1q5!$ & 'A B a5QF=123 33 3 a58q47AE?*Q. .. . a58q== a58A;  5  5 "tAwA  "QU +, Aq!taczA~ !a%!d1gq1uo*=*A!BAqD1Q3JQRN!S ST "tAwA  "QU +,  A:   a58q47AE?*Q. .. . a58q== a58A;  5  5 "tAwA  "QU +, Aq!taczA~ !a%!d1gq1uo*=*A!BAqD1Q3JQRN!S ST "tAwA  "QU +,  A:  rwctdddtzdtz gdzdtz dtzgdzzdz}td5|jttdzdtz tdzdtz tdzdtz tdzdtz gddtzddtzddtzddtzggdgdgdgdgdgdgk(sJ dddy#1swYyxYw)NrrjrkTrr)rrPr\ echelon_formr0s ru%test_issue_17247_expression_blowup_14rsq!qsAaCjlac1Q3Z\1145A T  G~~6 UAE1q5!a%QAq1ua!e DacqAaCQ!A#1! D D D D D D D+F$GG GG G G Gs BC&&C/ctdddtzdtz gdzdtz dtzgdzzdz}td5|jttdzdtz tdzdtz tdzdtz tdzdtz ggtddtzddtzddtzddtzgggk(sJ dddy#1swYyxYw)NrrjrkTr)rrPr\rowspacer0s ru%test_issue_17247_expression_blowup_15rs"q!qsAaCjlac1Q3Z\1145A T Pzz|QAq1ua!eQUAPQESTWXSXZ[^_Z_(`'a bdjmnpqrspsuvxyz{x{}~ABCDADFGIJKLILmMlNeO PP PPPPPs BCC(c*tdddtzdtz gdzdtz dtzgdzzdz}td5|jttdzgdtz gtdzgdtz gtdzgdtz gtdzgdtz ggtdtz gtdzgdtz gtdzgdtz gtdzgdtz gtdzgggk(sJ dddy#1swYyxYw)NrrjrkT)rrPr\ columnspacer0s ru%test_issue_17247_expression_blowup_16rsq!qsAaCjlac1Q3Z\1145A T y}}6AE7AE7AE7AE7APQE7TUXYTYSZ\]`a\a[bdehidicj*k#lntwx{|w|v}@ADE@EFHILMHMGNPQTUPUOVXY\]X]W^`ade`e_fhilmhmgnpqtupuovvwox#yy yyyyys B:D  DctddtdDcgc] }t|z c}}td5|j tdgdgdgdgdgdgdgdggtdgdgdgdgdgdgdgdggtd gd gdgdgdgdgdgdggtd gd gdgdgdgdgdgdggtd gdgdgdgdgdgdgdggtdgdgdgdgdgdgdgdgggk(sJ dddycc}w#1swYyxYw)NrrTrjrrrhrorirrkrrlrrmrn)rrrPr\ nullspacers ru%test_issue_17247_expression_blowup_17rs]q!5":.aac./A T 8{{} QCaS!aS!aS!5 6 QCaS!aS!aS!5 6 QCaS!aS!aS!5 6 QCaS!aS!aS!5 6 QCaS!aS!aS!5 6 QCaS!aS!aS!5 6 !88 8888/88sC3 B2C88Dctdddtzdtz gdzdtz dtzgdzzdz}td5|jrJ dddy#1swYyxYw)NrmrjriT)rrPr\ is_nilpotentr0s ru%test_issue_17247_expression_blowup_18rsjq!qsAaCjlac1Q3Z\1145A T $>>####$$$s A""A+cttd}td5|jrJ dddy#1swYyxYw)Nay[ [ -3/4, 0, 1/4 + I/2, 0], [ 0, -177/128 - 1369*I/128, 0, -2063/256 + 541*I/128], [ 1/2 - I, 0, 0, 0], [ 0, 0, 0, -177/128 - 1369*I/128]]T)rr"r\is_diagonalizabler0s ru%test_issue_17247_expression_blowup_19r sOqab cA T )&&(((()))s =Ac ttdzdtz ddgdtz tdzdtdzgddtz tdzdgdddtdzgg}td5|jtdddtdztdz z ggdgdgdgtgdddtzddgddtdzdgdddtdzggfk(sJ dddy#1swYyxYw) NrjrT)rjrrrrrrTrh)rrPr\ diagonalizer0s ru%test_issue_17247_expression_blowup_20r*s UQU#UQUQU# QUQU# QU# % &A T  &}}6 AAA ' ' ' ' +)$*  " ! " !QU " !AE " $ % #& & & & & & &s #A0CC&cttd}td5|jdttdk(sJ dddy#1swYyxYw)N[ [ -3/4, 45/32 - 37*I/16, 0, 0], [-149/64 + 49*I/32, -177/128 - 1369*I/128, 0, -2063/256 + 541*I/128], [ 0, 9/4 + 55*I/16, 2473/256 + 137*I/64, 0], [ 0, 0, 0, -177/128 - 1369*I/128]]TGErgv[ [-26194832/3470993 - 31733264*I/3470993, 156352/3470993 + 10325632*I/3470993, 0, -7741283181072/3306971225785 + 2999007604624*I/3306971225785], [4408224/3470993 - 9675328*I/3470993, -2422272/3470993 + 1523712*I/3470993, 0, -1824666489984/3306971225785 - 1401091949952*I/3306971225785], [-26406945676288/22270005630769 + 10245925485056*I/22270005630769, 7453523312640/22270005630769 + 1601616519168*I/22270005630769, 633088/6416033 - 140288*I/6416033, 872209227109521408/21217636514687010905 + 6066405081802389504*I/21217636514687010905], [0, 0, 0, -11328/952745 + 87616*I/952745]]rr"r\rr0s ru%test_issue_17247_expression_blowup_21r=jqcd eA T <uuDu!VA/:-;&<< <<<<< *AActtd}td5|jdttdk(sJ dddy#1swYyxYw)NrTLUrgrrr0s ru%test_issue_17247_expression_blowup_22rKrrcttd}td5|jdj ttdk(sJ dddy#1swYyxYw)NrTADJrgr)rr"r\rr-r0s ru%test_issue_17247_expression_blowup_23rYssqcd eA T <uuEu"))+va9:7;0<< <<<<.svaE"I6rwctddgS)Nrlrrr{rwrurztest_creation..svaR0rwctddSrbrr{rwrurztest_creation..svf~a0rwrlrMrirrjrhrr~rrrrk)rjrjrhrhrh)riririrkrkFr4rrrrncBttdtddgS)Nrhrrirr5r{rwrurztest_creation..'vtAwQ &;<rwcBttdtddgS)Nrhrirr r{rwrurztest_creation..(r rw)rlrmrm)r_rrrrcrr-r"EmptySetrPrrrqrr.r as_immutable as_mutabler5r) r1rKrrLc23c13rMdatrrrs ru test_creationrsH :67 :01 :01  vq 8vbz 5VAq"%5 55 55 5 2$<6!Q+ ++ + 2r( vaB/ // / !?T{m$++-A3+>>>?  !CT{m$&&--/aSED6?BBBCu A  !**$ AA A A 66QVV   66Q;; Q4Aq!Q<  q!aAq\"A A 66QVV   66Q;; Q4Aq!Q<   6M6 !9>> AuQ{ #C AuQ| $CSzA 66Q;; 66Q;; Q4. .. . #a&>SV ## # ?3q62 3s1v7N NN N 1 !1 11 1 /!$ %);)F)F)H HH H F1I   1ItAay{ #d1Qik4!9Q;%? @Cs A     88:   # & - - /3 66 6S!QA 7A,C #;& A AtWagtWag "   !JcE*113S7I7IIIIJ 47DG$ %a ): :: : :<= :<= AA A F B !Q!Q!Q01 11 1W??CCh8JJJsNT 'T2T T-<T? T:%T?TT T*-T7:T??Uc  tjdtddtdddztdddztdddztdddztdddztdddztgdgdgd gd gk(sJy) Nrirhrjrkrlrmr)rjrhrhrhriri)rkrhrhrhrlrl)rmrmrrrlrl)r irregularr5r{rwrutest_irregular_blockr0s   AtAay$q)A+tAay{ Qq ! T!AYq[$q)A+tAay{ .> 1q5rwrjrrr%)rkrlrmr)rrrr)rx rr)rirrrr)r.rIr)m0rrs ru test_slicingr9s QB bqb"1"f:Q   ac1Q3h<58 ## # 1( )B ad8vaI. .. . ac1f:1f- -- - |^=MN OB ae9q!^4 44 4 bc1f:1A BC CC Crwctd}td|ddddf<|tdk(sJtd|ddddf<|tdk(sJtddd|dddf<|tdk(sJtd|ddddf<|tdk(sJgd|ddddf<|tdk(sJddg|dddf<|td k(sJy) Nrkrh)rrrrrjrr)r)rhrjrr)rirrjr)rkrrrjrrr|rrr))rrhrirk)rrmrrr|r")rIr.rrs rutest_submatrix_assignmentr$Gs$ aAa&Aac1Q3hK &' '' 'AAbqb"1"fI A;;Q<(AadG &' '' 'AhAadG a==MAadG *+ ++ +1vAbqb!eH *+ ++ +rwctd}|jddtdddk(sJtddd}|jddtdk(sJ|jdd td k(sJy) Nrirjr) rjrrrrjrrrrjrkc ||zSrr{rs rurztest_reshape..frrw)rr )rirkrhrrhrm))rrjrhrirjrh)rirkrhrirkrl)r.reshaperrrs ru test_reshaper)cs QB ::a va,GH HH H 1( )B :: 1 DE FF F ::a v&NO OO Orwctd}|jdtddzk(sJ|jdtdk(sJy)Nric d|zSrr{rts rurz test_applyfunc..ns !A#rwrhcyNrr{rts rurz test_applyfunc..orw)r. applyfuncrI)rs rutest_applyfuncr0lsE QB << &#a&( 22 2 << $a 00 0rwc  ttttzzdgttztztztttttzzzzgg}|j}|tttztdzzdgttdzzttdzzzttzttdzzztdzzggk(sJt dd}tt t |zgjdtt|t t|zzgk(sJtgdgdgd gj td d tddggd gd gk(sJy) NrhrirKTr&)complexr)rrrrrj)rrjrr) rrPrQr-r$r,rr)rAr )rrrKs ru test_expandr3rsW !QU)QAE19a-A1q5 M1B!CD EB B  A#1*a1QT6AadF?AaC!AqD&L1a4,?@AC CC C sA 3qs8*  $ $T $ 2A3q6!"# $$ $ 9j)4 5 9 9 ;v Ax1~G@  rwc (tttdzttdzgttdzttdzzttdzttdzzgg}|j t jtt jtz}|ttdzttgtdzttztdzttzggk(sJ|j t jtt jtz}|ttdztgttdzztdztzggk(sJ|j t jtt jtz}|ttdzt gt tdzztdz tzggk(sJyr) rrrPrBrQrefinerr'rr|r(s ru test_refiner6st #a&!)T!Q$Z(adCFAI%tAqDz#a&!)';<> ?B 166!9qvvay( )B !Q$A!Q$s1v+q!tCF{)CDE EE E 1::a=1::a=0 1B !Q$Qq!tVQT!V$456 66 6 1::a=1::a=0 1B !Q$qbAg1uQw%789 99 9rwcztdd}tddd}|tdddk(sJtdddd}tddd}|tdddk(sJ|j}|j||k(sJtjd}|tdd|k(sJd D])}d D]"}t|d|| }||j k(r"J+td d d}d}t |jdD]/}t |jd D]}|||fdk(s|d z }1|dk(sJy)Nri)seedrkrT)r8 symmetric)r:prng)rr)rdF)r:percentr;rrjr<)minr>r=)r8rar@randomRandomr-rr)r1r"rngrr> zero_countrrs ru test_randomrDsb1aA1aa A 1aa( (( (1aC A11-A 115 55 5 AAJJL 6M6 -- C 137 77 7$ G44sKA8O8  21b)AJ 1771:  qwwqz" AAw!|a      rwctd}|jtdk(sJ|jdtdk(sJ|jdtdk(sJ|jdtdk(sJ|jdtdk(sJ|jdtdk(sJtgdgd gd g}|j}||ztd k(sJ|jd|k(sJ|jd|k(sJ|jd|k(sJ|jd|k(sJ|jd|k(sJtgd gd gdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgd gd!gd"gd#gd$g}|jd%|zt|jd&k(sJtgd'gd(gd)gt fd*d+j DsJtgd'gd(gd)gt fd,d+j DsJy)-NrkrrgrrrQR)rhrirl)rirmrh)rrirmri)rrrrrjrrrjrrjrjrjrrrrjrjrrrrrjrjrr)rjrrjrrrjrrrjrrjrrjrjrjrrjrjrrrrrrjr)rjrjrjrjrrjrrrjrjrrrrjrjrjrjrrrjrjrrrjrj)rjrrrrrrjrjrrrjrjrjrrrrrrrjrrrjrr)rjrrrjrjrjrrjrrrjrrrjrjrjrrjrrrrjrrr)rjrrrrrrrrjrjrjrrjrrjrjrjrjrrrrjrjrrj)rrjrjrjrrrrrjrjrjrrjrrjrrjrrjrrjrrrjr)rjrjrrrrjrjrrrjrjrrjrjrrjrjrrjrrjrjrrjrj)rrrjrjrjrrrjrjrrjrjrrjrrrrrrrjrrjrrj)rjrrjrjrjrrjrrrjrjrrjrjrrjrjrjrjrrjrjrjrr)rrjrjrrrrrjrjrrjrrjrrjrjrrrjrrrrjrjr)rjrrrjrrjrrjrjrrrjrrjrrjrrjrrjrrjrjrr)rrjrjrrrjrjrrrjrjrrjrrrrjrrrjrrjrjrrj)rjrjrjrrjrrrjrrrjrrjrjrrrjrjrjrrjrrjrjr)rrjrrrrrjrjrrjrjrrrrrjrrjrjrjrrrjrr)rjrjrjrjrrjrjrjrjrjrjrrrrjrrjrrjrrrjrrr)rrrrjrrjrjrrjrrrrrrjrrjrjrrjrrjrjrrj)rrjrrjrrrrrjrjrjrrrjrjrjrrrjrrjrjrrjrj)rjrrjrjrrjrrjrjrrjrjrjrrjrrrrrjrrrjrrj)rrrrjrrrjrjrrjrjrrjrrjrjrrrrrrrrr)rjrrrrrjrrjrrrjrjrrjrrjrjrjrjrrjrjrjrjrj)rrrjrjrrjrrrrjrrrjrrrjrrrrjrrjrrjrj)rrrrrrjrjrjrrjrjrjrrrrjrrjrjrrjrjrrr)rrrjrrjrjrrjrjrjrrrjrrjrrrjrrjrrrrr)rrrrjrjrrjrjrjrrrjrrjrrjrjrrjrjrjrrrjrBLOCKr)rl1)rG^);Ac3VK|] }tj|u"ywrrrr=rrKrs rur>ztest_inverse.."LtAEE!H~$L&)zGE ADJ LU CH LDL QRc3VK|] }tj|u"ywrrPrQs rur>ztest_inverse..rRrS)r.rrrrrFrgr)rAinvAArKrs @@ru test_inverserWsm AA 557c!f   555 Q '' ' 555 #a& (( ( 555 Q '' ' 555 #a& (( ( 555 Q '' '  A 557D T6SV   555  %% % 555 $ && & 555  %% % 555 $ && & 555  %% % \ W W W W W W W W W W W W W W W W W W W W W W W W1Y ZB2 666 !B &#bhhqk*: :: : C \    A L.C.I.I.KL LL L C \    A L.C.I.I.KL LL Lrwctd\}}}}}td}tdddddd|z|zd|z|zz d|zd|zz z d|z|zd|zd|zz z gdddddd|z|zd|z|zzd|z|zd|dzzz z dgdd|z|zd|z|zz d|zd|zz z d|z|zd|zd|zz z ddddgdd|z|zd|z|zzd|z|zd|dzzz z dddddgdddd|z|zd|z|zz d|zd|zz z d|z|zd|zd|zz z ddgdddd|z|zd|z|zzd|z|zd|dzzz z dddgdd|z|z|zd|z|zd|z|zz z dd|z|z|zd|z|zd|z|zz z dd|z|z|zd|z|zd|z|zz z dgg}|j}||ztdz j t t dk(sJtd |jtDd ksJy) Nz)Tau Tau_syn_in Tau_syn_ex C_m Tau_syn_gap__hr?@rhrc32K|]}t|ywrrJr=fs rur>z:test_inverse_symbolic_float_issue_26821../!s1v/@@) rDrrr.r/rJrImaxatomsr )Tau Tau_syn_in Tau_syn_exC_m Tau_syn_gaprYr1Mis ru'test_inverse_symbolic_float_issue_26821rls4;GY3YZ[^_`abc T#Xj  $c#gck#c'*2D&D EaSQ\H\]`H`befibijmbmnqrunuwBoBcBICDEFJKNFNOYFYZ]F]_bcf_fgj_jknorkrs}k}_}F~@ A A B bD3q6M $ $V ,a 88 8 /rxx/ /# 55 5rwctd\}}}}}td}tgdd|dzz d|z dddddggdddd|dzz d|z dddggd ddddd|dzz d|z dgd |z dd |z dd |z dd|z gg}||zj}|j|||zz j t t d k(sJtd |jtDd ksJy)Nz-Tau, Tau_syn_in, Tau_syn_ex, C_m, Tau_syn_gaprY)rrZrrrrrrrhrr)rrrrZrrr)rrrrrrjrrjrc32K|]}t|ywrr^r_s rur>z6test_matrix_exponential_issue_26821..rarbrc) rDrr,r+r/rJrIrdrer )rKrLrMrNrrOr1Mes ru#test_matrix_exponential_issue_26821rpsKLMAq!QA; AqD"Q$aAQ1;;Q1a4AQ1;;QaAr!Q$w1; qSQAaCA1Q31bd; A A#B GGAJ2  ( ( 0E!H << < /rxx/ /# 55 5rwctddtdztzdtdzzttzzg}ttg}|j|tdtztztdzgtdtztzggk(sJtddttdztdzzg}|j|tddgdtztdzztdzdztdzzggk(sJtdztz}ttg}t ||tdtzdtzgdtzdggk(sJtdztdzz}t ||tdtdzzdtztdzzgdtztdzzdtdzztzggk(sJt ttdzzz}tdzdtdzzz}tddtzgdtzdtzgg}|t |tttgk(sJ|t |tttgj k(sJt |ttf|gtddtdzzdtzgdtdzzdtzdtzgdtzdtzdggk(sJy)Nrjrhrkrirrm)rrPrQjacobianr0rRr-)rsymsr`ganss rutest_jacobian_hessianrvsq!ad1fa1fqsl+,A q6D ::d v!Aq!t}q!A#'l&CD DD Dq!aAad^$A ::d v1v!AqD!Q$q&A+/F&GH HH H 1QA q6D 1d v!QqSzAaC8&<= == = 1QT A 1d 1a41QT"QqSAXqAvax$89: ;; ; AadF A 1qAv A 1!*Q3!* C '!VQF^, ,, , '!VQF^--. .. . 1q!fqc "f1a41 1a4AaC1 aCAaC1.'    rwc tttttgtttdzttdzzk(sJtt tt dtzgtt dtzk(sJtt ttgtt ttt tzz k(sJtdttdzgtdk(sJdt tzttztzdttzt tztdzzzdt tzttztzz t tttztdzzz t tttztdzzz}tt ttttdzgtj |k(sJtt ttttdzgtdj |k(sJtdz ttdzztdzttdzzz dtzttdzzz dtzttdzzz }ttttttdzgtj |k(sJttttttdzgtdj |k(sJtgtdk(sJy)Nrhrirjrrmrrg)rHr)rPrAr,r-)w1w2s rutest_wronskianrz4s c!fc!f%q )SVQYQ-B BB B c!fc!A#h' +s1Q3x 77 7 c!fa[! $A3q6(9 99 9 aAqD\1 % ** * CF3q6 ! aAhs1voad2 2Qs1vXc!f_Q5F F As1v ad  VCF]1a4/ 0B c!fc!fad+Q / 6 6 8B >> > c!fc!fad+Q{ C J J L    Q$s1vqy1a4A > )AaCA M 9AaCA M IB c!fc!fad+Q / 6 6 8B >> > c!fc!fad+Q{ C J J L    R q  rwctdtgtdggjtditddgddggk(sJttdgttzdggjtdtditddgddggk(sJtD]8}tddgddgg|j djddik(r8Jy) Nrjrkrlrhrrror)rrPxreplacerQr;r.rJs ru test_xreplacer}Es Aq6Aq6" # , ,aV 4AA  !! ! Aq6AE1:& ' 0 0!RB @Q"a!" ## #G1v1v&'3771:+>+>1v+FFFFGrwc $td}td}tdtz dtz ztttzztz g|tt|tzz|tz dd|z t |t z|z z zt z gg}|j|tttzttzz dtzgdtzdddt t |zzz t |zz zggk(sJdtzdz}t|gg}|j|t|ggk(sJ|jt|t|jtggk(sJtd}td}tdtz dtz ztttzztz g|tt|tzz|tz dd|z t |t z|z z zt z gg}|jtttzttzz dtzgdtzdddt t |zzz t |zz zggk(sJdtzdz}t|gg}|jt|ggk(sJ|jtt|jtggk(sJttttdzt tdzzggtdggk(sJtddgddgg}d|jz jtdd k(sJy) NrEr`rjrh)ratior=rirk") r$r rrPrQr)r7r@r6rrAtracer )rEr`r1eqrs ru test_simplifyrNs0s A AQqS1Q3YQqSA HQ4!AaD&=!A$&QqS3q2v;q=-@(AB(FHJ KAJJL 1q51q5/!a%I$%E1q1SAY;A.F+GIKL LL L a%!BvAJJL v  JJRJ 2./01 11 1s A AqS1Q3YQqSA @ Q4!AaD&=!A$ QqS3q2v;q=%8 9B >@ A ::<6 q51q5/!a%9E1q1SAY;A679#   a%!B"A ::<6B4&> )) ) ::B: 6BKKbK,A+B*C#D DD D Oc!fai#a&!)&;%<$=> ?#aSE* ++ + Q!Q !A qwwyM # # %!R 88 8rwc tgdgdg}|jtddgddgddgddgddgddgddgd d gd d gd d gg k(sJ|jj|k(sJ|j|jk(sJy) N) rjrhrirkrlrmrrrrrjrhrirkrlrmrrrr)rr- transposer0s rutest_transposervs..0 1A 33&QFFFFFFFFFF % & & & & 3355A:: 33!++-  rwc "ttdtdtttgddttgdddtggdg}|jtgdt dddgt t ddgt t tdggk(sJy)Nc,tdjSr)r.rr{rwrurz!test_conj_dirac..s3q688rwrjrrrr)r_AttributeErrorrrrr0s rutest_conj_diracrs >+,Aq! Aq! Aq!  A 33&*2A*2r2*2rAr*,- -- -rwcVtgdgdgdg}|jdk(sJy)Nr)rrlr)rrrrrrr0s ru test_tracers-  A 779??rwctddddg}|jdk(sJttddgdtdgg}|jdk(sJy)NrjrhrrMr)rrrPrQ)rr1s ru test_shapersXq!aVA 77f  Aq Aq  A 77f  rwcttddgdtdgg}|jdd|ttddgdtdzdggk(sJ|j dd|ttdzddgdtztdzdggk(sJ|j dttdzddggk(sJ|j d}d|d<|dtdzk(sJ|ddd f}d|d<|dtdzk(sJ|j d}|ttdzdtzgk(sJd|d<|dtdzk(sJ|dddf}d|d<|dtdzk(sJy) Nrrjc||zdzSr r{)rrs rurz!test_col_row_op..sQUQYrwrhric|t|zzSr)rQ)rMrs rurz!test_col_row_op..sQAXrw*r~r)rrPrQrow_opcol_oprr)r1r1rs rutest_col_row_oprsAq Aq  AHHQ&' 1 AE1 '( (( (HHQ%& QAq)QAq)+, ,, , 558vAq!}o. .. . qB BqE T7a!e   1crc6B BqE T7a!e   qB QA' '' ' BqE T7a!e   1a4B BqE T7a!e  rwctgdgdg}|jdd|ddk(sJ|ddk(sJ|dd k(sJy) Nrprorjrirrxr~rMrZ)rrow_multr0s ru test_row_multrsS AJJqO S6R<< S6Q;; S6R<.AaCrwrrrrhrrc|d|zzSrr{rs rurz!test_zip_row_op..rrw)rhrr)rkrrr)mutable_classesr. zip_row_op)rKr1s rutest_zip_row_oprs & GGAJ Q/0C""$%% %% GGAJqL$ Q/0!C##%&& && &rwctgd}tgd}tgd}|dvsJ|dvsJ|dk7sJ||k(sJ||k7sJy)Nrp)rhrhrir{)rjrjr)rrKrLs rutest_issue_3950rsYyAyAyARS 6M6 6M6 6M6rwcdGdd}Gdd}|}|}tgd}||dk(sJd||<|ddk(sJtgdgd g}|||fd k(sJ|d |fd k(sJ||dfd k(sJd |||f<|d d k(sJd |d |f<|d d k(sJd||df<|d dk(sJy)NceZdZdZy)test_issue_3981..Index1cyr r{r+s ru __index__z)test_issue_3981..Index1.__index__rwNrrrrr{rwruIndex1r rwrceZdZdZy)test_issue_3981..Index2cyrr{r+s rurz)test_issue_3981..Index2.__index__rrwNrr{rwruIndex2rrrwrrprirlrhrormrjrkrMrr)rrindex1index2rs rutest_issue_3981rsXF XFyA V9>>AfI Q4199 9%&A VV^  !! ! QY<1   VQY<1  Affn T7a<<AaiL T7a<<AfaiL T7a<>  AA Aq~~ r A 1>>  rwc|d\}}t||}|jddt||z}||k(sJ|j|jcxk(rdk(sJJ|j|jcxk(rdk(sJJ|j |j cxk(rdk(sJJtdtddk(sJtdtddk(sJtddt dddgdzk(sJtddt dddgdzk(sJ|jd|t||k(sJy)N)rirlrlrirhrrmrj)rIfillr5rqrrrr)rErrKrLs rutest_zeros_ones_fillr's7 DAq a A AFFAK DAJA 6M6 66QVV q   66QVV q   77agg ' '' '' ' 8uQ{ "" " 7d1aj  A;&As1u- -- - 1:1qc!e, ,, , AFF1I a  rwctd}|tk(sJtdd}|jdk(sJ|jdk(sJtdd}|jdk(sJ|jdk(sJy)Nrrh)rIrrqrrr s rutest_empty_zerosr<so aA == a A 66Q;; 66Q;; a A 66Q;; 66Q;;rwc ttdzttzgtttztt tzgg}|j ttdtztgttt tggk(sJttt tdzgt tdtz t t z tdtz zggjttttt tgtdtggk(sJtt tdz tz dtzttzzttzgdtz tttttdzggjtdtgdtdtdggk(sJ|jtttddtdzzttdzzdz gtdzttzdz tdzt tzdz ggk(sJy)Nrhrjrrri) rrPrQrAr)r+r,rr6rJr1r r s rutest_issue_3749rGsAqs aAh#a&123A 166!91a3q63q6*:;< << <  QB1 Q1sA2wAaC(* ++05B<bS" Ar{+, -- -  a&1*a1qsAqD* 1c!fc#a!e*o&( )).q! B3q6?+, -- - 1;;q>V !Q1 a1fQh' Ac!fQ1SV A &%() )) )rwctd}|jdddD]+}|j|d|jdk(r+Jy) Nrkrrj)rrc |dk(Sr-r{rts rurz%test_inv_iszerofunc..[s arw)rh iszerofuncrrg)r.col_swapr)rrhs rutest_inv_iszerofuncrWsV AAJJq! uuF/?u@ EEE     rwc&td\}}t|t|z|t|zg}t||g}|j |}||j |j k(sJ||j j |k(sJ||j j |j k(sJ|j t |jdz|z}|jt}|tddgd|dzggk(sJy)Nrho,phirrjrh) rDrr)rArrr-r.rr/rG)rhophiXYrrts rutest_jacobian_metricsr_sy!HCCH c#c(l+,ASzA 1 A  133   q! !! ! qss# ## # C OAA HA ACF ,- -- -rwc<td\}}t|t|z|t|z|dzg}t||g}tt|| t|zgt||t|zgd|zdgg}|j ||k(sJy)Nrrhr)rDrr)rArr)rrrrrs rutest_jacobian2rlsy!HCCH c#c(lCF34ASzA SC4C=! SCCL! cEq! A ::a=A  rwcttttztztttztztttztzg}ttttg}t ddD]z}t ddD]i}|d|ddf}|d|ddf}|j |}|j|k(sJ|j|k(sJt |D]}|dd|f|k(rJk|yNrjri) rr,rPrQrRrrrrqrr)rrrrX_sliceY_slicerks rutest_issue_4564rxsAEAIAEAIAEAI?@A1ayA 1a[*q! *AAhGAhG  )A66Q; ;66Q; ;1X *Aw'))) *  **rwcttttztztttztzgtttztztttztzggt t fddddftttgttggt t fdt t fdy)NcVjttttgSrrrrrPrQrRrsrurz(test_nonvectorJacobian..sajjAq ):;rwrc&jSr)rrrrsrurz(test_nonvectorJacobian..sajjmrwcdjtttgttggSrrrsrurz(test_nonvectorJacobian..s"ajj1a&1a&0B)CDrw)rr,rPrQrRr_rhrs@@rutest_nonvectorJacobianrsQUQYQUQY0QUQYQUQY02 3A 9;< !Q$AAA A 9+, 9DErwctddgddgg}|j}|jdk(sJtdD]}|||dzk(rJyNrjrirhrk)rvecrrr)rm_vecrs rutest_vecrs]AA A EEGE ::?? 1X!Qx1q5   !rwctddgddgg}|j}|jdk(sJtdD]}|||dzk(rJ|jd}|ddk(sJtdttt zzgt tztdzzdgg}|jd}|dt tztdzzk(sJtdttt zzgt tzdgg}|jdd}|dt tzk(sJt tdt td t td t td y) NrjrhriFrr)rcheck_symmetryc:tddggjSrrvechr{rwrurztest_vech..v1vh/446rwc@tddgddggjSrrr{rwrurztest_vech..!v1v1v&67<<>rwc:tddggjSrrr{rwrurztest_vech..rrwc@tddgddggjSrrr{rwrurztest_vech..rrw) rrrrrrPrQr_rXr)rm_vechrs ru test_vechrsOAA A VVXF ;;!   1X"ayAE!!!" VVUV #F !9>>Aq1uI1q!tQ01A VVUV #F !9!ad "" "Aq1uI1a)*A VVU5V 9F !9!   :67 :>? :67 :>?rwctgdtgdk(sJdddggttfdtdtgdk(sJy)NrprjrhrictSr)r*rsrurztest_diag..s tAwrwF)strict)r*rr_rrs@ru test_diagrsK  ?fY/ // / As A :' % F9$5 55 5rwc tddgddgg}tdtgtdgg}tdtdgtdtgtttgg}t |||}|j dt |j |j |j k(sJt |||}|j dt |j |j |j k(sJt |||}|j dt |j |j |j k(sJt ||||||}|j dt |j |j |j |j |j |j k(sJ|j ddt |j d|j d|j d|j d|j d|j dk(sJy) NrjrhriT)try_block_diagr)rrhrg)rrPrQrRr*r)rKrLrMrs rutest_inv_blockrsAA AAA AAq Aq!9q!Qi01A Q1 A 555 %eaeeguquuw)H HH H Q1 A 555 %eaeeguquuw)H HH H Q1 A 555 %eaeeguquuw)H HH H Q1aAA 555 % %!%%'51557EAEEGUQUUW*> >> > 55U5 3t UUQUU%0%!%%u2E UUQUU%0%!%%u2E8G GG Grwc\ttdttdtt dtdk(sJtt dtdk(sJttdt t dt dk(sJt t dt dk(sJttdtt dt dtddk(sJttdttdttd y ) zg Check that matrix dimensions can be specified using any reasonable type (see issue 4614). ctddS)NrirrIr{rwrurz$test_creation_args..s uQ|rwctddddSNrjrhrirkrr{rwrurz$test_creation_args..seAq!Q/rwrictdSN@rr{rwrurz$test_creation_args..s uRyrwctdSrr.r{rwrurz$test_creation_args..s s2wrwrkctdSrrr{rwrurz$test_creation_args..s fQirwctddSrrr{rwrurz$test_creation_args..s fQlrwctddggSrrr{rwrurz$test_creation_args..svq1#h/rwN)r_rrhrIrfrr.r5r{rwrutest_creation_argsr s  :+, 9/0 Q=E!H $$ $  a (( ( :() s1v;#a&  wqz?c!f $$ $ :' A #tAqz 11 1 9'( 9*+ :/0rwc jtddgd}|jrJ|jsJ|jdsJtddgd}|jsJtddd}|jsJ|jsJtddgd}|tdddk(sJtddt dd}|jrJ|jsJtd }|jsJtd }|jsJtdddt dzdt zzdzt t dzdzdd t d dg }|jsJ|jdrJ|jjdsJy) NrhrFrrrjri) rjrrrrhrrrri))rlrrWr~)rlrr)rrmrr)r is_diagonalrr*rIrPrQr-rs rutest_diagonal_symmetricalrsq!\"A}}  >>   >>5> )) )q!\"A ==?? Q1 A ==?? >>  q!01A Q1  q!U1a[!A~~  ==??'(A ==??%&A ==??q!aA!aQUQJ1aAFGA >>  ~~u~-- - 88: " "E " 22 2rwctddtzgdtz dggjsJtddgdjrJjrJt t fdt dddj\}}|tdk(sJ|k(sJtddgdjsJjsJj\}}|jz|z|k(sJtddgdjsJjsJj\}}|jz|z|k(sJ|tdk(sJ|k(sJtddgdjsJj\}}|jz|z|k(sJtddgd jsJj\}}|jz|z|k(sJ|D]}|jddk(rJtddgd jsJjsJj\}}|jz|z|k(sJ|td dgdd ggk(sJtddgd jd rJt tfdjsJj\}}|jz|z|k(sJtddgdjrJt tfdtddgdjrJt tfdtd\}}}}tdd||||gjsJjsJy)Nrjrhrirorjrorerirc$jSrrrsrurz&test_diagonalization.. rwr)rjrrrir) rjrhrrrirrhrrhrr)rrjrrTc&jdS)NTrrsrurz&test_diagonalization../ s d 3rwrrjrrc$jSrrrsrurz&test_diagonalization..7  rw) rorjrorerirrhrrkc$jSrrrsrurz&test_diagonalization..; rrwza b c d)rrrrr_rWr*rr.ras_numer_denomrrVrD)rrrrKrLrMrNrs @rutest_diagonalizationrsAaC1Q3(#$A    q!+,A""$$ $~~  !89 Q1 A ]]_FQ A;; 6M6q!\"A >>      ]]_FQ 557Q;?a  q!\"A >>      ]]_FQ 557Q;?a   A;; 6M6q!\"A    ]]_FQ 557Q;?a  q!12A    ]]_FQ 557Q;?a   *!!$)))* q!\"A ==??    ]]_FQ 557Q;?a   AA'( (( ( q!]#A""4(( ( ;34    ]]_FQ 557Q;?a   q!\"A""$$ $ ;/0q!56A""$$ $ ;/0#JAq!Qq!aAq\"A >>      rwctddgddggjdusJdd<jdusJtddgddggjdd<ttfdy)NrrjTrFc&jSrrr srurz"test_issue_15887..N s  rw)rrrr_rVr s@rutest_issue_15887rD sQFQF+,A 1   D (( (AdG 1   E )) )QFQF+,AAMMOAdG ;/0rwctddgdttfdtddgdtddgd}j\}}||k(sJ|j dk(sJtddgdtddgd }j\}}||k(sJtddgd tddgd }j\}}||k(sJtddgd tddgd }j\}}||k(sJtddgdtddgd}j\}}||k(sJtddgdtddgd}j\}}||k(sJtddgdj rJtddgd}j\}}||k(sJtt ddt ddgt ddt ddggj\}}|jD]$}t|t s|jdk(r$Jy)Nrirhrc$jSr)rrsrurz"test_jordan_form..T rrw) rrrmrirrxir) rrrrrjrrrrjrj rrjrrrkrrrjrh) rhrjrrrhrrrrh) rhrmrjrjrrjrhr) rrjrrrrrrr) rkrrhrlrnrirmrk) rrjrrrrrrrjrk)rmrlrrororririrhrjrrorrjrlrl)rhrjrrrrhrrrrrhrjrrrrh)rmrhrrorhrrmrhrr%rrrrirk)rrrrrrhrjrrrrhrrrrrh)rlrkrhrjrrjrrrrrirrjrjrrh)rjrrrrrhrrrrrkrjrrrrkz1.0n) precisionz2.0z3.14159265358979323846264338327z4.0) rr_rWrrrr r)r_prec)Jmustrrtermrs @rutest_jordan_formr+Q ssq!+,A !89 q!:;A 1a5 6E ==?DAq A:: AMMOA& && & q!23A 1a4 5E ==?DAq A:: q!45A 1a7 8E ==?DAq A:: q!34A 1a4 5E ==?DAq A::q!LMA 1a E ==?DAq A::q!LMA 1a' (E ==?DAq A::q!JKA""$$ $ 1aI JE ==?DAq A:: u,eES.IJ8CH%PUadJefh iA ==?DAq % dE "::$ $$%rwc dtgdgdgdgdg}ddtzz }ddtzz}t|dddgd|ddgdd|dgddd|gg}t|dddgd|ddgdd|dgddd|gg}|j\}}||k(s||k(sJt||z|j z|k(sJy) N)rhrkrjr)rrhrrj)rrrhrk)rrrrhrhrkrjr)rrrr@r)rpqJmust1Jmust2rrs ru#test_jordan_form_complex_issue_9274r1 s    " #A AaCA AaCA aAq\Aq\Aq\Aq\#$FaAq\Aq\Aq\Aq\#$F ==?DAq ;!v+% % AaCK A %% %rwctgdgdgdgdg}|j\}}|tgdgdgdgdgk(sJ|tgd gdgdgdgk(sJy) Nrrrrrrrrr)rrrs rutest_issue_10220r3 s  A ==?DAq  $$$&' '' ' $$$$ &' '' 'rwc tgdgdgdgdg}|j\}}|jtt t dz ttdz gdtzddtz dgdt d dz tdz z dt d dz tdz zggd gk(sJ|tt dddgdt ddgddtdgdddtggk(sJy) Nr)rrrr)rrrr)rrrhrjrhrrrjr)rrr-rr")rrrs rutest_jordan_form_issue_15858r5 s  A ]]_FQ 88:R1"Q$Q!A#6 aQQA6!A$q1Q3Q1a!A# 66 !89 99 9  Q1 QB1 Aq! Aq!   rwcNtd\}}}t| |z |dz||zz z||z||zz g||z||zz | |dz||zz zgg}|jt}|t tdz||z||zzd|z|zz||zz tzz||z|z||zz ztdk(sJt |t usJtddgddgg}|j|jtcxk(r t tdztz dz k(sJJtddgtdgg}|jt}|jtk7sJ|jj|jttdzdtzz k(sJy) Nz UA K_i K_wrhzZZ(K_i,K_w,UA)rrjrirrm) rDrrrPrrrgenas_exprru)UAK_iK_wrrr-s rutest_Matrix_berkowitz_charpolyr< s<(LBS#S!VS3Y//s3wc 7JKGS3Y/#Qc 8J1JKM NAzz!}H  QTSVc"f_quSy039=a? ? C C#I !*: < << < >X %% %AA A ::<1::a= BHQTAX\,B BB BB BAA A 1 A 55A:: 99;  AEE1 %A! 33 3rwc td}tjd|}|jtt |ggk(sJtjd|}|jtt |t |t |dz gdt |t |gddt |ggk(sJy)Nlamdarjrirhr)r$rr_eval_matrix_exp_jblockr,rrs rutest_exp_jordan_blockrA swAAq!A $ $ &&3q6(*< << <Aq!A $ $ & VSVSVAX & AA  3q6N   rwc tddgddgg}ttddtdzdz dtdzdz zgdtdgg}|j|k(sJt||k(sJtddgddgg}|jttdgdtggk(sJt|ttdgdtggk(sJtddgddgg}|jtttdzt t dzgtt dzttdzggk(sJy) Nrirkrrrrlrjr)rr,rr)rA)rm_exps rutest_exprD s<AB !A SVRBZ\Ac!fHQJ67!SWF GE 557e   q6U??AA A 557fq!fq!f-. .. . q6VaVaV,- -- -B!Q !A 557fqQx!CF3aAh#a&5IJK KK Krwc td}tjd|jtt |ggk(sJtjd|jtt |d|z dd|dzzz dd|dzzz gdt |d|z dd|dzzz gddt |d|z gdddt |ggk(sJtgdgd gd gt t fd y) Nr>rjrkrrhrirrrrc$jSr)r2rsrurztest_log.. s rw)r$rr_eval_matrix_log_jblockr2r_rVr@s @rutest_logrH swAAq!A $ $ &&3q6(*< << <Aq!A $ $ &Q1b!AqD&k1a1f:6CFAaCQq!tV-As1vqs#Aq#a&!          A  ;(rwc td}tdd|t|dzt|dzztj g}t |\}}}}|tj k(sJy)NrPrirjrh)r$rr)rAr"rrUrPcolumn pivot_offset pivot_valpivot_assumed_nonzero simplifieds ru:test_find_reasonable_pivot_naive_finds_guaranteed_nonzero1rP! sc s A Aq1c!fai#a&!)3QVV< =F$V,?L)2J   rwc td}tdd|t|dzt|dzz|dzzt|dzt|dzzg}t |t \}}}}|dk(sJy)NrPrirjrhsimpfunc)r$rr)rArUr[rJs ru:test_find_reasonable_pivot_naive_finds_guaranteed_nonzero2rT. s s A AqVQYs1vqy(A-VQYs1vqy(*+F %Vi@?L)2J >>rwc ftd}tdd|t|dzt|dzz|zt|dzt|dzzg}t |t \}}}}t |dk(sJ|dddk(sJ|ddd|zk(sJ|dddk(sJ|dddk(sJy)NrPrirjrhrRr)r$rr)rArUr[lenrJs ru+test_find_reasonable_pivot_naive_simplifiesrW> s s A AqVQYs1vqy(*VQYs1vqy(*+F %Vi@?L)2J z?a   a= q  a= qs "" " a= q  a= q  rwcPttdttdttdttdttdttdttdtt dttd ttd ttd ttd tt d ttdttdttdttdttdttdttdttdttdtt dttdttdtt dttdtt dttdtt dtt dtt d ttd!ttd"ttd#ttd$ttd%ttd&ttd'ttd(t d)ttfd*t gd+gt gd,gd-gd.gttfd/t gd,gd-gd.gttfd0y)1Nc"tddgdggSrrr{rwrurztest_errors..R sv1vsm4rwc$tddggdS)Nrjrh)g333333?rlrr{rwrurztest_errors..S v1vh/7rwc$tddggdS)Nrjrh)rjg@rr{rwrurztest_errors..T r[rwctdddS)NrirkT)rMr:)r8r{rwrurztest_errors..U sz!qDArwc<tddgjddS)Nrjrhrkrm)rr'r{rwrurztest_errors..V svq!f~55a;rwc^tddgddggjddgtddgSry)r copyin_matrixr{rwrurztest_errors..X s1AA'(661vvq!f~NrwcXtddgddggjddgtSry)r copyin_listr(r{rwrurztest_errors..Y s3fq!fq!f%56BBA Durwc@tgdgdgjS)Nrp)rhrirrrr{rwrurztest_errors..[ sI0F)G)K)K)Mrwc\tddddgjtddgddggSr)rrr{rwrurztest_errors..] s0q!aV$--fq!fq!f5E.FGrwcXtddgjtddgddggSr)rrr{rwrurztest_errors.._ s+FAq6N33FQFQF;K4LMrwcXtdgjdtddgddggSr)rrr{rwrurztest_errors..` 8vqc{55a! B1vA: rwcXtdgjdtddgddggSr)rrr{rwrurztest_errors..b rhrwc8tddgjSrrr{rwrurztest_errors..d sA)=)=)?rwc8tdgjdSr )rr/r{rwrurztest_errors..e sfaSk33A6rwcDtddgddggjddSNrjrhrirkrl)rminorr{rwrurztest_errors..f s%v1v1v&67==aCrwcDtddgddggjddSrm)rminor_submatrixr{rwrurztest_errors..g s%v1v1v&67GG1Mrwc:tgdjdSNrprjrcrossr{rwrurztest_errors..h sfY/55a8rwc:tgdjdSrrrdotr{rwrurztest_errors..i sfY/33A6rwcPtgdjtddgS)Nrprjrhrvr{rwrurztest_errors..j svi044VQF^Drwc:tddgjgSrrvr{rwrurztest_errors..k svq!f~11"5rwc:tddgjdS)NrjrhrKrvr{rwrurztest_errors..l sfaVn005rwc>tddgjgdS)Nrjrhrprvr{rwrurztest_errors..m svq!f~11)<rwc8tgdjS)Nrp)rr,r{rwrurztest_errors..n s ):)>)>)@rwc@tddgddggjSr)r normalizedr{rwrurztest_errors..o !v1v1v&67BBDrwc<tddgjdS)Nrjrhz not a methodrgrdr{rwrurztest_errors..p svq!f~111Hrwc8tddgjSrr inverse_GEr{rwrurztest_errors..q A)B)B)Drwc@tddgddggjSrrr{rwrurztest_errors..r rrwc8tddgjSrr inverse_ADJr{rwrurztest_errors..s sA)C)C)Erwc@tddgddggjSrrr{rwrurztest_errors..t s!v1v1v&67CCErwc8tddgjSr)r inverse_LUr{rwrurztest_errors..u rrwc8tddgjSrrr{rwrurztest_errors..v sA)D)D)Frwc8tddgjSrrrr{rwrurztest_errors..w sA););)=rwcDtddgddggjdS)NrjrhrirkzNot a real methodrgrr{rwrurztest_errors..y s'AA'(,,4G,HrwcPtgdgdgdgdgjdS)Nrrr|r"z Not functionrrr{rwrurztest_errors..{ s) l)+,,/C>C,JrwcPtgdgdgdgdgjdS)Nrrr|r"Frrr{rwrurztest_errors..~ s) l)+,,/C5C,ArwcVttddgddggtddgddggSrr0rr{rwrurztest_errors.. s1AA/0&1a&1a&9I2JKrwc8ttddgddgggSrrr{rwrurztest_errors.. swv1v1v.>'?Drwc2ttddzdS)NrPrhrK)r0r$r{rwrurztest_errors.. swvc{A~s;rwctddS)Nri)rlrhrr{rwrurztest_errors.. s1vd|rwctddS)Nri)rhrlrr{rwrurztest_errors.. rrwr!c&jdS)Nzmethod=LU_decomposition())rr0srurztest_errors.. squu%@Arw)rrrrprhrirkrc(jdS)Ng@)rr1Vsrurztest_errors.. sq||C3rwc(jdS)Ng)rrsrurztest_errors.. sq||D!4rw)r_rrrXrhrWrrs@@ru test_errorsrQ sI :45 :78 :78 :AB :;< :NP 9 !MN :GI MO : : !?@ 967 :CD :MN 989 967 :DE :56 956 :<= !@A :DE :HI !DE :DE !EF :EF !DE !FG !=> :HJ : KL : BC :KM :DE :;< :+, :+,NOA :AB ~A 9i01A :34 9i01A :45rwcttdk(sJttddggttdgdggcxk(rdk(sJJttdddttdddcxk(rdk(sJJttgdgdgdk(sJtdgtdggk(sJtrJttgk(sJy) Nrrjrhcyr-r{rs rurztest_len.. r.rwcyr-r{rs rurztest_len.. r.rwrrrm)rVrr{rwrutest_lenr s vx=A   v1vh CaSz(:$; @q @@ @@ @ vaN+ , F1a () /-. // // / vy),- .! 33 3 1#;&1#- '' 'x< 8vbz !! !rwc tddtftddfddtdzff}|jtttdtztdzdz fttzdtzdtzfdtzdtztdzdz ffk(sJ|jtttdtzttzftdzdz dtzdtzfdtzdtzttdzzffk(sJtddttg}|jttddtdzdz ttzgk(sJy)Nrjrkrhrrlri)rrPrQr1)rrs rutest_integrater s:Aq Aq!9r1adm45A ;;q>AaCAa 1Q3!QqS/BqD!A#q!tAv3FGH II I ;;q>AaC1 1Q!QqS1BqD!A#qAv3FGH II Iq!aVA ;;q>VAq1a461Q3-8 88 8rwc 4tddtftddfddtdzdzff}t|j tt |sJ|j ttdddddtzffk(sJ|j ttd k(sJt |ttdddddtzffk(sJt |ttd k(sJ|j }t|j tt |sJ|j ttdddddtzffk(sJ|j ttd k(sJt |ttdddddtzffk(sJt |ttd k(sJ|j td t|td k(sJt |td t|td k(sJy) Nrjrkrhrrlrrr)rrrFr4) rrPrQrr+rrrr])rA_imms ru test_diffr sQ1I1ay2q!Q$(2CDEA affQia )) ) 66!9*Iy1a1++NO OO O 66!9*+LM MM M 1:+Y Aq!A#;,OP PP P 1:+,MN NN N NN E ejjmT%[ 11 1 ::a=0)YAqQRs 1TU UU U ::a=01RS SS S q>19i!QPQRSPS2UV VV V q>12ST TT T 66!e6 $1u(M MM M 1u %A)N NN Nrwc tttgttgg}|j |t ddgddggddgddgggddgddggddgddggggk(sJt ||t ddgddggddgddgggddgddggddgddggggk(sJ|j}|j |t ddgddggddgddgggddgddggddgddggggk(sJt ||t ddgddggddgddgggddgddggddgddggggk(sJ|j ttddgddggk(sJtttg}|j |t jddddk(sJ|j |t ddgddggddgddgggddgddggddgddggggk(sJ|j ttgg}|jdk(sJ|t dgdggdgdgggk(sJtd}|ttt}|j tttggt |j t|j t|j tgk(sJ|j tttgdft |j td|j tt|j ttg|j tt|j td|j ttg|j tt|j tt|j tdggk(sJttttz}|j ttggt t!tttzttttzgk(sJ|j tttfft t!tttzttttzgk(sJ|j tttfft tt ttzt!tttzgk(sJ|j ttffttggt t!tttztt ttzgttttzt!tttzggk(sJ|j tj tj t|j tttffddk(sJ|j tj tj t|j tttffddk(sJ|j tttggtttfft tttfDcgc]?}tttfDcgc]"}|j |j |$c}Ac}}k(sJtj t#ttgg} t%| tsJ| t#ddggk(sJtdzj t#ttgg} t%| tsJ| t#dtdzzdggk(sJycc}wcc}}w) Nrjrrh)rhrhrjr`rirr)rrPrQrRrOr+rrrKrrLrIrr rAr,r)rr) rrrdBr`fxyzexprrrress rutest_diff_by_matrixr s QFQF+,A 66!9!Q!Q 0Aq6Aq62BC1vPQSTvFVZ[]^Y_bcefagXhEijk kk k 1:1a&1a&!1QFQF3C DAQRTUPVGW[\^_Z`cdfgbhYiFjkl ll l NN E ::e !Q!Q(8Aq6Aq6:J'KPQSTvXY[\W]N^bcefagjkmnio`pMq&r s ss s u 1a&1a&)9QFQF;K(LQRTUPVYZ\]X^O_cdfgbhklnojpaqNr's!t tt t 66!9*QFQF+;< << <aV$A 66!9 Aq!Q/ // / 66!9!Q!Q 0Aq6Aq62BC1vPQSTvFVZ[]^Y_bcefagXhEijk kk k !Q B 88y  !qc aS1#J/0 00 0 A Q1:D 99q!Qi[ !UDIIaL$))A, RS +U%V VV V 99q!Qi^ $ 1a$))Aq/499Q?; 1a$))Aq/499Q?; 1a$))Aq/499Q?;/)   q6#a&=D 99q!fX %QAAs1v (F"G GG G 99Q!Q "eSVCF]CF3q6M,J&K KK K 99Q!Q "ec!fWSV^SVCF],K&L LL L 99q!fY!Q )USVCF]SVGCPQFN4SVYZ[V\]`ab]cVcehijeklopqlrerUs3t-u uu u 99Q<  Q  $ $Q '499q!Qi\1+Eg+N NN N 99Q<  Q  $ $Q '499q!Qi\1+Eg+N NN N 99q!Qi[Aq!9, /5noqrtumv9whiZ[]^`aYb:cTU499Q<;L;LQ;O:c9w3x xx x &&!Q! "C c/ 00 0 &1a&" "" " a4++fq!fX& 'C c/ 00 0 &1QT61+' '' ';d9ws;^: '^5:^: 5^: c tddtftddfddtdzdzffttfdt dttdd d d dtzffk(sJy) NrjrkrhrrlcjSr)nonexistantattributersrurztest_getattr.. s 1#9#9rwr+rrr)rrPrQr_rgetattrrs@ru test_getattrr slAq Aq!9r1adQh&789A >9: 71f a FIy1a1++N$O OO Orwctgdgdgdg}|jsJ|j}|jsJd|d<|jdusJtgdgdgdg}|jrJt dd }|jsJy) Nrrrrj)rrFr rlrh)rr!r-r"rIrs rutest_hessenbergr s 9i01A   A  AeH E )) ) 9i01A$$$ $ a A  rwc @ttdttdttdttdttdtdtzdfdfj d tt dtzdgdd ggk(sJtd }|j d }|td dgdd t dztzggk(sJ||jz|k(sJtd}|j }||jz|k(sJ|jsJ|tgdgdgdgk(sJtddtzd d tzzfd tzd dtzfd d tzz dtz dff}|j jtdtd dfd tz ddffk(sJttdttdttdttdttdtdtzdfdfj d tt dtzdgdd ggk(sJtd }|j d }|td dgdd t dztzggk(sJ||jz|k(sJtd}|j }||jz|k(sJ|jsJ|tgdgdgdgk(sJtddtzd d tzzfd tzd dtzfd d tzz dtz dff}|j tdtd dfd tz ddffk(sJy)Nc4tdjSNrMrcholeskyr{rwrurztest_cholesky.. s)@)@)Brwc4tdjSNrM)rirkrr{rwrurztest_cholesky.. v&67@@BrwcJtdtzdfdfjSNrlrr)rrrr{rwrurztest_cholesky.. s!vAqz6&:;DDFrwc4tdjSNr)rlrjrr{rwrurztest_cholesky.. rrwc8tdjdSNrF hermitianrr{rwrurztest_cholesky.. sv&67@@5@QrwrlrrFrrjrrhrm))rrr)rrZr)rrrr)ririr)rrjrirkrrrrric4tdjSrr#rr{rwrurztest_cholesky.. sf)=)F)F)Hrwc4tdjSrrr{rwrurztest_cholesky.. |,<=FFHrwcJtdtzdfdfjSr)r#rrr{rwrurztest_cholesky.. s!|a!eQZ,@AJJLrwc4tdjSrrr{rwrurztest_cholesky.. rrwc8tdjdSrrr{rwrurztest_cholesky.. s|,<=FFQVFWrw) r_rWrrrrrBr-rr-r#rs ru test_choleskyr sk !BC :BC :FG :BC :QR AE1:v& ' 0 05 0 AV a!ea1a&M"F# ## # A U #A AAd1gIaK 012 22 2 QSS5A::78A A qss7a<< :::  9j9: :: :BqD!ac'"QqS!R!V$4q1Q3wQ6KLMA ::<   FI1ay1q5!Q-+P$Q QQ Q !HI :HI :LM :HI :WX !a%V, - 6 6 6 G6 a!ea1a&S"L# ## #%&A U #A AAd1gIaK 012 22 2 QSS5A::=>A A qss7a<< :::  9j9: :: :q"Q$AaC(1Q326*:Q1Wb1fb> 66":?? 66+ ! ## # r7<<?c"gll2. 3! 33 33 3 66":?? Aq Aqvvs+,-A FF5M8B?Qs1vqy[02q581a4?@ AB A  Q8B?345A 66!9Xc1-U A => >> > 66":   66+ $s)A+ -- - AA AAQ !AQB!Q !AAB !A Aq! A 7 &E Qx}}U#qvv--- "A "vve}qvve}4ULL'(q! " " Q1 AE!G>>%0J./0C!8O8  $ 1qs7B A!Q A|A1ayA hq#.23A Aq!QA 7 &EQB A,>,>C  19)$))%0AFF: :: A: 88A66%=166%=8Q U+,C#C1H-7778 8 Q2r1::q/A/AB B a~~e4Z!&&-/ 12axx  & q!23A 66!9??rwc tddtd}d|d<tdd|d<|jd k(sJ|d <|jt dt t tddt z k(sJtttgt tgg}|jtfd tdd tjtddtd z tttddzfDsJtgjdk(sJy)NrPTr&rirr~rjrhrhrdrnc3K|]<}tdjj|j>yw)rZN)r epsilon_eqrur;)r=valMcrPs rur>z(test_condition_number.. s9QuRy##BGGAsO$9$9$;<QsAArlrhrrkr)r$r.r condition_numberrrrrr)rArFr"rr7)rr1rrPs @@rutest_condition_numberr s-sA AAAdGq"oAdG   3 && &AdG   3r3q6?S!R#a&5Q#Q QQ QQQ CF7CF"345A   B Q !Q!R"Q$Bx1~|jddjS)NrT)rEchop)r;is_zerorts rurz!test_normalized.. s2D199rwr)rr~r rs rutest_normalizedr s 1a&> $ $ &AA/0 11 1 )  ' ' )VI-> >> > }A <<9      rwcHtddk(sJtddk(sJy)Nc4tdjSrr. print_nonzeror{rwrurz$test_print_nonzero.. s3q6//1rwz[X ] [ X ] [ X] c6tdjdS)Nrircrr{rwrurz$test_print_nonzero.. s3q6//4rwz[. ] [ . ] [ .] )rdr{rwrutest_print_nonzeror s8 1 2   4 5   rwctjdtdk(sJtjdtdk(sJtddtdddgdzk(sJtddgddgg}tddgddgg}tD]v}|jd}||k(sJ|td|k(sJt ||k(sJ|jd}||k(sJ|td|k(sJt ||k(rvJy)NrirkrjrxrrhrJ)rr.rIr5r;r)rrRrKrs rutest_zeros_eyer s ::a=CF "" " <<?eAh && & 1:1qc"f- -- -AA AAA A GGAJAv vCsO###Aw#~~ IIaLAv vE!%%%%Aw#~~rwctjsJtddgddggjsJtddjsJtdjrJttdgddggjdk(sJt tdgddggjdk(sJt tdgddggjdk(sJttdgddggjdk(sJttdgddggjdk(sJtdd}t|dgddggjdk(sJy) NrrirkrjFrKT)nonzero) ris_zero_matrixrIr.rPr#rrr$r s ru test_is_zeror sL 8 " "" " Aq6Aq6" # 2 22 2 A; % %% %1v$$$ $ Aq6Aq6" # 2 2d :: : !Q!Q( ) 8 8D @@ @ QFQF+ , ; ;t CC C 1a&1a&!1 2 A AT II I Aq6Aq6" # 2 2e ;; ;sD!A Aq6Aq6" # 2 2e ;; ;rwcJtdz }t|}t| }t|}t| }t|}t| }||zt dzt dk(sJ||zt dzt dk(sJ||zt dzt dk(sJ|j ddt |zzk(sJ|j ddt |zzk(sJ|j ddt |zzk(sJtdt dk(sJtdt dk(sJtdt dk(sJtjgdtdz }tjgdtdz }tjgdtdz } tt dz |jk(sJtt dz |jk(sJtt dz | jk(sJttdz |jk(sJttdz |jk(sJttdz | jk(sJy)Nrirjrhrrrr) r7r;r:r9r.rr)rfrom_axis_angleto_rotation_matrixr<r=r>) thetar3_plusr3_minusr2_plusr2_minusr1_plusr1_minusq1q2q3s rutest_rotation_matricesr sf qDEG% HG% HG% H G CF "c!f ,, , G CF "c!f ,, , G CF "c!f ,, , ==?a!CJ,. .. . ==?a!CJ,. .. . ==?a!CJ,. .. . Q<3q6 !! ! Q<3q6 !! ! Q<3q6 !! !  # #IrAv 6B  # #IrAv 6B  # #IrAv 6B rTAX ""7"7"9 99 9 rTAX ""7"7"9 99 9 rTAX ""7"7"9 99 9 2 "b&;&;&= == = 2 "b&;&;&= == = 2 "b&;&;&= == =rwcttdddk(sJttdtdk(sJttdttddk(sJt tddk(sJy)Nvectorrkz vector[4]rNctddS)NrNr)rr{rwrurz%test_DeferredVector.. s~c226rwtestzDeferredVector('test'))strrrEr_rreprr{rwrutest_DeferredVectorr  sx ~h'* +{ :: : >#& '>#+> >> > :67 ~c" #s ** * v& '+C CC Crwc0ttdrJy)Nr)rerr{rwru test_DeferredVector_not_iterabler ss+,, ,,rwc&ttdy)Nc*ttdS)Nr)rrr{rwrurz,test_DeferredVector_Matrix.. sf^C%89rwr_rhr{rwrutest_DeferredVector_Matrixr s  99:rwc t}tddddg}tddddg}t||gtddddgtdd|ddz |ddz ggk(sJt|j|jgtddddgtdd|ddz |ddz ggk(sJttddgtddggdtdt dzdz t ddz gtt d dz dt dzdz ggk(sJt tdg}t|tdgggk(sJy)NrjrhrirlrTr)r rr r-rBr )rrrrs rutest_GramSchmidtr s}A 1q!f B 1q!f B Bx 1q!f vaQqT!VQrU1W,=>? @@ @ bdd| $ 1q!f vaQqT!VQrU1W,=>? @@ @ 1v1v7 >$r( 2 tBx{+,b " aRjm,-C/ // / &!+A q>fqcUm_ ,, ,rwcTtgdddk(sJtgddddk(sJy)NrrjrF)zero)r(r{rwrutest_casoratianr) s. lA &! ++ + lAE 2a 77 7rwcttddzjdk(sJtddtddztddk(sJtddtddztk(sJy)Nrri)rri)rrIrr{rwrutest_zero_dimension_multiplyr. si HU1a[ ' '6 11 1 A;uQ{ "eAqk 11 1 A;uQ{ "fh .. .rwcvtddtddddftddggk(sJdddftddggk(sJdddftddggjk(sJdddftddggjk(sJttfdttfdy)NrhrkrjrircdddfSrr{rsrurz'test_slice_issue_2884..: sqAwrwcdS)Nrr{rsrurz'test_slice_issue_2884..; s qwrw)rrr-r_rrs@rutest_slice_issue_2884r4 sq!U1XA QT7fq!fX& && & RU8v1vh' '' ' QT7fq!fX&(( (( ( QU8v1vh')) )) ) :' :'rwctdddddfjdk(sJtdddddftddgk(sJy)Nrrirrrj)rIrrr{rwrutest_slice_issue_3401r> sK A;q"u  # #v -- - A;q!t q!R 0 00 0rwctdd}d|d<|dddftgdk(sJ|ddk(sJ|dddgk(sJd|d<|ddk(sJ|dddftddggk(sJtdd gg|dddf<|dddftgd gk(sJdd gg|dddf<|dddftgd gk(sJd |d<|ddddftgdk(sJgd|d<|dddftgdk(sJtgd|d<|dddftgdk(sJtgd|d<|dddftgdk(sJy)Nrirjrrrkrrnrlrm)rjrlrm+)rjrr!r~)r"rjrr)rIrr#)rs ru test_copyinr#C s a A AaD QT7fY' '' ' Q4199 Q7qc>>AdG T7b== QU8vAwi( (( (1vhAaeH QT7fi[) )) )RzAaeH QT7fk]+ ++ +AdG QU8vj) )) )AdG QT7fY' '' 'YAdG QT7fY' '' '9%AdG QT7fY' '' 'rwc&tddgddggjtddgddggdfk(sJttdtgdtddgdtdggt jdj k7sJjdtdk7sJjt dtdk7sJttfd ttfd ttfd y) Nrjrhr)rc@tddgddggjSrrdr{rwrurz'test_invertible_check..^ s!v1v1v&67;;=rw)rrrrrirc(jdS)Nrrgrrsrurz'test_invertible_check..i squuEu2rwc(jdS)Nrrgr'rsrurz'test_invertible_check..j quuDu1rwc(jdS)Nrrgr'rsrurz'test_invertible_check..k r)rw) rrr_rrPrVrqr.r?rs@rutest_invertible_checkr+Z s Aq6Aq6" # ( ( *v1v1v6F/G.N NN N :=> a! a  A qvvx{ qvv %% % 668A;#a&  6686 $Q '3q6 11 1 :23 :12 :12rwctd\}}||z}|j|tgdtgd|zk(sJy)Nzx, y)rirlri)rDrur)rPrQrs rutest_issue_3959r-n s@ 6?DAq !A 66!VI& '6)+ >> >rwcBttddgddggdk(sJy)NrjrhrirkzMatrix([[1, 2], [3, 4]]))r rr{rwrutest_issue_5964r/t s( v1v1v&' (,F FF Frwcptd\}}tt|d|zg|dz|dzggdk(sJy)Nrrhriz'Matrix([ [ x, 2*y], [y**2, x + 3]]))rDrCrrs rutest_issue_7604r1x sG 5>DAq AaC1a4Q-01 23 44 4rwc tdjsJtdjjsJtdjrJt djrJt gdgjrJt ddddddjsJt ddtdjrJt dddddjrJt ddddddddjrJy) Nrirrj)r~rnrrhrm)r~rn)r~rnrrr)r. is_IdentityrrIr5rr#rr{rwrutest_is_Identityr4~ s q6    q6   , ,, ,Qx### #Aw""" "yk"... . !AQa8 9 E EE EAaq*666 6Aa!34@@@ @Aa!1A!NO[[[ [[rwctddjtdddk(sJtddjgddk(sJtgdjtgddk(sJtdddtzgjttddtzgdtzk(sJtdddtzgjttddtzgd dtzk(sJtdddtzgjttddtzgd d tzk(sJtdddtzgjttddtzgd d d tz k(sJtdddtzgjtddtzdgd d ddtzzk(sJtdddtzgjtddtzdgd d ddtzz k(sJttdtzgjttdtzgdd dk(sJttdtzgjttdtzgddk(sJt t dy)NrjrirrprrhrFrTrphysicsrconjugate_conventionrkrlrmrightrleft)r8cVtddgjtddgddS)NrjrhrirkTr r7rvr{rwrurztest_dot.. s)vq!f~11&!Q.Dgm1nrw)r5rwrrr_rr{rwrutest_dotr< s 1:>>$q!* % ** * 1:>>) $ )) ) )   !2 3r 99 9 1a1+  " "61a1+#6 726 AA A 1a1+  " "61a1+#6% " HBQRF RR R 1a1+  " "61a1+#6$ " G2PQ6 QQ Q 1a1+  " "61a1+#6$]f " gkmpqkq qq q 1a1+  " "61ac1+#6$]d " eijmnopmpip pp p 1a1+  " "61ac1+#6$]c " dhilmnoloho oo o 1ac(   1Q3x 0EX^  _ce ee e 1ac(   1Q3x 0v  NRS SS S :norwc tdd\}}}}}}td|||f| d|| f| | d|f| || dff}td| | | f|d|| f|| d|f||| dff}|jj|sJt djjt dsJ|jjj| sJy)NzB_x B_y B_z E_x E_y E_zTr&rri)rDrdualequalsr.rI)B_xB_yB_zE_xE_yE_zrRFds ru test_dualrG s#*!$. Cc3S cC !cC4 tC cTa  A  sdSD3$ S3$ sdq3 sSDQ  B 668??2   q6;;=  a )) ) 668==? ! !1" %% %rwc ,tddgjdusJtdddtdzdtzzdzttdzdz dttzt t tzdg }|jdusJ|jdJ|jdJ|d  |d <|jJ|d  |d <|j }|jddusJd|d <|jdusJy) NrjrhFrirTrc|Srr{rts rurz%test_anti_symmetric.. rrwrlr~)rrrPrQr-rs rutest_anti_symmetricrJ s/ 1a&> + + - 66 6q!aA!aa!eaZKAaC!aRT1MNA   D (( (    . 66 6    4 << <whAdG   (( (whAdG  A    .$ 66 6AdG   E )) )rwctd}|jd\}}||jz|j|zcxk(rt|jk(sJJ|jdd\}}||jz|j|zcxk(rt|jk(sJJ||z|j z|k(sJy)N)rMrlTr)rsort)rrr-r.rrr)rrrs ru#test_normalize_sort_diogonalizationrM s A ==4= (DAq QSS5ACCE (S[ (( (( ( ==4d= 3DAq QSS5ACCE (S[ (( (( ( Q3quuw;!  rwc&ttdy)Nc6tgdtddggS)Nrprrjrr{rwrurz!test_issue_5321.. svy&Ar2B&CDrw)r_rr{rwrutest_issue_5321rP s  :DErwc tjtddtdztgdgdgk(sJtjtddtdztddgddgddgddggk(sJt}|j|td|dtdztgdgdgk(sJy)Nrh)rjrrhr)rrjrrhrjr)rrr.rr#rJs rutest_issue_5320rR s ==Q3q6 *f6/   ==Q3q6 *f A A A A 6/   C ::c#a&k3qQx= 1V=6  rwctdgg}t|}tj||tddggk(sJtj||tdgdggk(sJyr )rrErr)rAIms rutest_issue_11944rU sbu A !*C ==a FQF8$4 44 4 ==a FQC!:$6 66 6rwcgd}gd}tgd}|j}fd}tD]|}|}||j||||j|j|||jj|j|||jj||t t dy)Nrpr)rrkrc4||k(sJt|k(sJyr)r)r1rurKs rur ztest_cross..test saxxAw#~~rwcXtddddgjtddddgSrrsr{rwrurztest_cross.. s/q!aV""6!QA#78rw)rr-r;rtr_rX)rKrLrrr rrrKs @ru test_crossrY sAA  C %%C  F F QWWQZ QWWQSS\3 QSSYYqss^S! QSSYYq\3   :9:rwc@ttttg}ttt t g}|j|z|j|k(sJ|jjsJ|jj|k(sJyr) rrPrQrRrKrLrMhatrtrvee)v1v2s ru test_hat_veer_ st Aq B Aq B 668b=BHHRL (( ( 668 % % '' ' 668<<>R  rwctD]V}|jd|jdh}t|dk(r#|j|jdk(rVJtD]#}t |jdt s#Jyr )immutable_classesr.rVpoprrr)rKrs ru test_hashrc sz 5 WWQZ $1v{quuw#''!*44454cggaj(3334rwcdtgddgg}tddgt dgg}tD]}|||jk(rJyNrrj)rrr;adjoint)rrurKs ru test_adjointrg sW q6Aq6 C 1a&A2q'" #C)c#h&&(((()rwctddgtddtz z gg}|jtjtdtj thk(sJ|jt thk(sJyr)rrPrer"r NegativeOner$rs ru test_atomsrj sbAA!G %&A 779qtAMM15 55 5 776?qc !! !rwc  tttgttgg}t |j dt |jk(sJtddgddgddggtgd gd gtttgg}|D]f}|j d}||z}||z}t ||z|k(sJt ||z|k(sJ|j|k(sJ|j|k(rfJ|D]o}t |j d }||z}||z}t ||z|k(sJt ||z|k(sJ|j|k(sJ|j|k(roJd d l m |j d }|j}tdtdtdtdi}t fdt|j||j|DsJy)NRDrgrhirirorl)rjrr)rr"EDr)compi_ib,iijc3nK|],\}}|j|j.ywrrD)r=rrrps rur>ztest_pinv..A s0 Aq QSSUACCE r?)rrKrLrMrNr@pinvrr/sympy.core.numbersrprFrru) A1AsrA_pinvAApApAr.wrepsrps @ru test_pinvr{ s !Q!Q !B BGG4G( )Xbffh-? ?? ? 2s)dAYQ0 1 )\* + !Q. Bt$&jqja A%%%f %///uu||uu||!&&&-.&jqja A%%%f %///uu||uu||( tA A vq%E1e 4D  t affTl3    rwc tgdgdgdgdgdgdgg}|D]G}|jd}||z}||z}|j|k(sJd }||j|rGJy) N)=r7rerJr)>`Urr#r)E8r"rk6r)rr[)rJr)rr=rrlZr)rrrrrrrorgc|jt}|Dcic]}||j}}||z j|j}t d|DScc}w)Nc38K|]}t|dkyw)g|=Nr^)r=rs rur>zXtest_pinv_rank_deficient_when_diagonalization_fails..allclose..h s;!s1v~;s)rer!r;r|rF)rrrootofsrrootofs_approx diff_approxs ruallclosezEtest_pinv_rank_deficient_when_diagonalization_fails..allclosed s`hhv&G4;. s0u1v1v.!Q!Q0@ABCrwrjrhrirkN) rbr]rer`rrPrQrRr_NotImplementedErrorrs@rutest_from_ndarrayrw svP % " #vi'8 88 8 % $ % )< << < %I./ 0 9%& '' ' %Aq " #vq!Qi'8 88 8 CE 5!Q=%A-0 1VaVaV>>cAdG >>U "" "AdG >> !! !gaiAdG >>U "" "rwctgdgdgdg}|jd|tgdgdgk(sJtgdgdgdg}|jd|tgdgdgk(sJtgdgdgdg}|jd|tgdgdgk(sJtgdgdgdgttfd tgdgdgdgttfd tgdgdgdg}|j d|tdd gd d gd dggk(sJtgdgdgdg}|j d|tdd gd d gd dggk(sJtgdgdgdgttfdtgdgdgdgttfdy)Nrprrrjr)rlrmrrrc&jdSrorrsrurz+test_issue_9457_9467_9876.. rrwc(jdSNrrrrsrurz+test_issue_9457_9467_9876.. yqyy~rwrirhrkrlc&jdSrorrsrurz+test_issue_9457_9467_9876.. rrwc(jdSrrrsrurz+test_issue_9457_9467_9876.. rrw)rrr_rr)r1rVOrrs @@rutest_issue_9457_9467_9876r s 9i01AIIaL  9-. .. . 9i01AIIbM  9-. .. . 9k23AIIbM  9-. .. . 9i01A :,- 9i01A :-.  9i01AIIaL AAA/0 00 0 9i01AIIbM AAA/0 00 0 9i01A :,- 9i01A :-.rwcDtdd\}}td\}}td}tdd|||tg}||z|z||z|zk7sJ||z|z||z|zk(sJ||z||zk7sJ||z||zk(sJ||z|zt||zdgd||zggk(sJy)NrF) commutativeza brhr)rDr.rrR)rPrQrKrLr1rs rutest_issue_9422r s 5e ,DAq 5>DAq AA 1q!Ql #B Q3q5AaCE>> Q3q5AaCE>> R42a4<< R42a4<< Q3q5FQqS!Hq!A#h/0 00 0rwc2tg}ddgtgdf}ddg|djf}ddgtddgdd ggf}|||fD]K\}}|D]A}t||}d |vr||n|d |}||k(rt|t|k7rAJMy) Nrr)rrmrirrrjrhrirkjoinr)rr-rid) r1rKrLrMopsropr`news rutest_issue_10770r sr A z"F9$55A z"AaDFF*A |$fq!fq!f-=&>>Aa)1Q 1B2A B,!A$Ab!HC!832a5 0 00 11rwcdtgdgdgdg}|jgdgdtddgdd gd d ggk(sJ|jgdgd tdgdgd ggk(sJ|jgd gdtgdgk(sJ|jgd gdtgdgdgk(sJ|jgdgdtddgk(sJ|jgdgdtddgk(sJ|jgd gdtdgd ggk(sJy)Nrprorr)TTFrjrhrkrlrr)TFF)TFT)FFFrir)FTF)rrrs rutest_issue_10658r s8 9i01A 99Y 3 4AAA'( )) ) 99Y 4 5!qcA39P PP P 99)9 5 9L LL L 99() 4 9%& '' ' 99Y 5 6&Ar:J JJ J 99*I 6&Ar:J JJ J 99(*> ?aSz  rwc tddtdzzdgdtdzdz dzdtdzdz gg}|jdk(sJtddtdztzzdgdddtdztzzgg}t |j d tddddtdztzzz gd d ggz t ddk(sJtd \ }}}}}}}}} } } } t|||| z|| zd g|||| z|| zd g|||| z|| zdg|||| z|| zdg| | d| z| z| | zz d| z| z| | zz d gg}|jdk(sJy) Nrrlrhrjrir$rkrorz/a_x a_y b_x b_y c_x c_y d_x d_y e_x e_y t_0 t_1)rrBrrr@rrIrD) raxaybxbycxcydxdyexeyt0t1s ru!test_opportunistic_simplificationrs aQi$r$q'z!|a'7DGA&FGHA 668q== 1T!W9Q;#Qr!DG)A+~$678A AFFHQK&1b!aQik/.B*CaV)L"MM NRWXY[\R] ]] ]+22c*d'Br"R2bBr"RBr"uRU1%r"RU2b5&;R2b5Bq.2sQrwrr)rZrg4iҤIӿr)rrZglٲerrrrN)rrr)rm_rref m_correctm_diffs rutest_iszero_substitutionr+sr $%9:NOPA VV5V 6q 9F9:[\}~I i F ;;=5  #;!  rwc ddlm}dttt ddzzttt ddzt dzz }dt dzttt ddzdzzd ttt ddzzzd ttt ddzdzzz }|dd}|d t d }|||}t |t|z |t|z g}t ||z ||z g}t t||z t||z g}d } |jd | d k(sJ|jd | d k(sJ|jd | d k(sJy)Nr)Pointrr-rir%rhrjrorjc<t|jdkS)Ng#B ;)rJrErts rurz"test_issue_11238..Hs#cacce*u$rwT)r@r) sympy.geometry.pointrrFr7r rBrr@r) rxxyyp1p2p0rrrZs rutest_issue_11238r:s* 3r(2r"" # #SHR,<)<%=Q%G HB T!W*SHR,,-q0 02c"Xb"=M:M6N3N NQSVYZ\]efhjl]mZmVnpqVqQq rB q!B q47( B r"B hrl"B"$56 7B b"r'" #B "r'"HR"W$56 7B %A 77DQ7 /1 44 4 77DQ7 /1 44 4 77DQ7 /1 44 4rwctddgd}|tjz}||z}tD]M}||j \}}t |t |k(sJt |t |k(rMJy)Nrhr)rr" ImaginaryUnitr; as_real_imagrs)rrrklsrKrLs rutest_as_real_imagrNsx !I B AOO B bB#"g""$!Aw$r("""Aw$r("""#rwctddgd}|j\}}|dtdddgk(sJ|dtddgdk(sJy)Nrir"rjrhr)rhrjrrh)r jordan_cells)rrJcellss rutest_deprecatedrYs[ q!23A IAv !9q!aS) )) ) !9q!\2 22 2rwcddlm}tgd}tgd}||dtgdk(sJ||dtgdk(sJy) Nr)Mod)rrjrh)rrer#ri)rhrjrhrk)rhrrj)sympy.core.modrr)rrrs rutest_issue_14489rdsK"zA}A q!9y) )) ) q!9y) )) )rwc ddlm}t ddgddgg}|t j jd k(sJy#t$rtdYOwxYw) Nrrr_rjrhrirk)dtypefloat64)rbr]rer`rfloatrname)r]r1s rutest_issue_14943rms`P 1!u~A % & & + +y 88 8 P NOPsAAAcdtddd}td}|ddkD}t|dk(sJy)NrrjrKr~rz m[0, 0] > 0)rr$r )rrKs rutest_case_6913rxs8S!QAs A $ A q6] "" "rwcdtddd}td}|j|||ik(sJy)NrrirK)rr&match)rrKs rutest_issue_11948rs3S!QA S A 771:!Q  rwcbtdtgtdt gg}tj|tdgtggtdgt gggk(sJtdtdgttdt gg}tj|tdgtgdggttdz gtddz gt gggk(sJtdtgdt gg}|j \}}||j ztj dk(sJy)Nrjrrh)rrrr"QRdecompositionr/r.)rrArrs rutest_gramschmidt_conjugate_dotr s' Aq6NFAr7O ,D    & !qc VaSA2$K01 22 2 Aq!9 vq!aRj1 2D    & !qcA3 &1Q3%!A$q&QB4)@"AB CC C 1a&1qb'" #C    DAq qss7fjjm ## #rwcttddd}ttddd}|j|}t||d}t||d}||dk(sJ|dk(sJy)NrKrirjrLr~r)rrrwr+)rKrLrMrNrs rutest_issue_8207r sr|CA&'A|CA&'A aA Q$A Q$A $<< 6M6rwc ddlm}tddgddggjt t t zt tt t t dt zt t z gdt dt zggk(sJtddgddggtzdz jtt t ttddz td dz gtd dz tddz ggk(sJttdttfd tgd gd gd gd gjtt t jk(sJttfd tddgddggtjtt t dzk(sJtgdgdgdgtj|t dt dzk(sJtgdgdgdgdgjtt t jk(sJtgdgdgdgdgjtt t zt ttt zjk(sJy)Nr)nthrootrjrhrirmrkcZtdjtttSr)rI analytic_funcr2rPr{rwrurztest_func..sa 6 6s1vq ArwcXtzjtttSr)rPrr2rsrurztest_func..s1 3 3CFA >rw)rrrri)rrjrr)rrrrjcJjtttSr)rrBrPrsrurztest_func..sQ ;rwrrxr)rirrk)rrr)rrlrrT)rjrhrr)rrjrir)rrrjri)rrhrjrm)rrrjrh)rrrrir)sympy.simplify.simplifyr rrrArPrOr7r)rBr_rr,r@r-)r rs @ru test_funcrsD/A1vA ??3qs8Q '6CFC!Hs1v? }MNA ??3q61 % 00 0 :;<R"b"#A AOODGQ/2 3q 88 8 [+67A AOOGAqM15q8 9Q >> > lL,GHA ??3q61 % 00 0 lL,GHA ??3qs8Q '6(AaC99;2G+H HH Hrwz$Cannot create threads under pyodide.cd}td5tjj5}|j |}|j sJ ddddddy#1swYxYw#1swYyxYw)NcRtjdk(sJtdgg}||z}yr)rZstaterrs rur`ztest_issue_19809..fs/!''4/// QC5M ErwT)r\ concurrentfuturesThreadPoolExecutorsubmitresult)r`executorfutures rutest_issue_19809rsp T #    2 2 4 #__Q'F==? "? ### # ###s"A0$A$A0$A- )A00A9ctttg}t|tddftddfttj gtj ggk(sJyre)rrPrQr1r"rr0s rutest_issue_23276r sT1vA QAq Aq!9 -  92  rwc&ttdy)Nc.ttgdS)Nr)r/rr{rwrurz"test_issue_27225..suVI%67rwrr{rwrutest_issue_27225r#s  978rw(Tconcurrent.futuresrr@collections.abcrsympyrrrrrr r r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r/r0r1r2r3r4r5r6r7r8r9r:r;r<r=r>r?r@rArBrCrDrErFrGrHrIrJrrKrLrMrNrOrPrQrRsympy.core.kindrSrTsympy.matrices.determinantrUsympy.matrices.exceptionsrVrWrXsympy.matrices.kindrYsympy.matrices.utilitiesrZr[r\$sympy.tensor.array.array_derivativesr]sympy.testing.pytestr^r_r`rarbrcsympy.utilities.iterablesrdreimportlib.metadatarfr;rrarvr|rrrrrrrrrrrrrrrr rrrrr#r*r2r7rGrWr[rjrrrvrrrrrrrrrrrrrrrrrrrrrr r&r7r<rCrErHrKrQrUr_rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr$r)r0r3r6rDrWrlrprvrzr}rrrrrrrrrrrrrrrrrrrrrrrrrrr rrrr+r1r3r5r<rArDrHrPrTrWrrrrrrrrrrrrrrrrr rrrrrrrr#r+r-r/r1r4r<rGrJrMrPrRrUrYr_rcrgrjr{rrrrrrrrrrrrrrrrrrrrrrr r rrr r#r{rwrur0s $ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (-,,5C33*OO@8&|_6KL <($&;<7&P5 M& , / "; . 4'*'* *#$"  %$$' 95 8O '">HD@& 2 1 ( ) 1 567L^0(0>L,4BG# 8 M ,%  + !+ & 9)XGT_JD?_*J Z_ % '  6% ; 5 8 GP y 8$ )&& < < < < < K( d&K0O2d D+8P1 & :>7Mt6.66* 8!"G&9P " -: & >* )   .  *F!@.6G$1&3@E!P 1H%V&('$&4.  L)2   !&;6|"9O*4(nP !%IPZz.&"  $ <">JD-;-"8 / (1 (.3(? G4 \ p&(*&F$7:( 4)" * Z"$"$J7 1 L&#" + ##/: 1 1 "22 5(#3*9# $I<:; #< #9rw