Principe des tiroirs

Un article de Wikipédia, l'encyclopédie libre.

En mathématiques, le principe des tiroirs de Dirichlet, affirme que, si chaussettes sont rangées dans tiroirs, et que , alors il y a un tiroir qui contient au moins deux chaussettes. Mathématiquement, le principe peut s'énoncer ainsi :

Si et sont deux ensembles finis tels que , alors il n'existe pas d'application injective de dans .

Appellation[modifier | modifier le code]

La première version du principe fut énoncée par Dirichlet en 1834 sous le nom de Schubfachprinzip (« principe du tiroir ») ; sa première utilisation lui est cependant antérieure d'au moins deux siècles[1],[note 1]. Dans certains pays comme la Russie, ce principe s'appelle le principe de Dirichlet (à ne pas confondre avec le principe du maximum pour les fonctions harmoniques portant le même nom). Ce principe est aussi appelé principe des tiroirs de Dirichlet-Schläfli.

On a ici pigeons répartis dans cases. Il y a donc une case qui contient au moins deux pigeons (sur l'image, en haut à gauche).

En anglais, ce principe est appelé pigeonhole principle. Il fait référence à la répartition des pigeons dans les cases (ou « boulins ») d'un pigeonnier[note 2].

Généralisations[modifier | modifier le code]

Une version généralisée de ce principe déclare que, si n objets discrets occupent m récipients, alors au moins un récipient doit contenir au moins objets où est la fonction partie entière par excès, qui associe à un réel x le plus petit entier supérieur ou égal à x ; ce nombre peut s'écrire avec la fonction partie entière : .

Le principe des tiroirs est un exemple d'argument de dénombrement. Ce principe peut être appliqué à de nombreux problèmes sérieux, y compris ceux qui impliquent des ensembles infinis qui ne peuvent pas être mis en correspondance univoque. En approximation diophantienne, l'application quantitative du principe montre l'existence de solutions entières d'un système d'équations linéaires, résultat qui porte le nom de lemme de Siegel.

Des généralisations aux ensembles infinis existent ; ainsi, une partition d'un ensemble de cardinal α en β sous-ensembles, avec β<α, contient au moins un sous-ensemble de cardinal α si α est un cardinal régulier (en admettant l'axiome du choix).

Applications[modifier | modifier le code]

Bien que le principe des tiroirs semble être une observation triviale, il peut être employé de manière inattendue pour démontrer des résultats complexes.

En dehors du champ des sciences[modifier | modifier le code]

Il est certain qu'au moins deux personnes en Australie ont exactement le même nombre de cheveux sur leur tête. En effet il est raisonnable de supposer que personne n'a plus de 6 000 000 cheveux sur la tête (une tête normale a environ 100 000 cheveux[3]). Or l'Australie compte plus de 24 000 000 habitants. Si nous associons à chaque nombre de cheveux sur une tête un tiroir, et si nous plaçons chaque Australien dans le tiroir correspondant à son nombre de cheveux sur la tête, alors d'après le principe des tiroirs, il y a nécessairement au moins deux personnes ayant exactement le même nombre de cheveux sur la tête en Australie[4]. De plus comme il y a quatre fois plus d'Australiens que de tiroirs, on peut affirmer qu'il existe au moins quatre Australiens ayant le même nombre de cheveux[4].

Géométrie[modifier | modifier le code]

Subdivisions d'un triangle[modifier | modifier le code]

Les quatre petits triangles ont une aire égale au quart de celle du grand triangle. Si l'on choisit 9 points dans le grand triangle, alors d'après le principe des tiroirs l'un au moins des quatre petits triangles en contiendra 3.

Soit un triangle d'aire égale à 1. Si l'on choisit 9 points à l'intérieur de celui-ci, alors on peut en trouver trois d'entre eux qui déterminent un triangle d'aire inférieure à . En effet on peut découper le triangle en 4 triangles d'aire quatre fois plus petite, et d'après le principe des tiroirs généralisé l'un au moins de ces petits triangles contiendra au moins trois points, délimitant une aire inférieure au quart de celle du grand triangle[5],[6],[note 3].

La méthode peut être raffinée, toujours à l'aide du principe des tiroirs, en faisant usage de ce que trois points dans un parallélogramme d'aire délimitent nécessairement une aire inférieure à [5]. En choisissant comme tiroirs les trois parallélogrammes formés par l'un des sommets et par le triangle des milieux (en)[note 4], il s'ensuit que parmi 7 points quelconques dans un triangle d'aire 1, on peut en trouver 3 qui délimitent un triangle d'aire [5],[6],[note 3].

Combinatoire[modifier | modifier le code]

Sous-ensembles d'entiers de même somme[modifier | modifier le code]

Parmi les nombres allant de 1 à 100, on en choisit dix différents. Il existe toujours deux sous-ensembles disjoints non vides de ces dix nombres ayant la même somme[4]. En effet les sommes des sous-ensembles peuvent valoir entre 1 et 955[note 5], alors qu'il y a 2¹⁰-1 = 1023 sous-ensembles non vide possibles : on doit donc répartir 1023 éléments (les sous-ensembles) dans 955 tiroirs (les différentes sommes) donc l'un des tiroirs contient deux combinaisons différentes ayant la même somme[4],. Les deux combinaisons obtenues peuvent ne pas être disjointes mais comme elles sont différentes il est possible de supprimer tous les éléments communs pour obtenir deux combinaisons non-vides de même somme. Cette méthode ne permet cependant pas de trouver d'exemple de deux telles sommes[note 6].

Problèmes d'empilement[modifier | modifier le code]

Points inévitables lorsque l'on essaie de disposer des carrés de taille 1 dans un carré de taille inférieure à 5 : comme il y a 23 points il n'est pas possible de disposer 24 carrés d'après le principe des tiroirs.

Un problème d'empilement est une situation où l'on cherche à agencer des objets dans une forme plus grande de façon à pouvoir en disposer le plus possible sans qu'il n'y ait de recoupement. Trouver le nombre maximal d'objets que l'on peut disposer peut être un problème difficile ; pour obtenir une borne inférieure il suffit d'exhiber un exemple de disposition mais trouver une borne supérieure est nettement plus difficile. L'une des techniques pouvant être utilisée est d'identifier un ensemble de points dont on est sûr que chaque objet de la configuration choisie couvrira au moins l'un des points : le principe des tiroirs assure alors qu'il est impossible de disposer plus d'objet qu'il n'y a de points-tiroirs. Ce type de raisonnement est utilisé dans le problème de l'empilement de carrés dans un carré[7].

Mathématiques récréatives[modifier | modifier le code]

Disposition de fous sur un échiquier[modifier | modifier le code]

Par analogie avec le problème des huit dames, on peut se demander combien de fous au maximum on peut disposer sur un échiquier sans qu'aucun d'eux ne soit en prise si l'on ne tient pas compte de leurs couleurs.

On peut montrer en exhibant un exemple bien choisi[note 7] que la bonne réponse est supérieure ou égale à 14. Pour montrer qu'elle est également inférieure ou égale à 14, et donc égale à 14, on peut avoir recours au principe des tiroirs. Pour cela on subdivise astucieusement l'échiquier en 14 groupes de cases de telle sorte que deux fous posés sur deux cases d'un même groupe se menacent forcément : le principe des tiroirs permet alors d'affirmer qu'il est impossible de disposer 15 fous sans qu'au moins deux d'entre eux soient placés dans un même groupe et se menacent mutuellement[8].

abcdefgh
8
Fou noir sur case blanche a8
Fou noir sur case noire b8
Fou noir sur case blanche c8
Fou noir sur case noire d8
Fou noir sur case blanche e8
Fou noir sur case noire f8
Fou noir sur case blanche g8
Fou noir sur case noire h8
Fou noir sur case blanche b1
Fou noir sur case noire c1
Fou noir sur case blanche d1
Fou noir sur case noire e1
Fou noir sur case blanche f1
Fou noir sur case noire g1
8
77
66
55
44
33
22
11
abcdefgh
Disposition où aucun des 14 fous ne menace les autres.
Partage d'un échiquier en 14 tiroirs colorés dans chacun desquels deux fous se menacent forcément

Théorie des nombres[modifier | modifier le code]

Approximation d'un réel[modifier | modifier le code]

Soient un réel x et un entier n > 0. Pour tout réel y, on note {y} sa partie fractionnaire (c'est-à-dire la différence entre y et sa partie entière). Les n + 1 éléments 0, {x}, … , {n x} de [0, 1[ (non nécessairement distincts) se répartissent dans les n « tiroirs » [r/n, (r + 1)/n[, où r = 0, … , n – 1. Il existe donc un entier r et deux entiers 0 ≤ k < ln tels que :

et donc :

.

En notant p la différence des parties entières de lx et kx, on en déduit :

,

ou encore, en introduisant l'entier q = l – k ≥ 1 :

[9],[note 8].

On démontre de même le théorème d'approximation de Dirichlet, un résultat plus général d'approximation simultanée de d réels. Pour d = 1, on en déduit que la mesure d'irrationalité de tout nombre irrationnel est supérieure ou égale à 2.

Informatique[modifier | modifier le code]

Problème de recherche des plus proches voisins[modifier | modifier le code]

Le grand rectangle est découpé en 8 carrés de côté . Deux points dans un de ces 8 tiroirs sont séparés de moins de  : on ne peut donc pas placer 9 points séparés de dans le grand rectangle.

L'un des problèmes fondateurs de la géométrie algorithmique consiste à identifier parmi un ensemble de points la paire séparée par la plus petite distance. Une technique de résolution efficace repose sur la technique diviser pour régner. Celle-ci nécessite de savoir combien, dans un rectangle de longueur et de largeur , on peut avoir de points séparés par une distance au moins égale à [note 9]. Par principe des tiroirs on peut montrer que ce nombre est nécessairement inférieur ou égal à 8[10].

Une paire de points les plus proches (en rouge).

Lemme de l'étoile[modifier | modifier le code]

La preuve la plus classique du lemme de l'étoile repose essentiellement sur l'application du principe des tiroirs où chaque tiroir est un état d'un automate fini.

Fonction de hachage[modifier | modifier le code]

Une fonction de hachage est une fonction qui transforme une suite de bits de longueur arbitraire en une chaîne de longueur fixe. Du fait qu'il y a plus de chaînes possibles en entrée qu'en sortie découle par le principe des tiroirs l'existence de collisions : plusieurs chaînes distinctes ont le même haché. Rendre ces collisions difficiles à déterminer efficacement est un enjeu important en cryptographie.


Preuve en logique propositionnelle[modifier | modifier le code]

On considère un nombre entier . Dire que lorsque l'on répartit pigeons dans trous, un trou au moins comprend 2 pigeons, c'est affirmer la négation de la proposition « il existe une répartition de pigeons dans trous telle que chaque trou contienne au plus un seul pigeon ».

Or on peut montrer que toutes les preuves par réfutations en résolution de la formule propositionnelle qui dit « il y a pigeons dans trous et au plus un pigeon par trou » est asymptotiquement de taille au moins , c'est-à-dire que la taille minimale d'une preuve de cette proposition croît exponentiellement avec le nombre de trous[11].

Exemple[modifier | modifier le code]

On considère le cas où , c'est-à-dire que l'on essaie de ranger 4 pigeons dans 3 trous. Pour tout et tout on définit la variable booléenne qui vaut si le pigeon numéro est dans le trou numéro et qui vaut sinon.

Expression du rangement des pigeons[modifier | modifier le code]

Soit . On écrit que le pigeon numéro est dans l'un des trois trous par la formule logique :

Le fait que chacun des quatre pigeons soit dans un des trous s'écrit donc :

Expression de ce qu'aucun trou ne contient plus d'un pigeon[modifier | modifier le code]

Soit . On écrit que le trou numéro contient au plus un pigeon, c'est-à-dire qu'il contient soit 0 pigeon, soit un seul des pigeons numérotés de 1 à 4 :

Formule logique résultante[modifier | modifier le code]

La proposition « il existe une répartition de 4 pigeons dans 3 trous telle que chaque pigeon soit dans un trou et telle que chaque trou contienne au plus un seul pigeon » s'écrit donc sous la forme de la conjonction de clauses suivante :

Taille de la preuve de réfutation[modifier | modifier le code]

On cherche à montrer que la formule logique précédente est fausse. Pour cela il faut montrer qu'aucune des instanciations des 12 variables ne satisfait la formule. D'un point de vue informel, le théorème affirme qu'il n'existe pas de moyen « court » de montrer cela.

Notes et références[modifier | modifier le code]

Notes[modifier | modifier le code]

  1. Le principe est notamment utilisé au XVIIe siècle par Jean Leurechon dans sa Récréation mathématique: Composée de plusieurs problèmes plaisants
  2. Le mot pigeonhole désigne bien originellement les boulins, mais également et par analogie (depuis le 18e siècle) les tiroirs d'un bureau[2].
  3. a et b En fait les deux références indiquent aussi que l'on peut montrer que cinq points suffisent (et que quatre ne suffisent pas) et donnent une généralisation pour tout polygone convexe, mais la preuve en est beaucoup plus difficile et ne fait plus appel au principe des tiroirs.
  4. Sur l'image ci contre, il s'agit des trois parallélogrammes formés par le triangle rouge et l'un des trois triangles noirs. Le fait que leur intersection soit non-vide n'invalide pas la méthode.
  5. En effet 955 = 91 + 92 + 93 + 94 + 95 + 96 + 97 + 98 + 99 + 100.
  6. Par exemple si les nombres de départ sont 15, 22, 24, 29, 31, 37, 45, 68, 76 et 90, la méthode proposée ne permet pas de trouver que 15 + 37 + 68 = 22 + 24 + 29 + 45 = 120.
  7. Par exemple en disposant huit fous sur la rangée supérieure, et six sur la rangée inférieure, les coins étant exclus.
  8. En affinant ce raisonnement, (en) Yann Bugeaud, Approximation by Algebraic Numbers, CUP, , 292 p. (ISBN 978-0-521-82329-6, lire en ligne), p. 2, trouve deux entiers q (encore compris entre 1 et n) et p, vérifiant même : .
  9. On se place ici dans le cas où tous les points sont dans un même plan, mais il est possible d'utiliser des arguments analogues pour des dimensions supérieures, par exemple avec 16 sous-cubes d'arête si l'on a des points répartis dans l'espace.

Références[modifier | modifier le code]

  1. (en) Benoît Rittaud et Albrecht Heeffer, « The pigeonhole principle, two centuries before Dirichlet », The Mathematical Intelligencer, vol. 36, no 2,‎ , p. 27-29 (DOI 10.1007/s00283-013-9389-1, lire en ligne).
  2. Voir cette analyse (en) sur le site étymologique de Webster.
  3. (en) [vidéo] Numberphile, A Hairy Problem (and a Feathery Solution) sur YouTube
  4. a b c et d (en) [vidéo] Mathologer, The Pigeon Hole Principle: 7 gorgeous proofs sur YouTube, chapitre 1.
  5. a b et c Jean-Paul Delahaye, Inventions mathématiques, Paris, Belin, coll. « Pour la Science », , 191 p. (ISBN 978-2-84245-128-8, lire en ligne), Arts géométriques sur un plan, chap. 3 (« Non, la géométrie du triangle n'est pas morte ! »), p. 26-33.
  6. a et b (en) Alexander Soifer, How Does One Cut a Triangle ?, Springer, (1re éd. 1990) (lire en ligne), chap. 7 (« Pursuit of the best result »).
  7. (en) Erich Friedman, « Packing Unit Squares in Squares : A Survey and New Results », sur Electronic Journal of Combinatorics, .
  8. Jean-Paul Delahaye, « Logique et calcul : Le principe des tiroirs », Pour la science, no 433,‎ , p. 78.
  9. G. H. Hardy et E. M. Wright (trad. de l'anglais par François Sauvageot, préf. Catherine Goldstein), Introduction à la théorie des nombres [« An Introduction to the Theory of Numbers »] [détail de l’édition], p. 200-201.
  10. (en) Martin Rau et Tobias Nipkow, « Verification of Closest Pair of Points Algorithms », Lecture Notes in Computer Science (en),‎ (lire en ligne), disponible en accès libre.
  11. (en) Sanjeev Arora et Boaz Barak, Computational complexity, p. 310, Theorem 15.1

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Bibliographie[modifier | modifier le code]