Vidéo : La courbe de Hilbert : est-ce que le calcul infini est utile ?

Grant Sanderson • 3Blue1Brown • Boclips

La courbe de Hilbert : est-ce que le calcul infini est utile ?

18:17

Transcription de vidéo

Parlons des courbes qui remplissent l’espace. Elles sont incroyablement amusantes à animer et permettent également de poser une certaine question philosophique. Les mathématiques traitent souvent des quantités infinies, parfois si intimement que la substance même d’un résultat n’a de sens que dans un monde infini. La question est donc de savoir comment ces résultats peuvent être utiles dans un contexte fini.

Comme c’est toujours le cas lorsqu’il s’agit de philosopher, il vaut mieux en discuter après avoir examiné le cas concret des mathématiques réelles. Je commencerai donc par une application de ce qu’on appelle une « courbe de Hilbert », suivie d’une description de certaines de ses origines en calcul infini.

Disons que vous vouliez écrire un logiciel qui permettrait aux gens de voir avec leurs oreilles. On y prendrait les données d’une caméra et les traduirait d’une manière significative en un son. Nous pensons que les cerveaux sont suffisamment plastiques pour créer une intuition visuelle, même lorsque les données brutes sont brouillées dans un format différent. J’ai laissé dans la description quelques liens vers des études à cet égard. Pour faciliter les premières expériences, vous pouvez commencer par traiter les images entrantes avec une résolution faible, peut-être 256 par 256 pixels. Et pour faciliter mes propres efforts d’animation, représentons l’une de ces images par une grille carrée, où chaque cellule correspondant à un pixel.

Une approche de ce logiciel qui transforme la vue en son consisterait à trouver un bon moyen d’associer chacun de ces pixels à une valeur unique de fréquence. Ainsi, lorsque ce pixel est plus lumineux, la fréquence qui lui est associée sera jouée plus fort ; et si le pixel était plus sombre, la fréquence serait silencieuse. L’écoute de tous les pixels à la fois sonnerait alors comme un groupe de fréquences superposées avec des fréquences dominantes correspondant aux régions les plus lumineuses de l’image, et ça ressemblerait à un désordre cacophonique jusqu’à ce que votre cerveau apprenne à comprendre le sens des informations qu’il contient.

Laissons temporairement de côté nos inquiétudes quant à savoir si cela fonctionnerait ou non. Et au lieu de cela, réfléchissons à quelle fonction, de l’espace des pixels à l’espace des fréquences, donne à ce logiciel la meilleure chance de fonctionner. La difficulté réside dans le fait que l’espace des pixels est bidimensionnel, alors que l’espace des fréquences est unidimensionnel. Vous pouvez bien sûr essayer de le faire avec un mappage aléatoire. Après tout, nous espérons que le cerveau humain arrive à comprendre des données assez bancales. Cependant, il serait peut-être intéressant de profiter de certaines intuitions qu’un cerveau humain a déjà sur le son. Par exemple, si nous pensons en termes de mappage inverse de l’espace des fréquences vers l’espace des pixels, alors les fréquences proches doivent rester proches dans l’espace des pixels. De cette façon, même si une oreille a du mal à distinguer deux fréquences proches, elles se référeront au moins au même point de base dans l’espace.

Pour faire en sorte que cela se produise, vous pouvez d’abord décrire un moyen de tisser une ligne à travers chacun de ces pixels. Ensuite, si vous fixez chaque pixel à un endroit de cette ligne et que vous démêlez tout le fil pour le rendre droit, vous pouvez interpréter cette droite comme un espace de fréquences, et vous obtenez une association de pixels en fréquences, ce que nous souhaitons. Maintenant, une méthode de tissage consisterait à ne faire qu’une rangée à la fois, en alternant entre gauche et droite alors qu’elle se déplace vers le haut de cet espace de pixels. C’est comme un jeu de Snake bien joué, appelons donc cela une « courbe-serpent ».

Lorsque vous parlez de cette idée à votre amie mathématicienne, elle dit : « Pourquoi ne pas utiliser une courbe de Hilbert ? » Lorsque vous lui demandez ce que c’est, elle hésite un instant. « Alors, ce n’est pas une courbe, mais une famille infinie de courbes », commence-t-elle. « Eh bien non, ce n’est en fait qu’une chose, mais je dois d’abord vous parler d’une certaine famille infinie. » Elle sort un bout de papier et commence à expliquer ce qu’elle décide d’appeler « pseudo-courbe de Hilbert », par manque d’un meilleur terme.

Pour une pseudo-courbe de Hilbert de premier ordre, vous divisez un carré en une grille à deux rangées et deux colonnes, et connectez le centre du quadrant inférieur gauche au centre du quadrant supérieur gauche, puis le centre du quadrant supérieur droit vers le centre du quadrant inférieur droit.

Pour une pseudo-courbe de Hilbert de second ordre, plutôt que d’aller directement d’un quadrant à un autre, nous laissons notre courbe effectuer un peu de travail pour remplir chaque quadrant. Spécifiquement, subdivisons le carré en une grille de quatre colonnes et quatre rangées, et nous voyons notre courbe tracer une petit pseudo-courbe de Hilbert de premier ordre à l’intérieur de chaque quadrant avant de passer au suivant. Si nous laissons ces nombreuses courbes orientées telles quelles, aller de la fin de la mini-courbe en bas à gauche au début de la mini-courbe en haut à gauche nécessite ce genre de bon malaisé. Même chose pour aller du coin supérieur droit au coin inférieur droit. Nous inversons donc les courbes en bas à gauche et en bas à droite pour raccourcir cette connexion.

Passer d’une pseudo-courbe de Hilbert de second ordre à une autre de troisième ordre est tout à fait pareil. Vous divisez le carré en une grille de huit rangées et huit colonnes, puis vous placez une pseudo-courbe de Hilbert de second ordre dans chaque quadrant, vous inversez les courbes inférieure gauche et inférieure droite correctement, puis vous les connectez toutes de bout en bout. Et le modèle continue ainsi pour les ordres plus élevés.

Votre amie mathématicienne explique que pour le tableau de 256 par 256 pixels, vous utiliseriez une pseudo-courbe de Hilbert de huitième ordre. Et rappelez-vous, définir une courbe traversant chaque pixel est la même chose que définir une fonction de l’espace des pixels à l’espace des fréquences, car vous associez chaque pixel à un point sur la droite.

C’est bien comme une œuvre d’art, mais pourquoi ces pseudo-courbes de Hilbert seraient-elles meilleures que la courbe-serpent ? Eh bien, voici une raison très importante. Imaginez que vous réalisez ce projet, que vous intégrez le logiciel à de véritables appareils photo et écouteurs, et que cela fonctionne. Partout dans le monde, des personnes utilisent l’appareil, construisant des intuitions pour la vision via le son. Que se passe-t-il lorsque vous effectuez une mise à niveau qui augmente la résolution de l’image de la caméra de 256 par 256 à 512 par 512 ? Si vous utilisez la courbe-serpent et que vous passez à une résolution plus élevée, de nombreux points de cette ligne de fréquence devront aller à des parties complètement différentes de l’espace des pixels.

Par exemple, suivons un point situé à peu près à mi-chemin de la ligne de fréquence. Quelle que soit la résolution, il se retrouvera à peu près à la moitié de l’espace des pixels, mais sa position, de gauche à droite, peut être très différente alors que vous passez de 256 à 512. Cela signifie que toute personne utilisant votre logiciel devra réapprendre comment voir avec ses oreilles, puisque les intuitions originales de quels points de l’espace correspondent à quelles fréquences ne s’appliquent plus.

Cependant, avec la technique de la courbe de Hilbert, lorsque vous augmentez l’ordre d’une pseudo-courbe de Hilbert, un point donné de la ligne se déplace de moins en moins. Il s’approche d’un point plus spécifique de l’espace. Ainsi, vous avez donné à vos utilisateurs la possibilité d’affiner leurs intuitions plutôt que de tout réapprendre.

Donc, pour cette application qui transforme la vue en son, l’approche de la courbe de Hilbert s’avère être exactement ce que vous voulez. En fait, compte tenu de la spécificité de l’objectif, elle semble presque bizarrement parfaite. Alors, vous retournez à votre amie mathématicienne et vous lui demandez : « Hé, quelle était la motivation initiale pour définir l’une de ces courbes ? » Elle explique que vers la fin du 19e siècle, dans la réplique de la recherche de Cantor sur l’infini, les mathématiciens souhaitaient trouver un mappage entre une ligne unidimensionnelle et un espace bidimensionnel, de manière à ce que la ligne parcourt chaque point de l’espace. Pour être clair, nous ne parlons pas d’une grille finie et délimitée de pixels, comme dans l’application de son-vue. C’est un espace continu, qui est très infini, et le but est d’avoir une ligne aussi mince que possible et dont l’aire est nulle qui passe en quelque sorte à travers chacun de ces points infiniment nombreux qui constituent l’aire infinie de l’espace.

Avant 1890, beaucoup de gens pensaient que c’était évidemment impossible. Mais ensuite, Peano découvre la première de ce qui sera connu sous le nom de « courbes remplissantes ». En 1891, Hilbert suit avec sa propre courbe remplissante légèrement plus simple. Techniquement, chacun remplit un carré, pas tout l’espace, mais je vous montrerai plus tard comment remplir tout l’espace n’est plus un problème une fois que vous avez rempli un carré avec une ligne. À propos, les mathématiciens utilisent ce mot « courbe » pour parler d’une ligne traversant l’espace, même si ses coins sont irréguliers. Cette terminologie est particulièrement contre-intuitive dans le contexte d’une courbe qui remplit l’espace, qui en un sens n’est composée que des angles aigus. Un meilleur nom pourrait être quelque chose comme « fractale remplissant l’espace », que certaines personnes utilisent. Mais bon, ce sont les mathématiques, nous vivons avec une terrible terminologie !

Aucune des pseudo-courbes de Hilbert que vous utilisez pour remplir un espace pixélisé ne sera considérée comme une courbe remplissante, quelle que soit son ordre. Il suffit de zoomer sur l’un des pixels. Lorsque ce pixel est considéré comme faisant partie d’un espace continu infini, la courbe ne traverse que sa plus petite tranche d’aire nulle. Elle n’atteint certainement pas tous les points. Votre amie mathématicienne explique qu’une courbe de Hilbert de bonne foi n’est pas l’une de ces pseudo-courbes de Hilbert ; au lieu de cela, c’est la limite de chacune d’entre elles.

Définir cette limite de manière rigoureuse est délicat. Vous devez d’abord formaliser ce que sont ces courbes en tant que fonctions. Plus précisément, les fonctions qui prennent en entrée un nombre unique compris entre zéro et un, et comme sortie une paire de nombres. Cette entrée peut être considérée comme un point sur la droite et la sortie comme des coordonnées dans un espace en 2D. Mais en principe, il s’agit simplement d’une association entre un nombre unique et des paires de nombres.

Par exemple, une pseudo-courbe de Hilbert de deuxième ordre en tant que fonction mappe l’entrée 0.3 sur la paire de sorties 0.125 ; 0.75. Une pseudo-courbe de Hilbert de troisième ordre mappe cette même entrée 0.3 avec la paire de sorties 0.0758 ; 0.6875.

Maintenant, la propriété principale qui fait d’une fonction comme celle-ci une courbe, et pas juste une association entre des nombres uniques et des paires de nombres, est la continuité. L’intuition qui se cache derrière la continuité est que vous ne voulez pas que la sortie de votre fonction saute brusquement à un certain point alors que l’entrée change doucement. Et la façon dont cela est rendu rigoureux en mathématiques est en fait très intelligente. Et pour bien comprendre les courbes remplissantes, il faut vraiment assimiler l’idée formelle de continuité. Donc, ça vaut vraiment la peine de l’esquiver pour le moment.

Considérons un point d’entrée particulier, 𝐴, et la sortie correspondante de la fonction, 𝐵. Traçons un cercle de centre 𝐴 et examinons tous les autres points d’entrée à l’intérieur de ce cercle, puis déterminons où la fonction prend tous ces points dans l’espace de sortie. Maintenant, traçons le plus petit cercle possible, de centre 𝐵, comprenant ces sorties. Des choix différents pour la taille du cercle d’entrée peuvent entraîner des cercles plus grands ou plus petits dans l’espace de sortie. Mais remarquez ce qui se passe lorsque nous recourons à ce processus en un point où la fonction saute. Traçons un cercle autour de 𝐴 et regardons les points d’entrée dans le cercle, voyons où ils se situent et traçons le plus petit cercle possible de centre 𝐵 comprenant ces points, peu importe comment le cercle de centre 𝐴 est petit, le cercle correspondant de centre 𝐵 ne peut tout simplement pas être plus petit que ce saut.

Pour cette raison, nous disons que la fonction est « discontinue en 𝐴 » s’il existe une borne inférieure sur la taille de ce cercle autour de 𝐵. Si au contraire, le cercle autour de 𝐵 peut être aussi petit que vous le voulez avec des choix suffisamment petits pour les cercles autour de 𝐴, on dit que la fonction est « continue en 𝐴 ». La fonction dans son ensemble est appelée « continue » si elle est continue en chaque point d’entrée possible.

Maintenant, avec cette définition formelle des courbes, vous êtes prêts à définir ce qu’est une véritable courbe de Hilbert. Cela repose sur une propriété intéressante de la séquence des pseudo-courbes de Hilbert, qui devrait sembler familière. Prenez un point d’entrée donné tel que 0.3 et appliquez chacune des fonctions successives de pseudo-courbe de Hilbert en ce point. Les sorties correspondantes, en augmentant l’ordre de la courbe, se rapprochent d’un point particulier de l’espace. Peu importe l’entrée avec laquelle vous commencez. Cette séquence de sorties obtenues en appliquant chacune des successives pseudo-courbe de Hilbert en ce point se stabilise, et se rapproche toujours d’un point particulier de l’espace en 2D. D’ailleurs, ce n’est absolument pas vrai pour les courbes-serpents. Ou, en fait, la plupart des séquences de courbes remplissant un espace pixélisé de résolutions de plus en plus élevées. Les sorties associées à l’entrée donnée deviennent extrêmement erratiques alors que la résolution augmente, sautant toujours de gauche à droite et ne s’approchant jamais de rien.

Maintenant, à cause de cette propriété, nous pouvons définir une fonction de courbe de Hilbert comme celle-ci. Pour une valeur d’entrée donnée comprise entre zéro et un, considérons la séquence de points dans l’espace 2D obtenue en appliquant chaque successive fonction de pseudo-courbe de Hilbert en ce point. La sortie de la fonction de courbe de Hilbert évaluée sur cette entrée est simplement définie comme étant la limite de ces points. Étant donné que la séquence des sorties de pseudo-courbe de Hilbert converge toujours, quelle que soit l’entrée avec laquelle vous commencez, il s’agit en fait d’une fonction bien définie d’une manière qui n’aurait jamais pu l’être si nous avions utilisé des courbes-serpents.

Maintenant, je ne vais pas vous expliquer pourquoi cela donne une courbe remplissante, mais au moins voyons ce qui doit être prouvé. Tout d’abord, vérifions qu’il s’agit d’une fonction bien définie en prouvant que les sorties des fonctions pseudo-courbe de Hilbert convergent vraiment de la même façon que je vous ai expliquée. Deuxièmement, montrons que cette fonction donne une courbe, ce qui signifie qu’elle est continue. Troisièmement, et le plus important, montrez qu’elle remplit l’espace, c’est-à-dire que chaque point du carré unité est une sortie de cette fonction. J’encourage vraiment tous ceux qui regardent cette vidéo à tenter le coup en chacun d’entre eux. Alerte spoiler : ces trois faits s’avèrent être vrais !

Vous pouvez étendre cela à une courbe qui remplit tout l’espace en carrelant l’espace avec des carrés, puis en enchaînant un ensemble de courbes de Hilbert en un motif de tuiles en spirale, reliant la fin d’une tuile au début d’une nouvelle, ajoutant un petit bout de ligne si vous en avez besoin. Vous pouvez imaginer que la première tuile provient de l’intervalle de zéro à un, la deuxième de l’intervalle de un à deux, et ainsi de suite. Ainsi, toute la droite de nombres réels positifs est mappée dans tout l’espace 2D. Prenez le temps d’assimiler cela. Une ligne, la forme platonique de la minceur elle-même, peut errer dans un espace infiniment étendu et richement dense, et toucher chaque point.

Notez que la principale propriété qui rend les pseudo-courbes de Hilbert utiles dans l’application transformant la vue en son et dans leurs origines infinies est que les points de la courbe se déplacent de moins en moins alors que vous augmentez l’ordre de ces courbes. Lors de la conversion des images en sons, cela était utile car cela signifie que passer à une résolution supérieure ne nécessite pas de recycler à nouveau vos sens. Pour les mathématiciens intéressés par le remplissage d’un espace continu, cette propriété est ce qui fait que parler de la limite d’une séquence de courbes est réellement utile. Et cette connexion ici entre le monde infini et le monde fini semble être plus une règle mathématique qu’une exception.

Un autre exemple cité par plusieurs commentateurs astucieux de la vidéo « Inventer les mathématiques » est le lien entre la somme divergente de toutes les puissances de deux et la façon dont le nombre moins un est représenté dans les ordinateurs avec des bits. Ce n’est pas tellement que le résultat infini soit directement utile. Mais au lieu de cela, les mêmes modèles et constructions utilisés pour définir et prouver des faits infinis ont des analogues finis, et ces analogues finis sont directement utiles. Mais le lien est souvent plus profond qu’une simple analogie. De nombreux théorèmes sur un objet infini sont souvent équivalents à certains théorèmes concernant une famille d’objets finis.

Par exemple, si au cours de votre projet son-vue, vous deviez vous asseoir et formaliser réellement ce que signifie pour votre courbe de rester stable alors que vous augmentez la résolution de la caméra, alors vous finiriez par écrire efficacement la définition de ce que signifie pour une séquence de courbes d’avoir une limite. En fait, une affirmation sur un objet infini, qu’il s’agisse d’une séquence ou d’une fractale, peut généralement être considérée comme un moyen particulièrement net d’encapsuler une vérité sur une famille d’objets finis.

La leçon à retenir ici est que, même si une affirmation semble très éloignée de la réalité, vous devriez toujours être prêt à regarder sous le capot et à comprendre le détail de ce qui se dit réellement. Qui sait ? Vous pourriez trouver des idées pour représenter des nombres à partir de sommes divergentes ou pour voir avec vos oreilles à partir de l’espace.

Nagwa utilise des cookies pour vous garantir la meilleure expérience sur notre site. En savoir plus sur notre Politique de Confidentialité.