Determine if there exists an eigenvector lying in a polytope

902 Views Asked by At

Given integer matrices $A \in \mathbb{R}^{n \times n}$ and $B \in \mathbb{R}^{n \times m}$, define the unbounded polytope

$$ P := \left\{ x \in \mathbb{R}^n \mid B x \geq 0 \right\} $$

As there is no explicit formula for the roots of high-degree polynomials, we cannot explicitly compute the eigenvalues or eigenvectors of $A$. However, is there an algorithm to determine if there is an eigenvector of $A$ lying inside of $P$?

1

There are 1 best solutions below

3
On

This is probably not what you need, but an obvious way to solve the problem is to find all eigenvectors of $A$, and then test if there is an eigenvector $v$ such that $Bv\ge0$ or $Bv\le0$. If the eigenspace spanned by $v$ does not pass through the polytope, some two entries of $Bv$ must have different signs.