Apprendre Maple Index du Forum Apprendre Maple
Site dédié au logiciel de calcul formel Maple
 
  Page d'accueilPage d'accueil   FAQFAQ    RechercherRechercher    Liste des MembresListe des Membres    Groupes d'utilisateursGroupes d'utilisateurs 
S'enregistrerS'enregistrer    ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

GF16 définition de alpha

 
Poster un nouveau sujet   Répondre au sujet    Apprendre Maple Index du Forum -> Maple en algèbre linéaire
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
Tymk
Invité





MessagePosté le: 11 Mai 2006 20:27    Sujet du message: GF16 définition de alpha Répondre en citant

Je voudrais utiliser la table des éléments de GF(16) mais Maple ne vaut pas que je lui rentre alpha en argument sauf si il l'a lui-même calculé précédement. Je m'explique :
Code:
Si je fais
x:=GF16['^'](alpha,4); il me donne x:=alpha+1
et GF16[ConvertOut](x) me donne 4
Pas de problème mais si je fais directement
Code:
GF16[ConvertOut](alpha+1);
alors j'ai droit à une erreur. Ca provient de la définition de alpha ?
Revenir en haut de page
ALS
Invité





MessagePosté le: 12 Mai 2006 7:48    Sujet du message: Répondre en citant

Bonjour, déjà, comment définissez-vous GF16?
Exemple de l'aide : G16 := GF(2,4,alpha^4+alpha+1):
Revenir en haut de page
Invité






MessagePosté le: 12 Mai 2006 15:34    Sujet du message: Répondre en citant

Oui, j'ai oublié l'essentiel.

Ma compréhension du problème a évolué depuis (enfin je crois) je vais détailler ma démarche.

J'ai l'espoir de mettre en place un codage Reed-Solomon sur Maple pour en faire une présentation orale. Je travaille donc en fait sur GF256 et non GF16 comme dans l'exemple.

J'ai besoin de 24 vecteurs de 8 bits chacun :
Code:
restart;with(linalg):# alphabet en ASCII
>
> A[1]:=matrix(1,8,[0,1,0,0,0,0,0,1]);
A[2]:=matrix(1,8,[0,1,0,0,0,0,1,0]);
A[3]:=matrix(1,8,[0,1,0,0,0,0,1,1]);
A[4]:=matrix(1,8,[0,1,0,0,0,1,0,0]);
........
Que je multiplie par la martice dont les coefficients sont les puissances de alpha
Code:
 >galois_matrice:=matrix(8,1,[alpha^7,alpha^6,alpha^5,alpha^4,alpha^3,alpha^2,alpha,1]);
>poly_A[i]:=evalm(A[i]&*galois_matrice);
Par exemple : polyA1=[alpha^7+1]

Ensuite je déclare mon GF256 :
Code:
> primitif_poly:=alpha^8+alpha^7+alpha^2+alpha+1;
> GF(2,8,primitif_poly):#construction de notre corps de Galois
> alias(alpha=RootOf(primitif_poly));#on pose alpha une racine du polynome
C'est là que ça coince :
Je calcule la trace de la matrice pour avoir le coefficient coeff:=alpha^7+1 mais lorsque je rentre ce coeff dans la procédure qui me donne la puissance de alpha correspondante il ne trouve rien.
Ca ne peut pas venir de ma procédure car en rentrant directement "alpha^7+1" et non pas "coeff" j'obtient la bonne réponse.
Je pense que cela viens de la définition de alpha qui est une constante pendant le calcul matriciel et qui devient un élément de GF256 dans la procédure. Mais je ne sais pas lui dire que c'est la même chose.
Revenir en haut de page
begdreuz
Invité





MessagePosté le: 12 Mai 2006 16:30    Sujet du message: Répondre en citant

Peut-être qu'en déclarant galois_matrice comme une fonction de alpha, le pb sera-t-il résolu?


Code:

>galois_matrice:=alpha->matrix(8,1,[alpha^7,alpha^6,alpha^5,alpha^4,alpha^3,alpha^2,alpha,1]);
Revenir en haut de page
Tymk
Invité





MessagePosté le: 12 Mai 2006 20:08    Sujet du message: Répondre en citant

Je viens d'essayer et malheuresement ça ne marche pas, maple ne peut plus calculer le produit matriciel. Il renvoit
Code:
poly_A[1] := A1&*galois_matrice

Il se passe exactement la même chose quand je définie alpha comme étant la racine du poly primitif avant d'effectuer le produit matriciel.

Quelqu'un a une autre idée ?
Revenir en haut de page
Administrateur
Administrateur - Site Admin


Inscrit le: 11 Sep 2006
Messages: 18

MessagePosté le: 13 Mai 2006 8:15    Sujet du message: begdreuz Répondre en citant

T'as bien mis
> poly_A[i]:=evalm(A[i]&*galois_matrice(alpha));
????
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Envoyer un e-mail
Invité






MessagePosté le: 14 Mai 2006 15:41    Sujet du message: Répondre en citant

J'ai placé ma déclaration de GF256 en début de document et ça fonctionne, bien que je ne sache pas pourquoi.

Merci
Revenir en haut de page
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Apprendre Maple Index du Forum -> Maple en algèbre linéaire Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


phpBB

Développé par phpBB © 2001, 2006 phpBB Group
Traduction par : phpBB-fr.com


Apprendre Maple - ©  - Alain Le Stang - Navigation optimisée pour une résolution 1024 x 768.