+
    LV-j¨!  ã                   ó¢  € ^ RI Hu Ht ^ RIt^ RIHtHtH	t	 ^ RI
Ht ^ RI Ht ^ RIHtHtHtHt ^ RIt^ RIHt ]P*                  ! 4       R 4       t]P*                  ! 4       R 4       t]P*                  ! ]P0                  ]P2                  .R	7      R
 4       t]P*                  ! 4       R 4       t]P*                  ! 4       R 4       t ! R R4      tR# )é    N)ÚhilbertÚsvdvalsÚnorm©Úaslinearoperator)Úinterp_decomp)Úassert_Úassert_allcloseÚassert_equalÚassert_array_equal)Úraisesc               #   ó   "  € R x € R# 5i)çê-�™—q=N© r   ó    Úv/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/scipy/linalg/tests/test_interpolative.pyÚepsr   )   s
   é € à
„Kùs   ‚	c               #   óT   "  € \         P                  P                  R 4      p V x € R# 5i)l   ,b„30k0 N)ÚnpÚrandomÚdefault_rng©Úrngs    r   r   r   .   s   é € ä
�)‰)×
Ñ
Ð 0Ó
1€CØ
„Iùs   ‚&()Úparamsc              #   ó^   "  € R p\        V4      P                  V P                  4      x € R# 5i)i,  N)r   ÚastypeÚparam)ÚrequestÚns   & r   ÚAr    4   s%   é € ð 	€AÜ
�!‹*×
Ñ
˜GŸM™MÓ
*Ô*ùs   ‚+-c              #   ó(   "  € \        V 4      x € R # 5i)Nr   )r    s   &r   ÚLr"   <   s   é € ä
˜1Ó
Ôùs   ‚c                 óà   € \         P                  P                  V R R7      p \         P                  ! W!8  4      ^ ,          ^ ,          pV#   \         d    T P
                  ^ ,          p T# i ; i)F)Ú
compute_uv)r   ÚlinalgÚsvdÚnonzeroÚ
IndexErrorÚshape)r    r   ÚSÚranks   &&  r   r+   r+   A   sa   € ä
�	‰	�‰�a EˆÓ*€AðÜ�zŠz˜!™'Ó" 1Õ% aÕ(ˆð €Køô ô Ø�w‰w�q�z‰Ø€Kðús   £&A ÁA-Á,A-c                   ó°  a € ] tR t^Kt o ]P
                  P                  R. RO4      R 4       t]P
                  P                  R. RO4      R 4       t]P
                  P                  RR.4      R 4       t	]P
                  P                  R. RO4      R 4       t
]P
                  P                  R. RO4      R 4       tR	 tR
 tR tR tR tR tR tR t]P
                  P                  R]P*                  ]P,                  .4      ]P
                  P                  RRR.4      ]P
                  P                  R^R.4      R 4       4       4       tR tRtV tR# )ÚTestInterpolativeDecompositionzrand,lin_opFTc                ó¶   € V'       g   TMTp\         P                  ! WsWFR 7      w  r‰p
\         P                  ! VRV	RV 3,          Wš4      p\        WVRR7       R# ©©Úrandr   ºNNNNç:Œ0âŽyE>©ÚrtolÚatol©Ú
pymatrixidr   Úreconstruct_matrix_from_idr
   )Úselfr    r"   r   r1   Úlin_opr   ÚA_or_LÚkÚidxÚprojÚBs   &&&&&&&     r   Útest_real_id_fixed_precisionÚ;TestInterpolativeDecomposition.test_real_id_fixed_precisionM   sO   € ÷
 !‘ aˆä!×/Ò/°À$ÔP‰ˆ�Ü×1Ò1°!°A°s¸2¸A°w°Jµ-ÀÓKˆÜ˜ 3¨U×3r   c                ó¸   € TpV'       g   TMTp	\         P                  ! W˜WWR 7      w  r«\         P                  ! VRV
RV 3,          W«4      p\        WVRR7       R# r/   r7   )r:   r    r"   r   r+   r1   r;   r   r=   r<   r>   r?   r@   s   &&&&&&&&     r   Útest_real_id_fixed_rankÚ6TestInterpolativeDecomposition.test_real_id_fixed_rankX   sR   € ð ˆß ‘ aˆä×,Ò,¨V¸TÔK‰	ˆÜ×1Ò1°!°A°s¸2¸A°w°Jµ-ÀÓKˆÜ˜ 3¨U×3r   c                ó  € TpV'       g   TMTp	\         P                  ! W˜WWR 7      w  r«\         P                  ! W«4      p\         P                  ! WV
4      p\	        WÑRV
RV 3,          VRR7       \	        WÜ,          WRR7       R# r/   )r8   r   Úreconstruct_interp_matrixÚreconstruct_skel_matrixr
   )r:   r    r"   r   r+   r1   r;   r   r=   r<   r>   r?   ÚPr@   s   &&&&&&&&      r   Ú%test_real_id_skel_and_interp_matricesÚDTestInterpolativeDecomposition.test_real_id_skel_and_interp_matricesc   sp   € ð ˆß ‘ aˆä×,Ò,¨V¸TÔK‰	ˆÜ×0Ò0°Ó;ˆÜ×.Ò.¨q°SÓ9ˆÜ˜˜Q  B Q ˜Z�=¨s¸Õ?Ü˜�˜q°×7r   c                ó¾   € V'       g   TMTp\         P                  ! WsWFR 7      w  r‰p
W‰,          V
P                  P                  4       ,          p\	        WVRR7       R# ©r0   r3   r4   N©r8   r&   ÚTÚconjr
   )r:   r    r"   r   r1   r;   r   r<   ÚUr*   ÚVr@   s   &&&&&&&     r   Útest_svd_fixed_precisionÚ7TestInterpolativeDecomposition.test_svd_fixed_precisiono   sC   € ÷ !‘ aˆä—.’. °4ÔA‰ˆˆaØ�E�A—C‘C—H‘H“JÕˆÜ˜ 3¨U×3r   c                óÂ   € TpV'       g   TMTp	\         P                  ! W˜WWR 7      w  r«pW«,          VP                  P                  4       ,          p\	        WVRR7       R# rM   rN   )r:   r    r"   r   r+   r1   r;   r   r=   r<   rQ   r*   rR   r@   s   &&&&&&&&      r   Útest_svd_fixed_rankÚ2TestInterpolativeDecomposition.test_svd_fixed_ranky   sH   € ð ˆß ‘ aˆä—.’. °Ô?‰ˆˆaØ�E�A—C‘C—H‘H“JÕˆÜ˜ 3¨U×3r   c                óô   € Tp\         P                  ! WR R7      w  rV\         P                  ! VRVRV 3,          WV4      w  rxp	Wx,          V	P                  P	                  4       ,          p
\        WVRR7       R# )F©r1   r2   Nr3   r4   )r8   r   Ú	id_to_svdrO   rP   r
   )r:   r    r   r+   r=   r>   r?   rQ   r*   rR   r@   s   &&&&       r   Útest_id_to_svdÚ-TestInterpolativeDecomposition.test_id_to_svd„   sa   € Øˆä×,Ò,¨Q¸Ô>‰	ˆÜ×&Ò& q¨¨C°°¨G¨¥}°cÓ@‰ˆˆaØ�E�A—C‘C—H‘H“JÕˆÜ˜ 3¨U×3r   c                ót   € \        V4      p\        P                  ! WR 7      p\        WC^ ,          RRR7       R# )r   ç�íµ ÷Æ°>r3   r4   N)r   r8   Úestimate_spectral_normr
   )r:   r    r   ÚsÚ
norm_2_ests   &&&  r   Útest_estimate_spectral_normÚ:TestInterpolativeDecomposition.test_estimate_spectral_normŒ   s+   € Ü�A‹JˆÜ×6Ò6°qÔBˆ
Ü˜
 a¥D¨t¸$×?r   c                óÌ   € VP                  4       pVR;;,          R,          uu&   \        W,
          4      p\        P                  ! WVR7      p\	        WT^ ,          RRR7       R# )r2   g333333ó?r   r^   r3   r4   N)r2   r   )Úcopyr   r8   Úestimate_spectral_norm_diffr
   )r:   r    r   r@   r`   ra   s   &&&   r   Ú test_estimate_spectral_norm_diffÚ?TestInterpolativeDecomposition.test_estimate_spectral_norm_diff‘   sG   € Ø�F‰F‹HˆØ	ˆ$��3�‹Ü�A•E‹NˆÜ×;Ò;¸AÀcÔJˆ
Ü˜
 a¥D¨t¸$×?r   c                óH  € \         P                  ! . RO. RO. RO.VP                  R7      pW3 Fo  pRp\         P                  P	                  V\        V^4      V,          4      p\        P                  ! WEVR7      p\        Wv8¬  4       \        Wv^
,           8*  4       Kq  	  R# ©é   )Údtypeg•Ö&è.>r   N)rk   rk   r   )r   r   rk   )	r   Úarrayrl   r%   Úmatrix_rankr   r8   Úestimate_rankr	   )r:   r    r   r@   ÚMÚrank_tolÚrank_npÚrank_ests   &&&     r   Útest_rank_estimates_arrayÚ8TestInterpolativeDecomposition.test_rank_estimates_array˜   s{   € Ü�HŠH’i¢ªIÐ6¸a¿g¹gÔFˆà“ˆAØˆHÜ—i‘i×+Ñ+¨A¬t°A°q«z¸HÕ/DÓEˆGÜ!×/Ò/°ÀÔEˆHÜ�HÑ'Ô(Ü�H¨"¥Ñ,Ö-ó r   c                ól  € \         P                  ! . RO. RO. RO.VP                  R7      pW3 F�  p\        V4      pRp\         P                  P                  V\        V^4      V,          4      p\        P                  ! WVVR7      p\        W‡^,
          8¬  4       \        W‡^,           8*  4       Kƒ  	  R# rj   )
r   rm   rl   r   r%   rn   r   r8   ro   r	   )	r:   r    r   r@   rp   ÚMLrq   rr   rs   s	   &&&      r   Útest_rank_estimates_lin_opÚ9TestInterpolativeDecomposition.test_rank_estimates_lin_op¢   s‰   € Ü�HŠH’i¢ªIÐ6¸a¿g¹gÔFˆà“ˆAÜ! !Ó$ˆBØˆHÜ—i‘i×+Ñ+¨A¬t°A°q«z¸HÕ/DÓEˆGÜ!×/Ò/°À#ÔFˆHÜ�H¨!¥Ñ+Ô,Ü�H¨!¥Ñ+Ö,ó r   c                óð   € \        ^4      P                  \        P                  4      p\	        \
        4      ;_uu_ 4        \        P                  ! VRRR7       RRR4       R#   + '       g   i     R# ; i)é   r^   FrY   N)r   r   r   Úfloat32Úassert_raisesÚ
ValueErrorr8   r   )r:   r    s   & r   Útest_badcallÚ+TestInterpolativeDecomposition.test_badcall­   sF   € Ü�A‹J×ÑœbŸj™jÓ)ˆÜœ:×&Õ&Ü×$Ò$ Q¨°5Õ9÷ '×&×&Ò&ús   Á A$Á$A5	c                óÈ   € \         P                  ! R4      p\        \        4      ;_uu_ 4        \        P
                  ! V^4       RRR4       R#   + '       g   i     R# ; i)é   N)r‚   é   )r   Úonesr}   r~   r8   r&   )r:   Úas   & r   Útest_rank_too_largeÚ2TestInterpolativeDecomposition.test_rank_too_large²   s7   € ä�GŠG�F‹OˆÜœ:×&Õ&Ü�NŠN˜1˜aÔ ÷ '×&×&Ò&ús   ®AÁA!	c                ó   € R p\         P                  P                  R4      pVP                  R4      p\        P                  ! W14      w  rEp\        WCP                  ^,          4       \        P                  ! WV4      p\        P                  ! W4V4      p\        W8V,          4       \        P                  ! W44      w  rV\        P                  ! WV4      p\        P                  ! W4V4      p\        W8V,          4       R# )r   iÒ  N)é   é   )
r   r   r   r8   r   r   r)   rG   rH   r
   )	r:   r   r   r    r=   r>   r?   rI   r@   s	   &        r   Útest_full_rankÚ-TestInterpolativeDecomposition.test_full_rank¸   s½   € ØˆÜ�i‰i×#Ñ# DÓ)ˆà�J‰J�wÓˆÜ!×/Ò/°Ó7‰ˆ�Ü�QŸ™ �
Ô#ä×0Ò0°Ó;ˆÜ×.Ò.¨q°SÓ9ˆÜ˜˜q�5Ô!ô ×,Ò,¨QÓ2‰	ˆä×0Ò0°Ó;ˆÜ×.Ò.¨q°SÓ9ˆÜ˜˜q�5Ö!r   rl   r1   r   gš™™™™™¹?c                óº   € \         P                  ! . RO. RO. RO. RO. R	O.VRR7      pVP                  4       p\        VP                  W2R7       \        WE4       R# )
rk   ÚC)rl   ÚorderrY   N)éÿÿÿÿr�   r�   r   r   r   )r   r   r   rk   rk   rk   )rk   r   r   rk   r   r   )r   rk   r   r   rk   r   )r   r   rk   r   r   rk   )r   rm   re   r   rO   r   )r:   rl   r1   r   r    r@   s   &&&&  r   Útest_bug_9793Ú,TestInterpolativeDecomposition.test_bug_9793Ë   sP   € ô �HŠHÒ+Ú(Ú(Ú(Ú(ð	*ð
 !¨ô-ˆð �F‰F‹HˆÜ�a—c‘c˜3Õ*Ü˜1Ö r   c                ó0  € \         P                  P                  R 4      pVP                  ^^.R7      p\	        V4      p\
        P                  ! V^4      w  rEp\        VP                  R4       \        VP                  R4       \        VP                  R4       VP                  ^^	.R7      p\	        V4      p\
        P                  ! V^4      w  rEp\        VP                  R4       \        VP                  R4       \        VP                  R4       R# )	l   Ca£N¿J1 )ÚsizeN)é   rƒ   )rƒ   )r{   rƒ   )r‚   é   )r–   )é	   r–   )	r   r   r   Úuniformr   r8   r&   r   r)   )r:   r   ÚxÚxlÚur`   Úvs   &      r   Ú%test_svd_aslinearoperator_shape_checkÚDTestInterpolativeDecomposition.test_svd_aslinearoperator_shape_checkÙ   sÏ   € ä�i‰i×#Ñ#Ð$4Ó5ˆØ�K‰K˜a ˜VˆKÓ$ˆÜ˜aÓ ˆÜ—.’.  QÓ'‰ˆˆaÜ�Q—W‘W˜fÔ%Ü�Q—W‘W˜dÔ#Ü�Q—W‘W˜fÔ%à�K‰K˜a ˜VˆKÓ$ˆÜ˜aÓ ˆÜ—.’.  QÓ'‰ˆˆaÜ�Q—W‘W˜fÔ%Ü�Q—W‘W˜dÔ#Ü�Q—W‘W˜fÖ%r   r   N©FF)rŸ   )TF)TT)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__ÚpytestÚmarkÚparametrizerA   rD   rJ   rS   rV   r[   rb   rg   rt   rx   r   r†   r‹   r   Úfloat64Ú
complex128r‘   r�   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r   r-   r-   K   sp  ø‡ € à‡[�[×ÑØÚ5ó7ñ4ó7ð4ð ‡[�[×ÑØÚ5ó7ñ4ó7ð4ð ‡[�[×Ñ˜]¨^Ð,<Ó=ñ	8ó >ð	8ð ‡[�[×ÑØÚ5ó7ñ4ó7ð4ð ‡[�[×ÑØÚ5ó7ñ4ó7ð4ò4ò@ò
@ò.ò	-ò:ò
!ò"ð& ‡[�[×Ñ˜W r§z¡z°2·=±=Ð&AÓBØ‡[�[×Ñ˜V d¨E ]Ó3Ø‡[�[×Ñ˜U Q¨ HÓ-ñ	!ó .ó 4ó Cð	!÷&ð &r   r-   )Úscipy.linalg.interpolativer%   Úinterpolativer8   Únumpyr   Úscipy.linalgr   r   r   Úscipy.sparse.linalgr   r   Únumpy.testingr	   r
   r   r   r¤   r   r}   Úfixturer   r   r§   r¨   r    r"   r+   r-   r   r   r   Ú<module>r³      sÎ   ð÷: 0Ð /Û ß /Ñ /Ý 0Ý 4÷/ó /ã Ý *ð ‡‚Óñó ðð ‡‚Óñó ðð
 ‡‚˜Ÿ
™
 B§M¡MÐ2Ô3ñ+ó 4ð+ð ‡‚Óñó ðð ‡‚Óñó ð÷]&ó ]&r   