Matrix inverse algorithm that works for any unitary ring

698 Views Asked by At

Is there any algorithm to

  1. find out if a given square matrix has an inverse (which is both left and right inverse), and

  2. compute the inverse, if there is one

for any unitary ring, without assuming that it is commutative and without assuming that it has the zero-product property?

Making a system of linear equations and solving it by substitution works correctly even for a non-commutative ring, but it can get stuck if there are some non-invertible non-zero elements. Finding the inverse by dividing the adjoint by the determinant works even for rings where not all elements have an inverse, because there are division-free algorithms for adjoint and determinant and we only have to perform one inverse operation in the very end of the computation, but it works only for commutative rings.