{VERSION 6 0 "IBM INTEL LINUX" "6.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 1 }{CSTYLE "2D Comment" 2 18 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "2D Input" 2 19 "" 0 1 255 0 0 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "2D Output" 2 20 "" 0 1 0 0 255 1 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 256 "" 1 24 0 0 0 0 0 0 2 0 0 0 0 0 0 1 }{CSTYLE "" -1 257 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 258 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 259 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 260 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 261 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 262 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 263 "" 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 }{CSTYLE "" 2 264 "" 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 265 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 266 "" 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 }{PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Text Output" -1 2 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 255 1 0 0 0 0 0 1 3 0 0 1 }1 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "H eading 1" 0 3 1 {CSTYLE "" -1 -1 "" 1 18 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } 1 0 0 0 8 4 0 0 0 0 0 0 -1 0 }{PSTYLE "Heading 2" 3 4 1 {CSTYLE "" -1 -1 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 1 }0 0 0 -1 8 2 0 0 0 0 0 0 -1 0 }{PSTYLE "Warning" 2 7 1 {CSTYLE "" -1 -1 "" 0 1 0 0 255 1 0 0 0 0 0 0 1 0 0 1 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Maple Output" 0 11 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 }3 3 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Title" 0 18 1 {CSTYLE "" -1 -1 "" 1 18 0 0 0 0 0 1 1 0 0 0 0 0 0 1 }3 0 0 -1 12 12 0 0 0 0 0 0 19 0 }} {SECT 0 {PARA 18 "" 0 "" {TEXT 256 27 "Codes correcteurs d'erreurs" }} {PARA 0 "" 0 "" {TEXT -1 70 "N'oubliez pas de charger en m\351moire la bibloth\350que d'alg\350bre lin\351aire." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "with(linalg):" }}}{SECT 0 {PARA 3 "" 0 "" {TEXT -1 16 "Codes de Hamming" }}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 35 "En dimens ion 7: le code de Hamming " }{XPPEDIT 18 0 "H[7];" "6#&%\"HG6#\"\"(" } }{PARA 0 "" 0 "" {TEXT -1 35 "Par d\351finition, le code de Hamming " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" }{TEXT -1 60 " est un sous-esp ace vectoriel de dimension 4 de l'espace Z/2" }{XPPEDIT 18 0 "Z^7" "6# *$%\"ZG\"\"(" }{TEXT -1 56 " Pour simplifier le d\351codage, il est co mmode de d\351finir " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" }{TEXT -1 248 " par un syst\350me de 3 \351quations ind\351pendantes. Par con struction, on choisit les 3 \351quations de sorte que si l'on met leur s coefficients en ligne dans une matrice 3x7 V7 les 7 vecteurs colonne s de V7 sont les \351critures en base 2 des nombres de 1 \340 7." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 75 "Il faut c ommencer par cr\351er cette matrice avec Maple.\nOn donne la fonction \+ " }{TEXT 19 2 "b2" }{TEXT -1 33 " suivante transforme un nombre x<" } {XPPEDIT 18 0 "2^n" "6#)\"\"#%\"nG" }{TEXT -1 91 " en un vecteur de lo ngueur n dont les composantes donnent la d\351composition en base 2 de x. " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 92 "b2:=proc(x,n)\nlocal r;\nr:=x mod 2;\nif n=1 then [r];\nelse \n[op(b2(iquo(x,2),n-1)),r]\n fi;\nend:" }}}{PARA 0 "" 0 "" {TEXT -1 50 "Par exemple, pour avoir la \+ d\351composition de 6=4+2:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "b2(6,3);" }}}{PARA 0 "" 0 "" {TEXT -1 1 "\n" }{TEXT 257 2 "1)" } {TEXT -1 110 " Cr\351ez une matrice 3x7 dont les colonnes sont (dans l 'ordre) les \351critures en base 2 des nombres entre 1 et 7." }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "V7:=" }{TEXT -1 0 "" }}} {PARA 0 "" 0 "" {TEXT -1 1 "\n" }{TEXT 258 2 "2)" }{TEXT -1 66 "V\351r ifiez que les trois \351quations sont effectivement ind\351pendantes. " }}{PARA 7 "" 0 "" {TEXT 2 137 "Attention: Pour demander \340 Maple \+ de travailler sur le corps (Z/2Z), vous pouvez utiliser les fonctions \+ suivantes (Noter les majuscules):" }}{PARA 7 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "?Gausselim" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "?Nullspac e" }}}{PARA 0 "" 0 "" {TEXT -1 98 "Pour r\351duire un vecteur ou un ma trice modulo 2, vous pouvez utiliser la fonction reduit suivante. " }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "reduit:=proc(M)\nmap(modp,ev alm(M),2)\nend:" }}}{PARA 0 "" 0 "" {TEXT -1 25 "\nPar d\351finition, \+ le code " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" }{TEXT -1 34 " est l e noyau de votre matrice V7." }}{PARA 0 "" 0 "" {TEXT 259 3 "3) " } {TEXT -1 21 "Calculez une base de " }{XPPEDIT 18 0 "H[7] " "6#&%\"HG6# \"\"(" }{TEXT -1 35 " et explicitez les 16 mots du code " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" }{TEXT -1 22 ".\n\nPar d\351finition, le " }{TEXT 263 5 "poids" }{TEXT -1 85 " d'un mot (= un vecteur) est le \+ nombre de composantes non nulles. Par exemple, le mot" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "v:=vector([0,1,0,1,0,0,1]);" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#>%\"vGK%'vectorG6#7)\"\"!\"\"\"F)F*F)F)F*Q(pprin t06\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#K%'vectorG6#7)\"\"!\"\"\"F'F(F'F'F(Q(pprint06\"" }}} {PARA 0 "" 0 "" {TEXT -1 16 "est de poids 3.\n" }{TEXT 261 2 "4)" } {TEXT -1 22 " Ecrivez une fonction " }{TEXT 19 5 "poids" }{TEXT -1 55 " qui prend en argument un vecteur et calcule son poids." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "?vectdim" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 20 "poids:=proc(v)\n\nend:" }}}{PARA 0 "" 0 "" {TEXT -1 20 "\nPar d\351finition, la " }{TEXT 264 8 "distance" }{TEXT -1 61 " d'un code est le minimum des poids de tous les mots du code." }} {PARA 0 "" 0 "" {TEXT 260 4 "5) C" }{TEXT -1 28 "alculez la distance d u code " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" }{TEXT -1 25 ". En d \351duire que le code " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" } {TEXT -1 39 " permet de corriger au plus une erreur." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "?min" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 262 2 "6)" }{TEXT -1 25 " Si c est un mot du code " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" }{TEXT -1 32 ", que vaut le produit matr iciel " }{TEXT 19 7 "V7 &* c" }{TEXT -1 160 "?\nSi v est un mot du cod e qui a subi une erreur au cours de la transmission, on peut l'\351cri re v=c+e, o\371 e est un mot de poids 1. Que vaut le produit matricie l " }{TEXT 19 7 "V7 &* v" }{TEXT -1 1 "?" }}{PARA 0 "" 0 "" {TEXT -1 92 "En d\351duire un algorithme pour d\351coder un mot re\347u ayant a u plus une erreur et programmez le." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "decodeH7:=proc(v)\n\nend:" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 22 "Testez votre fonction " }{TEXT 19 8 "decodeH7" }{TEXT -1 61 " gr\342ce \340 la fonction test suivante . Si vous obtenez toujours " }{TEXT 20 4 "true" }{TEXT -1 28 " c'est b on; si vous obtenez " }{TEXT 20 5 "false" }{TEXT -1 45 " c'est que vot re fonction ne marche pas bien." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 317 "test:=proc()\nl ocal c,e,K,modif,i,dec;\nK:=augment(op(Nullspace(V7)mod 2));\nc:=map(m odp,evalm(augment(op(Nullspace(V7)mod 2))&* randvector(4,entries=rand( 0..1))),2);\ne:=rand(1..7)();\nmodif:=copy(c);\nmodif[e]:=1-modif[e]; \ndec:=decodeH7(modif);\nfor i from 1 to 7 do\nif (dec[i]<>c[i]) then \+ RETURN(false) fi;\nod;\ntrue;\nend:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 7 "test(); " }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 265 2 "7)" }{TEXT -1 81 " En faisant des op\351rations sur les lignes de V7, mont rer que les 16 mots du code " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" }{TEXT -1 100 " sont obtenus \340 partir des 16 mots de longueur 4 en \+ leur rajoutant 3 bits de parit\351 \340 des sous-mots." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 7 "?addrow" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 25 "N:=reduit(addrow(V7,,,));" }}}{PARA 0 "" 0 "" {TEXT -1 25 "En d\351duire une proc\351dure " }{TEXT 19 6 "encode" } {TEXT -1 55 " qui associe \340 tout mot m de longueur 4 un mot du code " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" }{TEXT -1 18 " commen\347an t par m." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "encode:=proc(m) \n\nend;" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 21 "Variante cyclique de " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" }}{PARA 0 "" 0 "" {TEXT -1 154 "La matrice V7bis suivante a 7 colonnes qui sont les \351critures \+ en base 2 des nombres de 1 \340 7 mais dans un ordre diff\351rent. Son noyau d\351finit donc un code " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\" (" }{TEXT -1 18 "bis qui est comme " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6# \"\"(" }{TEXT -1 22 " 1-correcteur parfait." }}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 85 "V7bis:=matrix([[1, 0, 0, 1, 0, 1, 1], [0, 1, 0, 1, \+ 1, 1, 0], [0, 0, 1, 0, 1, 1, 1]]);" }}}{PARA 0 "" 0 "" {TEXT -1 21 "V \351rifier que ce code " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" } {TEXT -1 8 "bis est " }{TEXT 266 8 "cyclique" }{TEXT -1 44 ", c'est \+ \340 dire qu'il contient un vecteur v=(" }{XPPEDIT 18 0 "v[1],v[2],v[3 ],v[4],v[5],v[6],v[7]" "6)&%\"vG6#\"\"\"&F$6#\"\"#&F$6#\"\"$&F$6#\"\"% &F$6#\"\"&&F$6#\"\"'&F$6#\"\"(" }{TEXT -1 56 ") si et seulement s'il c ontient son permut\351 circulaire (" }{XPPEDIT 18 0 "v[2],v[3],v[4],v[ 5],v[6],v[7],v[1]" "6)&%\"vG6#\"\"#&F$6#\"\"$&F$6#\"\"%&F$6#\"\"&&F$6# \"\"'&F$6#\"\"(&F$6#\"\"\"" }{TEXT -1 2 ")." }}}{SECT 0 {PARA 4 "" 0 " " {TEXT -1 42 "En dimension 8: le code de Hamming \351tendu " } {XPPEDIT 18 0 "H[8]" "6#&%\"HG6#\"\")" }}{PARA 0 "" 0 "" {TEXT -1 42 " Par d\351finition, le code de Hamming \351tendu " }{XPPEDIT 18 0 "H[8] " "6#&%\"HG6#\"\")" }{TEXT -1 37 " est le code obtenu \340 partir du \+ code " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6#\"\"(" }{TEXT -1 36 " pr\351c \351dent en rajoutant aux mots de " }{XPPEDIT 18 0 "H[7]" "6#&%\"HG6# \"\"(" }{TEXT -1 18 " un bit de parit\351." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 69 "Ecrire une matrice V8 dont les \+ lignes sont les \351quations d\351finissant " }{XPPEDIT 18 0 "H[8]" "6 #&%\"HG6#\"\")" }{TEXT -1 21 ". Donner une base de " }{XPPEDIT 18 0 "H [8]" "6#&%\"HG6#\"\")" }{TEXT -1 75 " et calculez sa distance. \nCombi en d'erreurs peut-on corriger avec ce code?" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 36 "En dimension 15: le cod e de Hamming " }{XPPEDIT 18 0 "H[15]" "6#&%\"HG6#\"#:" }}{PARA 0 "" 0 "" {TEXT -1 52 "En mimant la construction de H7, construire un code " }{XPPEDIT 18 0 "H[15] " "6#&%\"HG6#\"#:" }{TEXT -1 67 " de dimension 1 1 et de longueur 15 et qui est 1-correcteur parfait." }}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 16 "Une variante de " }{XPPEDIT 18 0 "H[15]; " "6#&%\"HG6#\"#:" }{TEXT -1 24 " pour corriger 2 erreurs" }}{PARA 0 " " 0 "" {TEXT -1 52 "Voici comment on peut utiliser une variante du cod e " }{XPPEDIT 18 0 "H[15];" "6#&%\"HG6#\"#:" }{TEXT -1 232 " pour corr iger 2 erreurs.\nLes matrices V1 et V2 ci-dessous ont pour colonnes le s \351critures en base 2 des nombres de 1 \340 15, mais dans un ordre \+ diff\351rent. Soit C le code lin\351aire noyau de la matrice V obtenue en superposant V1 et V2." }}{PARA 0 "" 0 "" {TEXT -1 44 "V\351rifier \+ que C permet de corriger 2 erreurs." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 201 "V1:=matrix([[1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, \+ 1, 1], [0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0], [0, 0, 1, 0, 0, \+ 1, 1, 0, 1, 0, 1, 1, 1, 1, 0], [0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1]]);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 201 "V2:=matrix([[ 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1], [0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1], [0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1], \+ [0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1]]);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "V:=(stack(V1,V2));" }}}{PARA 0 "" 0 "" {TEXT -1 104 "Programmez un algorithme naif de d\351codage (on peut faire pl us rapide avec un peu plus de math\351matiques)." }}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 0 "" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 21 "Code s tir\351s au hasard" }}{PARA 0 "" 0 "" {TEXT -1 134 "Tirer quelques c odes au hasard (pour n=15 et k=11 par exemple) et calculez leur distan ce.\nPeut-on esp\351rer tirer un bon code au hasard?" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 39 "V:=randmatrix(4,15,entries=rand(0..1));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{SECT 0 {PARA 3 "" 0 "" {TEXT -1 17 "Le code de Golay " }{XPPEDIT 18 0 "G[23]" "6#&%\"GG6 #\"#B" }}{PARA 0 "" 0 "" {TEXT -1 335 "On pr\351sente ici un autre cod e parfait, d\351couvert par le physicien suisse Marcel Golay en 1949. \+ On peut montrer que c'est le seul code correcteur binaire parfait perm ettant de corriger au moins deux erreurs. Ce code a eu une grande impo rtance dans un domaine plus abstrait des math\351matiques: la classifi cation des groupes finis simples." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 17 "Le code de Golay " }{XPPEDIT 18 0 "G[23] " "6#&%\"GG6#\"#B" }{TEXT -1 53 " et par d\351finition donn\351 par le s \351quations suivantes:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 795 "V23:=matrix([[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, \+ 0, 1, 0, 0, 1, 0], [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1], [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1 , 1, 1, 0, 1, 1, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, \+ 0, 1, 1, 1, 0, 1, 1], [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1], [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1 , 1, 0, 1, 0, 1, 0, 1], [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, \+ 0, 1, 1, 1, 1, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0 , 1, 1, 0, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, \+ 1, 0, 1, 1, 0, 1, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1]]);" }}}{PARA 0 "" 0 "" {TEXT -1 30 "Calcul er la dimension du code " }{XPPEDIT 18 0 "G[23]" "6#&%\"GG6#\"#B" } {TEXT -1 93 " ainsi que sa distance. Combien d'erreurs peut-il corrige r?\nV\351rifier que ce code est parfait." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}}{MARK "2 0 0" 8 }{VIEWOPTS 1 1 0 3 2 1804 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }