Matrice échelonnée et rang

Bonjour
Le cours me dit que le rang d'une matrice est le nombre de lignes non nulles de la matrice échelonnée obtenue à partir d'une matrice donnée. Or si l'on suit l'exemple suivant le nombre de lignes non nulles de la matrice échelonnée obtenue à partir de la matrice de droite est 4. Or le rang de la matrice de droite est 3. Les coefficients sont dans F2.

Merci de me dire ce qu'il en est.124382

Réponses

  • Deux matrices équivalentes ont forcément le même rang. Il doit y avoir une erreur dans une des deux matrices.
  • Ou bien tu as fait une erreur dans ton calcul de rang, ou bien dans ton échelonnage.

    On ne peut pas trop te dire où est l'erreur sans que tu montres tes calculs , mais je suis d'accord avec ton calcul de rang.
  • J'ai revérifié avec un autre logiciel, je trouve la même matrice échelonnée.
  • Calculs faits, les deux matrices sont bien équivalentes, donc je pense aussi que c'est le calcul du rang de la matrice de départ (à droite) qui est faux.

    EDIT: oui, on est d'accord. Mais comment le calcul du rang de la matrice de droite a-t il été effectué ?
  • sage: A=Matrix(GF(2),[[0,0,0,1,1],[0,1,0,1,1],[0,1,1,0,1],[0,0,0,1,1],[0,0,1,1,0]])
    
    sage: A
    [0 0 0 1 1]
    [0 1 0 1 1]
    [0 1 1 0 1]
    [0 0 0 1 1]
    [0 0 1 1 0]
    
    sage: A.rank()
    3
    
    sage: A.echelon_form()
    [0 1 0 0 0]
    [0 0 1 0 1]
    [0 0 0 1 1]
    [0 0 0 0 0]
    [0 0 0 0 0]
    
  • Rions un peu.
    sage: A = Matrix(5,5,[0,0,0,1,1,0,1,0,1,1,0,1,1,0,1,0,0,0,1,1,0,0,1,1,0])
    sage: A
    [0 0 0 1 1]
    [0 1 0 1 1]
    [0 1 1 0 1]
    [0 0 0 1 1]
    [0 0 1 1 0]
    sage: A.rank()
    4
    sage: A.change_ring(FiniteField(2)).rank()
    3
    sage: A.echelon_form()
    [0 1 0 0 0]
    [0 0 1 0 1]
    [0 0 0 1 1]
    [0 0 0 0 2]
    [0 0 0 0 0]
    sage: A.change_ring(FiniteField(2)).echelon_form()
    [0 1 0 0 0]
    [0 0 1 0 1]
    [0 0 0 1 1]
    [0 0 0 0 0]
    [0 0 0 0 0]
    
  • Ah, et ben voilà une explication claire.
    Back to school.
  • Je n'avais pas compris qu'il s'agissait d'un calcul par logiciel :-D
    Merci MathCoss d'avoir sauvé les maths, mais surtout les logiciels de calcul ;-)
  • My pleasure. Poursuivons.
    sage: A.right_kernel()
    Free module of degree 5 and rank 1 over Integer Ring
    Echelon basis matrix:
    [1 0 0 0 0]
    sage: A.change_ring(QQ).right_kernel()
    Vector space of degree 5 and dimension 1 over Rational Field
    Basis matrix:
    [1 0 0 0 0]
    sage: A.change_ring(GF(2)).right_kernel()
    Vector space of degree 5 and dimension 2 over Finite Field of size 2
    Basis matrix:
    [1 0 0 0 0]
    [0 0 1 1 1]
    
  • Je crois comprendre que le logiciel que j'ai utilisé donne une réponse dans R ( en l'occurrence D code) et ne peut me renseigner sur un corps fini comme le fait SAGE dans la réponse de Math Coss.

    J'aimerais bien que l'on me dise comment télécharger SAGE de manière sûre.

    Merci à vous tous d'avoir cherché à répondre à ma question.
  • Juste pour être certain (mais je pense que c'est bête, je viens de le refaire): si j'avais réduit ma matrice en ne faisant attention à n'utiliser que les opérations élémentaires inversibles dans $\mathbb{F}_{2}$, tout ce serait bien passé, n'est ce pas ? (échanges de lignes et ajouts de lignes)
  • J'aimerais bien que l'on me dise comment télécharger SAGE de manière sûre.

    Depuis le site officiel : https://www.sagemath.org/fr/telecharger.html
Connectez-vous ou Inscrivez-vous pour répondre.