from typing import Any

from sympy.matrices.dense import MutableDenseMatrix

def smith_normal_form(m, domain=...) -> MutableDenseMatrix: ...
def invariant_factors(m, domain=...) -> tuple[Any, ...]: ...
def hermite_normal_form(A, *, D=..., check_rank=...) -> MutableDenseMatrix: ...
