I'm no (computational) algebraist, and my searches have been pretty unyielding (probably due to the vast amounts written on the key words), but perhaps someone may know if this is possible, and if so, lead me to some solution.

Consider the subgroup $S$ of $GL(n,\mathbb{Z})$ which is generated by elements $s_1,...,s_k$. If $x\in S$, then $x$ has a representation as a word in the form $x=\Pi_{i}s_i$. Is it possible to find such a representation?

If this is possible, and computable, is there any efficient software out there? My current problem is a 10x10 matrix and I'm trying to fit this in to a subgroup generated by 9 10x10 matrices.