Discover the history of email:
Discover the history of email:
In a city such as New York alone, there are more than 10 billion distinct products or services being traded.
How such a complex system can work? The story of the Universe in 17 minutes, to understand how complex systems appear, from Big Bang to global social networks.
Research carried out, between 1997 and 2001, at Project CODES (now SECRET) at l’INRIA, under the supervision of Pascale Charpin, Research Director at INRIA, Project CODES Director, and of Daniel Augot, Researcher at INRIA.
For a general public introduction to coding theory, you may read my article L’algèbre qui corrige les erreurs (in French). A description of my work for scientists who are not specialists of coding theory is available here
Abstract: Algebraic-geometric codes were introduced by Goppa in 1981 and are built using algebraic curves over finite fields. In 1982, Tsfasman, Vladuts and Zink showed that one could build a family of such codes that beats the Gilbert-Varshamov bound. In 1996, Sudan proposed a list decoding algorithm for Reed-Solomon codes. This algorithm was adapted in 1997 to one-point strongly algebraic-geometric codes by Shokrollahi and Wasserman, then improved by Guruswami and Sudan.
In this thesis, we extend these methods to all algebraic-geometric codes and their subfield subcodes, and to a generalized Hamming distance that allows to reformulate algebraically the soft decision decoding problem and to propose a maximum likelihood list decoding algorithm over any discrete memoryless channel. We illustrate these new results with an implementation in the computer algebra system Magma.
NB: there are still a few errors I never had the courage to correct.
2000 Mathematics Subject Classification: 11T71 Algebraic coding theory; cryptography; 94B35 Decoding; 94B27 Geometric methods (including applications of algebraic geometry) [See also 11T71, 14G50]; 11Yxx Computational number theory [See also 11-04]; 14Qxx Computational aspects in algebraic geometry [See also 12Y05, 13Pxx, 68W30]; 68W30 Symbolic computation and algebraic computation [See also 11Yxx, 12Y05, 13Pxx, 14Qxx, 16Z05, 17-08, 33F10].
Keywords: List decoding; maximum-likelihood soft-decision decoding; algebraic-geometric codes; Reed-Solomon codes; subfield subcodes; Guruswami-Sudan’s algorithm; effective algebraic geometry; algorithmic number theory; roots of polynomials on function fields of curves over a finite field; computer algebra; Magma implementation.
Defense: This thesis as awarded summa cum laude after a defense that took place on Tuesday Decembrer 18th, 2001 at 14:00, Jussieu Campus, 4, place Jussieu, 75005 Paris, France. The jury was consisting of:
Coding Theory’s main goal is to improve mathematically the reliability of telecommunications. Its foundations were built in the middle of the 20th century with the work of Claude Shannon, Richard Hamming, and others.
The introduction of algebraic-geometric tools by Goppa allowed him to build in 1981 some codes, naturally called “algebraic-geometric”, from curves over finite fields. These codes beneficiate from the powerful Riemann-Roch Theory that allows, in particular, to estimate the fundamental parameters of such codes that are their minimum distance and their dimension.
In 1982, Michael Tsfasman, Serge Vladuts and Thomas Zink could exhibit a family of explicit algebraic-geometric codes that were better than all known codes at that time and whose performance was beating the Gilbert-Varshamov bound that was (wrongly) conjectured to be optimal.
In 1996, Madhu Sudan proposed a method for the list decoding of Reed-Solomon codes, that was adapted in 1997 by Amin Shokrollahi and Hal Wasserman to one-point strongly algebraic-geometric codes, and improved again by Venkatesan Guruswami and Sudan.
Contributions of this thesis
In this elementary and introductory talk at INRIA‘s Junior Colloquium, we present the usual problems that occur in the theory of error-correcting codes and of cryptography. We show how the use of effective algebraic geometry over finite fields can help to solve some of the questions that arise in these disciplines.
I this talk given at the 3rd European Congress of Mathematics (3ECM, Barcelona, Spain, July 2000), we illustrate how the computer algebra system MAGMA can be used for the implementation of sophisticated algorithms requiring many primitives in various branches of effective mathematics like finite fields, algebraic geometry or error-correcting codes. We give the example of the construction of Goppa’s algebraic-geometric codes in this system.
This is a joint work with Pawel WOCJAN.
This article describes an algorithmic improvement on Sudan’s algorithm for Reed-Solomon codes and its generalization to algebraic-geometric codes by Shokrollahi and Wasserman. Instead of completely factoring the interpolation polynomial over the function field of the curve, we compute fast sufficiently many coefficients of the p-adic expansion of the functions corresponding to codewords we are looking for, using Newton’s method.
This is a joint work with Daniel Augot, published in IEEE Transactions on Information Theory, vol. 46, n°7, pp. 2605-2614, 2000. A preliminary version was available in the INRIA Research Report, n° 3532, November 1998.
Can be compiled in the 7 following langages: ANSI COBOL, ISO Pascal, ANSI Fortran, ANSI C, PostScript, Bourne shell script, and is a binary for 8086 machine language. A few examples:
% cp polyglot polyglot.c % gcc polyglot.c polyglot.c: 1: warning: data definition has no type or storage class % ./a.out hello polyglots % cp polyglot polyglot.sh % chmod 755 polyglot.sh % ./polyglot.sh hello polyglots ...
A C palindrome program.
To see the behaviour of this wonderful program that combines the art of ASCII images and of C programming, type the following lines in a shell:
% gcc dhyang.c % ./a.out > 1.c % cat 1.c % gcc 1.c % ./a.out > 2.c % cat 2.c % gcc 2.c % ./a.out > 3.c % cat 3.c % gcc 3.c % ./a.out > 4.c % diff 4.c 1.c
A Zip file which contains an example of Metafont file (
lpeuro.mf), a file
lpeuro.sty to display the euro symbol in LaTeX documents and
lpeuro.pdf (compiled from
lpeuro.tex, both included in the .zip archive) which describes how to use the package.