Maintenant que nous sommes parvenus à générer une première séquence, comment dérouler la suite de la partition ? Il serait bien sûr tout à fait possible de répéter cette séquence à l’envi, mais si nous souhaitons diversifier un peu, et de façon automatique, notre partition, comment pouvons-nous procéder ?
Une première solution consisterait à simplement ajouter 1 à tous les éléments de la ligne. On obtiendrai la même séquence augmentée. Comme nous sommes entre 0 et 11, la valeur 12 deviendrait automatiquement 0. Pour ce faire, on utiliserait la fonction MOD qui permet de calculer le reste modulo la valeur que l’on souhaite (12 en l’occurrence). Mais les écarts entre deux notes consécutives ne seraient pas différents d’une ligne à l’autre.
Pour obtenir des séquences suffisamment différentes, nous pouvons tenter de multiplier les éléments de la première ligne par une valeur. Mais nous nous apercevons rapidement que nous n’obtiendrons pas une séquence dodécaphonique car des nombres seraient répétés. En effet, si l’on multiplie par 2 toute la ligne, on obtiendra deux fois tous les nombres :
En termes algébriques, ce problème vient du fait que l’on est dans une structure de groupe quotient du type $\mathbb{Z} / n\mathbb{Z}$ avec n = 12. Or, nous pouvons utiliser une propriété de ce type de structure : p x $\mathbb{Z} / n\mathbb{Z}$ est isomorphe à $\mathbb{Z} / n\mathbb{Z}$ quand p et n sont premiers entre eux. Cela signifie que si l’on multiplie notre séquence dodécaphonique par un nombre premier avec 12 alors on obtiendra une succession de nombres deux à deux distincts, c’est-à-dire une séquence dodécaphonique.
En particulier, tous les nombres premiers hormis 2 et 3 sont premiers avec 12, ce qui nous permet de générer facilement d’autres séquences :
On obtient bien des séquences dodécaphoniques différentes. Pour s’assurer que ce phénomène est normal, on peut effectuer une démonstration rapide reposant sur des propriétés arithmétiques simples.
Démonstration : Supposons k et k’ deux entiers distincts compris entre 0 et 11. Soit p un nombre premier strictement supérieur à 3. Nous allons raisonner par l’absurde en supposant que le reste de la division de kp et de k’p par 12 est identique, ou, pour le dire autrement : kp mod 12 = k’p mod 12 . Cela signifie qu’il existe deux entiers n et n’ distincts (s’ils n’étaient pas distincts on aurait l’égalité de k et k’) et un entier q tels que : kp = 12n + q et k’p = 12n’ + q . Dans les deux équations, q est identique car c’est le reste de la division euclidienne, reste supposé égal dans le cadre de notre raisonnement par l’absurde.
On peut donc écrire : (k - k’)p = 12(n - n’) . De cette écriture, on peut déduire que 12 divise (k - k’)p . Or p étant premier avec 12, on en déduit immédiatement que 12 divise (k - k’), c’est-à-dire que (k - k’) est un multiple de 12.
Mais, vu que k et k’ sont compris entre 0 et 11, on a l’inégalité suivante : -11 $\leqslant $ k - k’ $\leqslant $ 11 . Or le seul nombre multiple de 12 dans cette fourchette est 0. On en déduit donc que la seule possibilité pour que notre hypothèse de départ (kp mod 12 = k’p mod 12) soit valide est que k - k’ = 0 c’est-à-dire k = k’ . Nous obtenons donc la contradiction recherchée.
On peut ainsi en conclure que deux entiers distincts multipliés par un nombre premier strictement supérieur à 3 donneront deux entiers distincts dans $ \mathbb{Z}/12\mathbb{Z}$ .
Nous remarquons que ces 4 séquences dodécaphoniques vont se répéter dans un ordre précis quand nous poursuivons la liste des nombres premiers. Nous pouvons repérer la succession des séquences en utilisant les fonctions CONCATENER puis RECHERCHEV :
Nous n’étudierons pas ici cette propriété car ce n’est pas l’objet essentiel du présent article. En effet, ce que nous souhaitons désormais faire, c’est de la musique ! Pour ce faire, nous allons devoir télécharger les sons des notes un par un afin de pouvoir les appeler au gré des besoins.
Les fichiers audio sont disponibles en fin d’article avec les classeurs LibreOffice.
Chaque note est associée à un nombre de 0 à 11 et est triplée : on aura par exemple les notes 1, 1m et 1r correspondant à trois rapidités d’exécution d’une même note. Ainsi, on pourra associer à toute note d’une séquence dodécaphonique une longueur : pour ce faire, il suffira d’associer à chaque note (représentée par un entier compris entre 0 et 11) un nombre aléatoire. Puis on décidera que la note sera jouée longue si le nombre aléatoire est supérieur à une certaine valeur (0.9 par exemple), moyenne si elle est comprise entre deux valeurs (0.8 et 0.9 par exemple) et rapide sinon. Cela nous permet, en l’occurrence, d’avoir en moyenne 80 % de notes rapides, 10 % de notes moyennes et 10 % de notes longues.
Pour produire la musique correspondant à notre partition, notre méthode va consister à associer à lire successivement les chiffres de la séquence dodécaphonique et les longueurs correspondantes. Cette opération va nécessiter l’écriture d’une macro que nous exposons ci-dessous :
Enfin, nous allons ajouter un bouton sur notre feuille de calcul permettant de lancer la macro et, par la même occasion, la musique. Pour ce faire, nous devons aller dans le menu Affichage puis Barre d’outils et enfin Contrôles de formulaire. Ensuite, on clique sur le bouton encadré en rouge dans la figure ci-dessous.
On peut alors dessiner le bouton, puis effectuer un clic droit sur ce même bouton pour afficher l’option « Contrôle » sur laquelle il faudra cliquer.
Ensuite, on peut aller dans « Exécuter l’action ».
Cela affichera une nouvelle fenêtre où on pourra sélectionner « Macro… » après quoi il suffira d’assigner la macro que l’on aura codée à ce bouton.