Abstract
This paper considers elimination algorithms for sparse matrices over finite fields. We mostly focus on computing the rank, because it raises the same challenges as solving linear systems, while being slightly simpler.
We developed a new sparse elimination algorithm inspired by the Gilbert-Peierls sparse LU factorization, which is well-known in the numerical computation community. We benchmarked it against the usual right-looking sparse gaussian elimination and the Wiedemann algorithm using the Sparse Integer Matrix Collection of Jean-Guillaume Dumas.
We obtain large speedups (1000\(\times \) and more) on many cases. In particular, we are able to compute the rank of several large sparse matrices in seconds or minutes, compared to days with previous methods.
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Amestoy, P.R., Duff, I.S., Koster, J., L’Excellent, J.-Y.: A fully asynchronous multifrontal solver using distributed dynamic scheduling. SIAM J. Matrix Anal. Appl. 23(1), 15–41 (2001)
Bosma, W., Cannon, J., Playoust, C.: The Magma algebra system. I. The user language. J. Symbolic Comput. 24(3–4), 235–265 (1997). http://dx.doi.org/10.1006/jsco.1996.0125. computational algebra and number theory, London (1993)
Boyer, B., Eder, C., Faugère, J., Lachartre, S., Martani, F.: GBLA - gröbner basis linear algebra package. CoRR abs/1602.06097 (2016). http://arxiv.org/abs/1602.06097
Cavallar, S.: Strategies in filtering in the number field sieve. In: Bosma, W. (ed.) ANTS 2000. LNCS, vol. 1838, pp. 209–232. Springer, Heidelberg (2000). http://dx.doi.org/10.1007/10722028_11
Chen, Y., Davis, T.A., Hager, W.W., Rajamanickam, S.: Algorithm 887: CHOLMOD, supernodal sparse cholesky factorization and update/downdate. ACM Trans. Math. Softw. 35(3), 22:1–22:14 (2008). http://doi.acm.org/10.1145/1391989.1391995
Cleveland Ashcraft, C., Grimes, R.G., Lewis, J.G., Peyton, P.W., Simon, H.D., Bjørstad, P.E.: Progress in sparse matrix methods for large linear systems on vector supercomputers. Int. J. High Perform. Comput. Appl. 1(4), 10–30 (1987). http://dx.doi.org/10.1177/109434208700100403
Coppersmith, D.: Solving homogeneous linear equations over \(\mathbb{F}_2\) via block wiedemann algorithm. Math. Comput. 62(205), 333–350 (1994)
Davis, T.A.: Algorithm 832: UMFPACK V4.3—an unsymmetric-pattern multifrontal method. ACM Trans. Math. Softw. 30(2), 196–199 (2004). http://dx.doi.org/10.1145/992200.992206
Davis, T.A.: Direct Methods for Sparse Linear Systems (Fundamentals of Algorithms 2). Society for Industrial and Applied Mathematics, Philadelphia (2006)
Davis, T.A., Natarajan, E.P.: Algorithm 907: KLU, A direct sparse solver for circuit simulation problems. ACM Trans. Math. Softw. 37(3) (2010). http://doi.acm.org/10.1145/1824801.1824814
Demmel, J.W., Eisenstat, S.C., Gilbert, J.R., Li, X.S., Liu, J.W.H.: A supernodal approach to sparse partial pivoting. SIAM J. Matrix Anal. Appl. 20(3), 720–755 (1999)
Duff, I.S., Erisman, A.M., Reid, J.K.: Direct Methods for Sparse Matrices. Numerical Mathematics and Scientific Computation, Oxford University Press, USA, first paperback edition edn. (1989)
Duff, I.S., Reid, J.K.: Some design features of a sparse matrix code. ACM Trans. Math. Softw. 5(1), 18–35 (1979). http://doi.acm.org/10.1145/355815.355817
Duff, I.S., Reid, J.K.: The multifrontal solution of indefinite sparse symmetric linear. ACM Trans. Math. Softw. 9(3), 302–325 (1983). http://doi.acm.org/10.1145/356044.356047
Dumas, J.G., Villard, G.: Computing the rank of sparse matrices over finite fields. In: Ganzha, V.G., Mayr, E.W., Vorozhtsov, E.V. (eds.) CASC 2002, Proceedings of the fifth International Workshop on Computer Algebra in Scientific Computing, Yalta, Ukraine, pp. 47–62. Technische Universität München, Germany, September 2002. http://ljk.imag.fr/membres/Jean-Guillaume.Dumas/Publications/sparseeliminationCASC2002.pdf
Dumas, J.-G.: Sparse integer matrices collection. http://hpac.imag.fr
Dumas, J.-G., Elbaz-Vincent, P., Giorgi, P., Urbanska, A.: Parallel computation of the rank of large sparse matrices from algebraic \(k\)-theory. In: Maza, M.M., Watt, S.M. (eds.) Parallel Symbolic Computation, PASCO 2007, International Workshop, 27–28 July 2007, University of Western Ontario, London, Ontario, Canada, pp. 43–52. ACM, New York (2007). http://doi.acm.org/10.1145/1278177.1278186
Faugére, J.-C., Lachartre, S.: Parallel gaussian elimination forgröbner bases computations in finite fields. In: Maza, M.M., Roch, J.-L. (eds.) PASCO, pp. 89–97. ACM, New York (2010)
Gilbert, J.R., Peierls, T.: Sparse partial pivoting in time proportional to arithmetic operations. SIAM J. Sci. Stat. Comput. 9(5), 862–874 (1988). http://dx.doi.org/10.1137/0909058
Kleinjung, T., Aoki, K., Franke, J., Lenstra, A.K., Thomé, E., Bos, J.W., Gaudry, P., Kruppa, A., Montgomery, P.L., Osvik, D.A., te Riele, H., Timofeev, A., Zimmermann, P.: Factorization of a 768-Bit RSA modulus. In: Rabin, T. (ed.) CRYPTO 2010. LNCS, vol. 6223, pp. 333–350. Springer, Heidelberg (2010). http://dx.doi.org/10.1007/978-3-642-14623-7_18
LaMacchia, B.A., Odlyzko, A.M.: Solving large sparse linear systems over finite fields. In: Menezes, A., Vanstone, S.A. (eds.) CRYPTO 1990. LNCS, vol. 537, pp. 109–133. Springer, Heidelberg (1991). http://dx.doi.org/10.1007/3-540-38424-3_8
Markowitz, H.M.: The elimination form of the inverse and its application to linear programming. Manage. Sci. 3(3), 255–269 (1957). http://dx.doi.org/10.1287/mnsc.3.3.255
May, J.P., Saunders, B.D., Wan, Z.: Efficient matrix rank computation with application to the study of strongly regular graphs. In: Wang, D. (ed.) Symbolic and Algebraic Computation, International Symposium, ISSAC 2007, Waterloo, Ontario, Canada, July 28–August 1, 2007, Proceedings, pp. 277–284. ACM (2007). http://doi.acm.org/10.1145/1277548.1277586
Saunders, B.D., Youse, B.S.: Large matrix, small rank. In: Proceedings of the 2009 International Symposium on Symbolic and Algebraic Computation, ISSAC 2009, pp. 317–324. ACM, New York (2009). http://doi.acm.org/10.1145/1576702.1576746
Saunders, D.: Matrices with two nonzero entries per row. In: Proceedings of the 2015 ACM on International Symposium on Symbolic and Algebraic Computation, ISSAC 2015, pp. 323–330. ACM, New York (2015). http://doi.acm.org/10.1145/2755996.2756679
The CADO-NFS Development Team: CADO-NFS, an implementation of the number field sieve algorithm (2015), release2.2.0. http://cado-nfs.gforge.inria.fr/
The FFLAS-FFPACK group: FFLAS-FFPACK: Finite Field Linear Algebra Subroutines/Package, v2.0.0 edn. (2014). http://linalg.org/projects/fflas-ffpack
The Sage Developers: Sage Mathematics Software (Version 5.7) (2013). http://www.sagemath.org
Wiedemann, D.H.: Solving sparse linear equations over finite fields. IEEE Trans. Inf. Theory 32(1), 54–62 (1986). http://dx.doi.org/10.1109/TIT.1986.1057137
Acknowledgement
Claire Delaplace was supported by the french ANR under the BRUTUS project. We thank the anonymous reviewers for their comments.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing AG
About this paper
Cite this paper
Bouillaguet, C., Delaplace, C. (2016). Sparse Gaussian Elimination Modulo p: An Update. In: Gerdt, V., Koepf, W., Seiler, W., Vorozhtsov, E. (eds) Computer Algebra in Scientific Computing. CASC 2016. Lecture Notes in Computer Science(), vol 9890. Springer, Cham. https://doi.org/10.1007/978-3-319-45641-6_8
Download citation
DOI: https://doi.org/10.1007/978-3-319-45641-6_8
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-45640-9
Online ISBN: 978-3-319-45641-6
eBook Packages: Computer ScienceComputer Science (R0)