edge_condition_numbers#
- t3toolbox.backend.ranks.edge_condition_numbers(tucker_singular_values, tt_singular_values)#
def edge_condition_numbers( tucker_singular_values: typ.Sequence[NDArray], # len=d, elm_shape=(n_i,), descending tt_singular_values: typ.Sequence[NDArray], # len=d+1, elm_shape=(r_i,), descending ) -> typ.Tuple[ typ.Tuple[float, ...], # len=d, Tucker edge condition numbers (kappa^Tucker) typ.Tuple[float, ...], # len=d+1, TT edge condition numbers (kappa^TT); length-1 boundary bonds = 1.0 ]:
Edge condition numbers
kappa_i = sigma_{i,1} / sigma_{i,r_i}of the matrix unfoldings.Section 5.4.1 of Alger et al. (2026), “Tucker Tensor Train Taylor Series” (arXiv:2603.21141): the ratio of the largest to the smallest retained singular value on each Tucker matricization and each TT unfolding, as returned by the implicit T3-SVD (
TuckerTensorTrain.t3svd()). The two length-1 boundary TT bonds give1.0. Degenerate-edge conventions keep the value defined on any iterate (including the zero tensor): an all-zero edge ->1.0; a rank-deficient edge ->+inf.- Parameters:
- Return type:
t3toolbox.backend.common.typ.Tuple[t3toolbox.backend.common.typ.Tuple[float, Ellipsis], t3toolbox.backend.common.typ.Tuple[float, Ellipsis]]