TP 4 restart; Mise en place du corps K p:=3;m:=5; IiIk IiIm P:=X^5+X^4+X^2+1; LCoqJClJIlhHNiIiIiYiIiJGKCokKUYlIiIlRihGKCokKUYlIiIjRihGKEYoRig= alias(alpha=RootOf(P,X) mod p);#d\303\251finit l'extension K=F_p[alpha] de degr\303\251 m SSZhbHBoYUc2Ig== p^m; IiRWIw== Power(alpha,p^m-1) mod p ;Power(alpha,(p^m-1)/2) mod p; IiIi IiIj n:=p^m-1; IiRVIw== T:=Array(0..n-1,i->Power(alpha,i) mod p): LD:=proc(x) global T,n; local i; for i from 0 to n-1 do if T[i]=x then return i end if; end do; FAIL end proc: F:=i->p*i mod n; Zio2I0kiaUc2IkYlNiRJKW9wZXJhdG9yR0YlSSZhcnJvd0dGJUYlLUkkbW9kR0YlNiQqJkkicEdGJSIiIkYkRi5JIm5HRiVGJUYlRiU= Orb:=proc(i::nonnegint) description "calcule les classes cyclotomipues"; global n;local Omega,j; if i>=n then error "mauvais argument" end if; Omega:=[];j:=i; do Omega:=[op(Omega),j]; j:=F(j); if member(j,Omega) then return Omega end if; end do; FAIL; end proc: Orb(6); NyciIiciIz0iI2EiJGkiIiIj Construction du code BCH la distance apparente du code BCH delta:=8; IiIp L:=[seq(Orb(i),i=1..delta-1)]; Nyk3JyIiIiIiJCIiKiIjRiIjIik3JyIiIyIiJyIjPSIjYSIkaSI3J0YlRiZGJ0YoRiQ3JyIiJSIjNyIjTyIkMyIiIyMpNyciIiYiIzoiI1giJE4iIiRqIjcnRitGLEYtRi5GKjcnIiIoIiNAIiNqIiQqPSIjJCk= J :=convert({op(map(op,L))},list); NzsiIiIiIiMiIiQiIiUiIiYiIiciIigiIioiIzciIzoiIz0iI0AiI0YiI08iI1giI2EiI2oiIyIpIiMjKSIjJCkiJDMiIiROIiIkaSIiJGoiIiQqPQ== JSFH les racines du code rac:=map(i -> T[i],J); NztJJmFscGhhRzYiKiQpRiMiIiMiIiIqJClGIyIiJEYoKiQpRiMiIiVGKCwoKiZGJ0YoRi1GKEYoKiZGJ0YoRiZGKEYoRidGKCwsRixGKComRidGKEYqRihGKEYlRigqJkYnRihGI0YoRihGKEYoLCxGLEYoRilGKEYlRihGI0YoRidGKCwoRixGKEYxRihGNEYoLCpGLEYoRilGKEYxRihGI0YoLCZGLEYoRihGKCwsRixGKEYzRihGJUYoRiNGKEYnRigsKEYpRihGMUYoRjRGKCwqRilGKEYlRihGNEYoRidGKCwoRixGKEYjRihGJ0YoLCxGLEYoRilGKEYxRihGI0YoRihGKCwqRixGKEYpRihGJUYoRiNGKCwmRiVGKEYnRigsKEYwRihGKUYoRiNGKCwoRjBGKEYxRihGKEYoLCxGLEYoRjNGKEYlRihGI0YoRihGKCwsRixGKEYzRihGMUYoRiNGKEYnRigsJkYsRihGI0YoLCpGKUYoRjFGKEY0RihGKEYoLCpGLEYoRjNGKEYxRihGI0YoLCpGLEYoRjNGKEYlRihGNEYo le polyn\303\264me g\303\251n\303\251rateur g:=sort(Expand(mul(X-r,r in rac)) mod p,X); LEYqJClJIlhHNiIiI0QiIiJGKCokKUYlIiNDRihGKCokKUYlIiNBRihGKCokKUYlIiNARihGKCokKUYlIiM/RihGKComIiIjRigpRiUiIz1GKEYoKiZGNkYoKUYlIiM8RihGKComRjZGKClGJSIjO0YoRigqJkY2RigpRiUiIzpGKEYoKiQpRiUiIzhGKEYoKiZGNkYoKUYlIiM3RihGKCokKUYlIiM1RihGKComRjZGKClGJSIiKUYoRigqJClGJSIiJUYoRigqJClGJSIiJEYoRigqJClGJUY2RihGKComRjZGKEYlRihGKEYoRig= la dimension k:=n-degree(g,X); IiQ8Iw== le nombre de mots du code p^k; ImNxakBKTCNbIz4ibzE6QzM9cXF1bl5xOVdYZk1yWkByUzdRMTMlRzJjIVxAaSgqKnpXbDUmPVFWLFYk