Linear independence oracles and applications to rectangular and low rank linear systems
Arne Storjohann, Shiyun Yang · 2014
Randomized algorithms are given for linear algebra problems on an input matrix A ∈ Knxm over a field K. We give an algorithm that simultaneously computes the row and column rank profiles of A in 2r3 + (r2 + n + m + |A|)1+o(1) field operations from K, where r is the rank of A and |A| denotes the number of nonzero entries of A. Here, the +o(1) in cost estimates captures some missing log n and log m factors. The rank profiles algorithm is randomized of the Monte Carlo type: the correct answer will be returned with probability at least 1/2. Given a b ∈ Knx1, we give an algorithm that either computes a particular solution vector x ∈ Kmx1 to the system Ax = b, or produces an inconsistency certificate vector u ∈ K1xn such that uA = 0 and ub ≠ 0. The linear solver examines at most r + 1 rows and r columns of A and has running time 2r3 + (r2 + n + m + |R| + |C|)1+o(1) field operations from K, where |R| and |C| are the number of nonzero entries in the rows and columns, respectively, that are examined. The solver is randomized of the Las Vegas type: an incorrect result is never returned but the algorithm may report FAIL with probability at most 1/2. These cost estimates are achieved by making use of a novel randomized online data structure for the detection of linearly independent rows and columns.