Partage
  • Partager sur Facebook
  • Partager sur Twitter

produit de cycles

Sujet résolu
    5 avril 2021 à 7:00:18

    Bonjour et merci d'avance

    Dernièrement j'ai construit un programme en C qui calcule des produits de cycles pour les exprimer en produits à support disjoints depuis une expression écrite sur un fichier texte

    Le programme cherche à savoir si l'expression est un produit de cycles puis une fois cette vérification effectuée il va l'exprimer en produit à support disjoints dans le cas où cette expression ne l'est pas

    Ma question est la suivante:

    Juste pour vérifier ce que j'ai fait : le calcul ci-dessous est-il correct?

    Dans S_n calculer en produit  à support disjoints l'expression  

    (1,2)(1,2,5)^8((1,2)(3,5))^7(2,3)

    J'ai trouvé (1,2)(3,5) 

    c'est ok?

    ________________________________

    pour explication de l'expression 

    (1,2,5)^8 signifie (1,2,5) à la puissance 8

    ((1,2)(3,5))^7 signifie que le produit (1,2)(3,5) est à la puissance 7

    ________________________________

    Première remarque:

    Dans mon programme il fait le calcul bourrin de (1,2,5)^8 

    J'ai préféré écrire un code relativement court qui pourra lire toute expression et à faire tous les calculs bourrins sans avoir à rechercher les supports ou calculer des ppcm 

    _______________

    Deuxième remarque:

    comme ici le produit (1,2)(3,5) est à support disjoints on obtient  

    ((1,2)(3,5))^7 = (1,2)^7(3,5)^7

    mais dans mon programme il ne va pas chercher à savoir si le produit (1,2)(3,5) est commutatif ou pas 

    il fait le calcule bourrin directement (ça prend plus de temps de calcul mais l'avantage est que le code est plus simple) 

    • Partager sur Facebook
    • Partager sur Twitter
      5 avril 2021 à 15:46:27

      Une question pour commencer, je découvre totalement ces notations.

      (1,2) ça représente une opération où on permute les éléments 1 et 2, sans changer tous les autres, c'est bien ça ?

      et (1,2,5), c'est la même chose, 1 va en 2 , 2 va en 5, et 5 va en 1, et les autres éléments ne bougent pas, c'est ça ?

      Et (1,2)(2,3), on applique d'abord (1,2) , puis (2,3), dans cet ordre (a confirmer, c'est une question) , et ça donne (1,3,2)

      Du coup, en supposant que c'est bien comme ça que ça se lit :

      (1,2,5)^8 = (1,2,5)^2=(1,5,2)

      Puis (1,2)(1,2,5)^8  = (1,2)(1,5,2) = (2,5)

      ((1,2)(3,5))^7 = (1,2)(3,5)

      Au final :

      (1,2)(1,2,5)^8((1,2)(3,5))^7(2,3) = (1,2)(1,5,2)(1,2)(3,5)(2,3) =(2,5)(1,2)(3,5)(2,3)=(1,2,5)(3,5,2)=(1,3,5)

      Si j'ai bien ompris les notations, ce n'est pas sûr. En particulier, il peut y avoir un doute sur l'ordre quand on fait (1,2)(2,3)

      Selon qu'on applique d'abord (1,2), ou (2,3), le résultat sera différent.

      • Partager sur Facebook
      • Partager sur Twitter
        5 avril 2021 à 16:24:42

        tbc92 a écrit:

         Et (1,2)(2,3), on applique d'abord (1,2) , puis (2,3), dans cet ordre (a confirmer, c'est une question) , et ça donne (1,3,2)


        Bonjour 

         non  (1,2)(2,3) donne (1,2,3) car 

        là non on applique d'abord (2,3) puis (1,2) 

        car le produit est la composition des permutations

        1 donne 1 puis 1 donne 2 donc sur (1,2)(2,3) alors 1 donne 2

        2 donne 3 puis 3 donne 3 donc sur (1,2)(2,3) alors 2 donne 3

        3 donne 2 puis 2 donne 1 donc sur (1,2)(2,3) alors 3 donne 1

        et donc (1,2)(2,3)=(1,2,3) 

        PS : précision de ma réponse précédente


        tbc92 a écrit:

         Selon qu'on applique d'abord (1,2), ou (2,3), le résultat sera différent.


        Oui car ici les support ne sont pas disjoints  (de sorte que dans cet exemple là le produit n'est pas commutatif)

        -
        Edité par DominiqueSicilia 5 avril 2021 à 16:33:47

        • Partager sur Facebook
        • Partager sur Twitter
          5 avril 2021 à 18:35:29

          DominiqueSicilia a écrit:

          Bonjour et merci d'avance

          Dernièrement j'ai construit un programme en C qui calcule des produits de cycles pour les exprimer en produits à support disjoints depuis une expression écrite sur un fichier texte

          Le programme cherche à savoir si l'expression est un produit de cycles puis une fois cette vérification effectuée il va l'exprimer en produit à support disjoints dans le cas où cette expression ne l'est pas

          Ma question est la suivante:

          Juste pour vérifier ce que j'ai fait : le calcul ci-dessous est-il correct?

          Dans S_n calculer en produit  à support disjoints l'expression  

          (1,2)(1,2,5)^8((1,2)(3,5))^7(2,3)


          on a (1,2)(1,2,5)⁸((1,2)(3,5))⁷(2,3)=(1,2)(1,2,5)²((1,2)(3,5))(2,3)

          = (1,2)(1,2,5)²(1,3,5,2)

          =(1,2)(5,2,1)(1,3,5,2)

          =(1,2)(3,5)

          ou 

          12345

          13245

          31542

          21543

          • Partager sur Facebook
          • Partager sur Twitter
            5 avril 2021 à 18:43:21

            (1,2)(1,2,5)^8((1,2)(3,5))^7(2,3)=(1,2)(1,5,2)(1,2)(3,5)(2,3)

            = (1,5)(1,2)(2,5,3)

            =(1,2,5)(2,5,3)

            =(1,2)(3,5)

            On trouve effectivement (1,2)(3,5)

            Par rapport à la force bourrine, l'amélioration qui saute aux yeux, c'est pour les expressions de la forme (a,b)^n. Selon que n est pair ou impair, on simplifie rapidement. 

            Et un peu plus généralement, (a,b,c)^n, selon que n est multiple de 3 (n=3k), ou 3k+1 ou 3k+2, on peut aussi simplifier facilement.

            • Partager sur Facebook
            • Partager sur Twitter
              5 avril 2021 à 19:07:57

              tbc92 a écrit:

              On trouve effectivement (1,2)(3,5)

              __________________________________

              Vraiment merci TBC92 d'avoir pris le temps de vérifier 

              Je pense que je vais garder le code tel quel car il accepte de lire des exponentielles d'expressions lesquelles sont des produits d'expressions avec des exponentielles 

              mais il est vrai qu'avec mon code la machine fait des calculs un peu idiots

              -
              Edité par DominiqueSicilia 5 avril 2021 à 19:09:22

              • Partager sur Facebook
              • Partager sur Twitter

              produit de cycles

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              • Editeur
              • Markdown