Matrix products: positivity of powers and nonvanishing of factors #
Over a strictly ordered semiring, once some power A ^ k with k > 0 of an entrywise nonnegative
square matrix A is strictly positive, every later power is strictly positive too: each row of A
has a positive entry, so multiplying a strictly positive matrix by A on the left keeps it
strictly positive. This is the form in which positivity propagates along the powers of a primitive
matrix.
If a product of matrices is nonzero, then the inner index type is nonempty and neither factor is zero.
Main results #
Matrix.pow_apply_pos_of_le: ifAis entrywise nonnegative andA ^ kis strictly positive for somek > 0, then so isA ^ mfor everym ≥ k.Matrix.nonempty_of_mul_ne_zero,Matrix.left_ne_zero_of_mul_ne_zero,Matrix.right_ne_zero_of_mul_ne_zero: if a matrix product is nonzero, then the inner index type is nonempty and neither factor is zero.
theorem
Matrix.pow_apply_pos_of_le
{n : Type u_1}
[Fintype n]
[DecidableEq n]
{R : Type u_2}
[Semiring R]
[PartialOrder R]
[IsStrictOrderedRing R]
{A : Matrix n n R}
(hA : ∀ (i j : n), 0 ≤ A i j)
{k : ℕ}
(hk : 0 < k)
(hAk : ∀ (i j : n), 0 < (A ^ k) i j)
{m : ℕ}
(hkm : k ≤ m)
(i j : n)
:
If A is entrywise nonnegative and its power A ^ k, for some k > 0, is strictly positive,
then every power A ^ m with m ≥ k is strictly positive.