  Let ${\bf M}=(M_1,\ldots, M_k)$ be a tuple of real $d\times d$ matrices.
Under certain irreducibility assumptions, we give checkable criteria for
deciding whether ${\bf M}$ possesses the following property: there exist two
constants $\lambda\in {\Bbb R}$ and $C>0$ such that for any $n\in {\Bbb N}$ and
any $i_1, \ldots, i_n \in \{1,\ldots, k\}$, either $M_{i_1} \cdots M_{i_n}={\bf
0}$ or $C^{-1} e^{\lambda n} \leq \| M_{i_1} \cdots M_{i_n} \| \leq C
e^{\lambda n}$, where $\|\cdot\|$ is a matrix norm. The proof is based on
symbolic dynamics and the thermodynamic formalism for matrix products. As
applications, we are able to check the absolute continuity of a class of
overlapping self-similar measures on ${\Bbb R}$, the absolute continuity of
certain self-affine measures in ${\Bbb R}^d$ and the dimensional regularity of
a class of sofic affine-invariant sets in the plane.
