Formalization of Error-Correcting Codes: From Hamming to Modern Coding Theory

  • Reynald Affeldt
  • Jacques Garrigue
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9236)


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.


Function Node LDPC Code Computer Algebra System Variable Node Tanner Graph 
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.



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).


  1. 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)CrossRefzbMATHGoogle Scholar
  2. 2.
    Affeldt, R., Hagiwara, M., Sénizergues, J.: Formalization of Shannon’s theorems. J. Autom. Reason. 53(1), 63–103 (2014)CrossRefGoogle Scholar
  3. 3.
    Affeldt, R., Garrigue, J.: Formalization of error-correcting codes: from Hamming to modern coding theory. Coq scripts.
  4. 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. 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)zbMATHGoogle Scholar
  6. 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. 7.
    Etzion, T., Trachtenberg, A., Vardy, A.: Which codes have cycle-free Tanner graphs? IEEE Trans. Inf. Theory 45(6), 2173–2181 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 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. 9.
    Hagiwara, M.: Coding theory: mathematics for digital communication. Nippon Hyoron Sha (2012) (in Japanese)Google Scholar
  10. 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)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    MacWilliams, F.J., Sloane, N.J.A.: The Theory of Error-Correcting Codes. North-Holland, Amsterdam (1977). 7th impression (1992) zbMATHGoogle Scholar
  12. 12.
    Richardson, T., Urbanke, R.: Modern Coding Theory. Cambridge University Press, Cambridge (2008) CrossRefzbMATHGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.National Institute of Advanced Industrial Science and TechnologyTsukubaJapan
  2. 2.Nagoya UniversityNagoyaJapan

Personalised recommendations