© 2016 Springer International Publishing In 1967, J. Edmonds introduced the problem of computing the rank over the rational function field of an (Formula presented.) matrix T with integral homogeneous linear polynomials. In this paper, we consider the non-commutative version of Edmonds’ problem: compute the rank of T over the free skew field. This problem has been proposed, sometimes in disguise, from several different perspectives in the study of, for example, the free skew field itself (Cohn in J Symbol Log 38(2):309–314, 1973), matrix spaces of low rank (Fortin-Reutenauer in Sémin Lothar Comb 52:B52f 2004), Edmonds’ original problem (Gurvits in J Comput Syst Sci 69(3):448–484, 2004), and more recently, non-commutative arithmetic circuits with divisions (Hrubeš and Wigderson in Theory Comput 11:357-393, 2015. doi:10.4086/toc.2015.v011a014). It is known that this problem relates to the following invariant ring, which we call the (Formula presented.)-algebra of matrix semi-invariants, denoted as R(n, m). For a field (Formula presented.), it is the ring of invariant polynomials for the action of (Formula presented.) on tuples of matrices—(Formula presented.) sends (Formula presented.) to (Formula presented.). Then those T with non-commutative rank < n correspond to those points in the nullcone of R(n, m). In particular, if the nullcone of R(n, m) is defined by elements of degree (Formula presented.), then there follows a (Formula presented.)-time randomized algorithm to decide whether the non-commutative rank of T is full. To our knowledge, previously the best bound for (Formula presented.) was (Formula presented.) over algebraically closed fields of characteristic 0 (Derksen in Proc Am Math Soc 129(4):955–964, 2001). We now state the main contributions of this paper:We observe that by using an algorithm of Gurvits, and assuming the above bound (Formula presented.) for R(n, m) over (Formula presented.), deciding whether or not T has non-commutative rank < n over (Formula presented.) can be done deterministically in time polynomial in the input size and (Formula presented.).When (Formula presented.) is large enough, we devise an algorithm for the non-commutative Edmonds problem which runs in time polynomial in (n + 1)!. Furthermore, due to the structure of this algorithm, we also have the following results.If the commutative rank and the non-commutative rank of T differ by a constant there exists a randomized efficient algorithm to compute the non-commutative rank of T. This improves upon a result of Fortin and Reutenauer, who gave a randomized efficient algorithm to decide whether the commutative and non-commutative ranks are equal.We show that (Formula presented.). This not only improves the bound obtained from Derksen’s work over algebraically closed field of characteristic 0 but, more importantly, also provides for the first time an explicit bound on (Formula presented.) for matrix semi-invariants over fields of positive characteristics. Furthermore, this does not require (Formula presented.) to be algebraically closed.