ITP 2015: Interactive Theorem Proving pp 17-33 | Cite as
Formalization of Error-Correcting Codes: From Hamming to Modern Coding Theory
Abstract
By adding redundancy to transmitted data, error-correcting codes (ECCs) make it possible to communicate reliably over noisy channels. Minimizing redundancy and (de)coding time has driven much research, culminating with Low-Density Parity-Check (LDPC) codes. At first sight, ECCs may be considered as a trustful piece of computer systems because classical results are well-understood. But ECCs are also performance-critical so that new hardware calls for new implementations whose testing is always an issue. Moreover, research about ECCs is still flourishing with papers of ever-growing complexity. In order to provide means for implementers to perform verification and for researchers to firmly assess recent advances, we have been developing a formalization of ECCs using the SSReflect extension of the Coq proof-assistant. We report on the formalization of linear ECCs, duly illustrated with a theory about the celebrated Hamming codes and the verification of the sum-product algorithm for decoding LDPC codes.
Keywords
Function Node LDPC Code Computer Algebra System Variable Node Tanner GraphNotes
Acknowledgments
T. Asai, T. Saikawa, K. Sakaguchi, and Y. Takahashi contributed to the formalization. The formalization of modern coding theory is a collaboration with M. Hagiwara, K. Kasai, S. Kuzuoka, and R. Obi. The authors are grateful to the anonymous reviewers for their comments. This work is partially supported by a JSPS Grant-in-Aid for Scientific Research (Project Number: 25289118).
References
- 1.Affeldt, R., Nowak, D., Yamada, K.: Certifying assembly with formal security proofs: the case of BBS. Sci. Comput. Program. 77(10–11), 1058–1074 (2012)CrossRefMATHGoogle Scholar
- 2.Affeldt, R., Hagiwara, M., Sénizergues, J.: Formalization of Shannon’s theorems. J. Autom. Reason. 53(1), 63–103 (2014)CrossRefGoogle Scholar
- 3.Affeldt, R., Garrigue, J.: Formalization of error-correcting codes: from Hamming to modern coding theory. Coq scripts. https://staff.aist.go.jp/reynald.affeldt/ecc
- 4.Ballarin, C., Paulson, L.C.: A pragmatic approach to extending provers by computer algebra–with applications to coding theory. Fundamenta Informaticae 34(1–2), 1–20 (1999)MathSciNetGoogle Scholar
- 5.Betten, A., Braun, M., Fripertinger, H., Kerber, A., Kohnert, A., Wassermann, A.: Error-Correcting Linear Codes-Classification by Isometry and Applications. Springer, Heidelberg (2006)MATHGoogle Scholar
- 6.Dénès, M., Mörtberg, A., Siles, V.: A refinement-based approach to computational algebra in Coq. In: Beringer, L., Felty, A. (eds.) ITP 2012. LNCS, vol. 7406, pp. 83–98. Springer, Heidelberg (2012) CrossRefGoogle Scholar
- 7.Etzion, T., Trachtenberg, A., Vardy, A.: Which codes have cycle-free Tanner graphs? IEEE Trans. Inf. Theory 45(6), 2173–2181 (1999)MathSciNetCrossRefMATHGoogle Scholar
- 8.Gonthier, G., Mahboubi, A., Tassi, E.: A small scale reflection extension for the Coq system. Technical report RR-6455, INRIA (2008). Version 14, March 2014Google Scholar
- 9.Hagiwara, M.: Coding theory: mathematics for digital communication. Nippon Hyoron Sha (2012) (in Japanese)Google Scholar
- 10.Kschischang, F.R., Frey, B.J., Loeliger, H.-A.: Factor graphs and the sum-product algorithm. IEEE Trans. Inf. Theory 47(2), 498–519 (2001)MathSciNetCrossRefMATHGoogle Scholar
- 11.MacWilliams, F.J., Sloane, N.J.A.: The Theory of Error-Correcting Codes. North-Holland, Amsterdam (1977). 7th impression (1992) MATHGoogle Scholar
- 12.Richardson, T., Urbanke, R.: Modern Coding Theory. Cambridge University Press, Cambridge (2008) CrossRefMATHGoogle Scholar