Block Lanczos algorithm

In computer science, the block Lanczos algorithm is an algorithm for finding the nullspace of a matrix over a finite field, using only multiplication of the matrix by long, thin matrices. Such matrices are considered as vectors of tuples of finite-field entries, and so tend to be called 'vectors' in descriptions of the algorithm.

The block Lanczos algorithm is amongst the most efficient methods known for finding nullspaces, which is the final stage in integer factorization algorithms such as the quadratic sieve and number field sieve, and its development has been entirely driven by this application.

It is based on, and bears a strong resemblance to, the Lanczos algorithm for finding eigenvalues of large sparse real matrices.[1]

  1. ^ Montgomery, P L (1995). "A Block Lanczos Algorithm for Finding Dependencies over GF(2)". Lecture Notes in Computer Science. EUROCRYPT '95. Vol. 921. Springer-Verlag. pp. 106–120. doi:10.1007/3-540-49264-X_9.