![Page 1: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/1.jpg)
Codes correcteursCodes correcteurs
Michel Rigo (Université de Liège)http://www.discmath.ulg.ac.be/mam/
![Page 2: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/2.jpg)
Welcome to a digital world !Welcome to a digital world !
![Page 3: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/3.jpg)
0 et 1 suffisent pour tout coder...
237 = 2x100 + 3x10 +7
Comment écrire les nombres entiers en base 2
.
Unités, dizaines, centaines, ...
![Page 4: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/4.jpg)
0 et 1 suffisent pour tout coder...
237 = 2x100 + 3x10 +7
Comment écrire les nombres entiers en base 2
100101 = 1x25 + 1x22 + 1
Unités, dizaines, centaines, ...
Unités, “deuxaines”, “quatraines”, ...
8 4 2 1 1 = 1
1 0 = 2 1 1 = 3
1 0 0 = 41 0 1 = 51 1 0 = 61 1 1 = 7
1 0 0 0 = 81 0 0 1 = 91 0 1 0 =10
![Page 5: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/5.jpg)
Quelles données ?
textes (.doc, .rtf, SMS, html, RSS, ...)
images, photos (.jpg, .png, .bmp, MMS, ...)
sons, musique (CD, .wav, .mp3, ...)
vidéos (DVD, .mov, .mpg, divx, .mp4, ...)
séquence génétique (AGCTCCATGAGTC...)
CODAGEPermettre l'échange et le stockage d'informations
![Page 6: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/6.jpg)
Code ASCII American Standard Code for Information Interchange
![Page 7: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/7.jpg)
128 64 32 16 8 4 2 1 0 0 0 0 0 0 0 0 = 0
0 0 0 0 0 0 0 1 = 1...
0 1 0 0 0 0 1 0 = 66...
0 1 1 0 1 0 1 0 = 106...
1 1 1 1 1 1 1 1 = 255
Bonjour
66, 111, 110, 106, 111, 117, 114
01000010 01101111 01101110 01101010 01101111 01110101 01110010
Code ASCIISavoir compter
de 0 à 255en base 2...
![Page 8: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/8.jpg)
Coder des images avec des 0 et des 1...
![Page 9: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/9.jpg)
![Page 10: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/10.jpg)
![Page 11: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/11.jpg)
![Page 12: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/12.jpg)
![Page 13: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/13.jpg)
![Page 14: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/14.jpg)
![Page 15: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/15.jpg)
Images en noir et blanc
![Page 16: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/16.jpg)
Images en noir et blanc
1 0 0 0 10 1 1 0 00 0 0 1 11 1 1 0 11 0 0 0 1
![Page 17: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/17.jpg)
Images en 16 dégradés de gris
![Page 18: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/18.jpg)
Images en 16 dégradés de gris
0000 0001 0010 0011
0100 0101 0110 0111
1000 1001 1010 1011
1100 1101 1110 1111
![Page 19: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/19.jpg)
1011 0110 0100 1001 1110 1111 1111 1111 1111 11111111 1110 0111 0100 0101 1010 1111 1111 1111 11111111 1111 1110 1000 0101 0100 1001 1111 1111 11111111 1111 1111 1111 1010 0101 0100 1011 1111 11111111 1111 1111 1111 1011 0101 0011 1011 1111 1111...
![Page 20: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/20.jpg)
Et pour les imagesen couleur ...
![Page 21: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/21.jpg)
01101100 1100111011000000 1010101000010100 11001100 ...
00111100 0100011101010101 0010111111001110 10101100 ...
01111100 1000101011010110 1010111001110101 01011100 ...
![Page 22: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/22.jpg)
![Page 23: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/23.jpg)
Pour les sons...1) Son : onde produite par la vibration mécanique d'un support et propagée grâce à l'élasticité du milieu sous forme d'onde longitudinale. L'air est un milieu compressible, le son se propage sous forme de variations de pression.
2) Membrane du micro vibre > impulsions électriquesconvertir les variations de pressions en signaux électriques
3) Echantillonneur analogique/digital : 0010010000111....
![Page 24: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/24.jpg)
Pour les sons...
0010010000111....
3) Convertisseur digital/analogique (DAC)
2) Hautparleur
1) Son
![Page 25: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/25.jpg)
Pour les sons...
![Page 26: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/26.jpg)
Wikipédia : molécule, retrouvée dans toutes les cellules vivantes, qui renferme l'ensemble des informations nécessaires au développement et au fonctionnement d'un organisme. L'ADN est aussi le support de l'hérédité car il est transmis lors de la reproduction, de manière intégrale ou non. Il porte donc l'information génétique, il constitue le génome des êtres vivants.
AdenineThymineGuanineCytosine
![Page 27: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/27.jpg)
En résumé, on code “tout” avec des suites de 0 et de 1...
Dans un monde parfait, il n'y a pas d'erreur !
![Page 28: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/28.jpg)
En résumé, on code “tout” avec des suites de 0 et de 1...
Dans un monde parfait, il n'y a pas d'erreur !
Dans le monde réel :
interférences ligne haute tension, orage, champ magnétique, ...
grattes sur un CD, poussières, ... erreurs de lecture, d'écriture perte de puissance du signal sur longue distance mutation génétique
![Page 29: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/29.jpg)
Solution :des codes correcteurs
performants !
![Page 30: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/30.jpg)
Solution :des codes correcteurs
performants !
![Page 31: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/31.jpg)
![Page 32: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/32.jpg)
![Page 33: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/33.jpg)
![Page 34: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/34.jpg)
Essai 1 : Doubler chaque chiffre
0 1 0 0 1 0 1 1 1 0
00 11 00 00 11 00 11 11 11 00
![Page 35: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/35.jpg)
Essai 1 : Doubler chaque chiffre
0 1 0 0 1 0 1 1 1 0
00 11 00 00 11 00 11 11 11 00
Si une erreur se produit ?
00 11 00 00 11 10 11 11 11 00
![Page 36: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/36.jpg)
Essai 1 : Doubler chaque chiffre
0 1 0 0 1 0 1 1 1 0
00 11 00 00 11 00 11 11 11 00
Si une erreur se produit ?
00 11 00 00 11 10 11 11 11 00
On sait détecter mais PAS corriger !
0 ou 1 ?
![Page 37: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/37.jpg)
Essai 2 : Bit de parité
0 1 0 0 1 0 1 1 1 0
0 1 0 0 1 0 1 1 1 0 1
![Page 38: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/38.jpg)
Essai 2 : Bit de parité
0 1 0 0 1 0 1 1 1 0
0 1 0 0 1 0 1 1 1 0 1
Si une erreur se produit ?
0 1 0 0 1 1 1 1 1 0 1
![Page 39: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/39.jpg)
Essai 3 : Tripler chaque chiffre
0 1 0 0 1 0 1 1 1 0
000 111 000 000 111 000 111 111 111 000
![Page 40: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/40.jpg)
Essai 3 : Tripler chaque chiffre
0 1 0 0 1 0 1 1 1 0
000 111 000 000 111 000 111 111 111 000
Si une erreur se produit ?
000 111 100 000 111 000 111 111 111 000
![Page 41: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/41.jpg)
Essai 3 : Tripler chaque chiffre
0 1 0 0 1 0 1 1 1 0
000 111 000 000 111 000 111 111 111 000
Si une erreur se produit ?
000 111 100 000 111 000 111 111 111 000
On sait détecter ET corriger !0
![Page 42: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/42.jpg)
Essai 3 : Tripler chaque chiffre
0 1 0 0 1 0 1 1 1 0
000 111 000 000 111 000 111 111 111 000
Si PLUS d'une erreur se produit ?
000 111 100 000 111 001 111 111 111 000
![Page 43: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/43.jpg)
Essai 3 : Tripler chaque chiffre
0 1 0 0 1 0 1 1 1 0
000 111 000 000 111 000 111 111 111 000
Si PLUS d'une erreur se produit ?
000 111 100 000 111 001 111 111 111 000
000 111 000 000 111 000 111 100 111 000
0
![Page 44: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/44.jpg)
On peut corriger 1 erreur et même,
un nombre arbitraire d'erreurs si elles sont dans des triplets distincts
seul 1/3 des chiffres contient de l'information...
Moins de chansonssur son iPod ;(
![Page 45: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/45.jpg)
Canal de communication
![Page 46: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/46.jpg)
Canal de communication
0 000
000001010100011101110111
00001111
![Page 47: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/47.jpg)
000001010100011101110111
00001111
p3
p2qp2qp2qpq2
pq2
pq2
q3
Petit calcul de probabilités...
![Page 48: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/48.jpg)
000001010100011101110111
00001111
p3
p2qp2qp2qpq2
pq2
pq2
q3
Petit calcul de probabilités...
p2(p+3q)=p2(32p)
=0,972 si p=0,9
décoder correctement 1 chiffre en en transmettant 3 sur un canal bruité
![Page 49: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/49.jpg)
Image 4 dégradés
00 01 10 11
p=0,9
![Page 50: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/50.jpg)
p=0,9
Avec codage3 répétitions
![Page 51: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/51.jpg)
Claude E. Shannon (19162001)Théorie de l'information, théorèmes de Shannon (1948)
![Page 52: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/52.jpg)
Voyager (1977) Jupiter et Saturne
Mariner 2 (1962) Venus
Mariner 10 (197375) – Venus et Mercure
![Page 53: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/53.jpg)
Un autre exemple de code correcteur : Un autre exemple de code correcteur : un code de Hammingun code de Hamming
Richard Hamming
![Page 54: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/54.jpg)
a=(1, 0, 0, 0, 0, 1, 1)b=(0, 1, 0, 0, 1, 0, 1)c=(0, 0, 1, 0, 1, 1, 0)d=(0, 0, 0, 1, 1, 1, 1)
a+b = ? si 1+1=0
sousespace vectoriel
![Page 55: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/55.jpg)
a=(1, 0, 0, 0, 0, 1, 1)b=(0, 1, 0, 0, 1, 0, 1)c=(0, 0, 1, 0, 1, 1, 0)d=(0, 0, 0, 1, 1, 1, 1)
(1, 1, 0, 0, 1, 1, 0)(1, 0, 1, 0, 1, 0, 1)(1, 0, 0, 1, 1, 0, 0)(0, 1, 1, 0, 0, 1, 1)(0, 1, 0, 1, 0, 1, 0)(0, 0, 1, 1, 0, 0, 1)(1, 1, 1, 0, 0, 0, 0)(1, 1, 0, 1, 0, 0, 1)(1, 0, 1, 1, 0, 1, 0)(0, 1, 1, 1, 1, 0, 0)(1, 1, 1, 1, 1, 1, 1)(0, 0, 0, 0, 0, 0, 0)
a+ba+ca+db+cb+dc+da+b+ca+b+da+c+db+c+da+b+c+d
![Page 56: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/56.jpg)
a=(1, 0, 0, 0, 0, 1, 1)b=(0, 1, 0, 0, 1, 0, 1)c=(0, 0, 1, 0, 1, 1, 0)d=(0, 0, 0, 1, 1, 1, 1)
(1, 1, 0, 0, 1, 1, 0)(1, 0, 1, 0, 1, 0, 1)(1, 0, 0, 1, 1, 0, 0)(0, 1, 1, 0, 0, 1, 1)(0, 1, 0, 1, 0, 1, 0)(0, 0, 1, 1, 0, 0, 1)(1, 1, 1, 0, 0, 0, 0)(1, 1, 0, 1, 0, 0, 1)(1, 0, 1, 1, 0, 1, 0)(0, 1, 1, 1, 1, 0, 0)(1, 1, 1, 1, 1, 1, 1)(0, 0, 0, 0, 0, 0, 0)
0110
0110011
Codage :
7 chiffres transmis pour 4 chiffres d'information, taux 4/7
![Page 57: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/57.jpg)
Décodage du code Hamming[7,4]
x=(0, 0, 0, 1, 1, 1, 1) y=(0, 1, 1, 0, 0, 1, 1) z=(1, 0, 1, 0, 1, 0, 1)
0110
0110011
0111011= s <s,x>=1 <s,y>=0 <s,z>=0100 en base 2 : 4
sousespace vectoriel de dimension 4 dans un espace vectoriel de dimension 7
On calcule 3 produits scalaires
THM : On peut détecter et corriger 1 erreur avec H[7,4]
![Page 58: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/58.jpg)
p7+7p6q = 0,850306
Petit calcul de probabilités... si p=0,9
décoder correctement l'info. 4 chiffres en en transmettant 7 sur un canal bruité
p2(32p)
rappel : décoder correctement 1 chiffre en en transmettant 3 sur un canal bruité
p8(32p)4 = 0,892617
Hamming[7,4]
3 Répétitions4 chiffresen en transmettant 12
p4 = 0,6561Sans codage
4/7
1/3
1
corrige 1 (100%), 2 (81%), 3 (49%), 4 (16%) erreurs
corrige 1 (100%) erreur
ne corrige aucune erreur
![Page 59: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/59.jpg)
Les erreurs peuvent se produire de manière isolée / par paquets
On peut ou non réenvoyer le message
S'adapter aux contraintes physiques (e.g. flux de données, etc.)
Construire des codes plus longs, permettant de corriger plus d'erreurs :
Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui ne corrigent pas tous les types d'au plus 3 erreurs,code basé sur résidus quadratiques [47,24] corrige jusqu'à 5 erreurs
Codage et décodage efficaces
![Page 60: Codes correcteurs · Construire des codes plus longs, permettant de corriger plus d'erreurs : Golay[23,12] peut corriger jusqu'à 3 erreurs, mieux que trois blocs Hamming[7,4] qui](https://reader034.vdocuments.mx/reader034/viewer/2022042923/5f6fe624c9549c693b336183/html5/thumbnails/60.jpg)
Encore bien d'autres choses...
Chiffrement des données, cryptographie (sécurité, confidentialité, authentification)
Compression de données(jpeg, mp3, zip, ...)