Représentation graphique de la fonction:

     Au cours de notre étude nous avons trouvé un travail semblable publié dans la revue "Pour la Science" (Mars 1982) sous la rubrique Jeux Mathématiques, écrit par Douglas Hofstadter. C'est sa méthode graphique que nous utiliserons. L'idée de ramener les valeurs des itérés entre 0 et 1 fait suite à l'étude du programme MuPAD de congruence linéaire de Julia Faflex publié sur le site de MuPAD.

 

 A. Dewdney in Pour la Science Septembre 1987 écrivait:

     "Dans l'article de Juin (pour la Science 1987), consacré à la musique par ordinateur, je proposais la composition de longues mélodies non répétitives à partir d'une suite de nombres modulo m. On choisissait une valeur initiale à partir de laquelle on obtenait le nombre suivant  en multipliant par une constante a et en ajoutant une autre constante b; puis, après chaque itération, on ramenait le résultat à un nombre compris entre 0 et m-1 en calculant le reste de la division par m. Si a et m sont premiers entre eux, (c'est à dire s'ils n'ont pas de diviseur commun différent de 1) la séquence est de longueur maximale: elle produit une musique étrange".

cela peut s'écrire sous la forme:

 xn+1 = a . xn + b mod m  {a et m premiers entre eux}

     Etant donné que tout nombre entier dans la séquence est compris entre 0 et m-1, nous pouvons diviser tous les nombres par m et obtenir des nombres entre 0 et 1.

    Graphiquement nous utilisons la méthode classique du tracé de l'itération d'une fonction mathématique à valeur réelle, c'est à dire le tracé de la suite de valeurs x, f(x), f(f(x)), f(f(f(x))), ..., ou f est une fonction particulière.

    Le trait en vert représente la bissectrice, c'est à dire la droite y = x. Une droite verticale issue de X0 coupe la courbe à l'ordonnée y = a . xn + b. Pour itérer la fonction f, nous devons tracer une nouvelle verticale issue du point dont l'abscisse x a cette valeur y0 de y. C'est ici que la bissectrice devient utile. Partant de l'ordonnée y0, nous nous déplaçons horizontalement jusqu'à couper la première bissectrice. Alors comme sur cette droite y est égal à x, x et y sont tous deux égaux à y0. Appelons cette nouvelle valeur x1. Nous traçons maintenant une deuxième droite verticale. Celle-ci coupe la courbe à l'ordonnée y1 = f(x1) = f(y0) = f(f(x0)). Il suffit de recommencer.
    Lorsque la valeur y obtenue est égale ou supérieure à 1 la fonction modulo la ramène dans l'intervalle [0 ]1].
    Graphiquement cela est obtenu par la deuxième bissectrice qui a une fonction de miroir de la valeur y.
    L'utilisation de la fonction particulière où a = 1 est liée à l'objectif de modélisation d'une structure neuromimétique. La propagation des spikes sur les chaînes de neurones (spiking neurons) connectés en boucle est supposée constante. Le paramètre b représente alors le délai entre les entrées des valeurs successives d'une afférence neuronale externe à la boucle.

Nous pouvons étudier cette fonction grâce à un programme écrit en Delphi inspiré de celui utilisé utilisé pour visualiser la fonction logistique
x = constante * x * (1-x)