Flèches

Le signe égal date de 1557 ; les signes plus et moins remontent au XVe siècle. La flèche, aujourd'hui le symbole le plus visible des mathématiques, ne s'est répandue qu'au XXe siècle. Et à peine arrivée, elle a pris le premier rôle : en théorie des catégories, les flèches entre les objets comptent davantage que les objets eux-mêmes. Cette page parcourt la quarantaine de flèches que LaTeX sait composer autour d'une seule idée : la forme d'une flèche dit ce qu'elle signifie. Le plus souvent, le dessin choisit à votre place.

Les flèches vivent en mode mathématique

Pour TeX, une flèche n'est pas un dessin mais une relation, et les relations portent une espace fixe de part et d'autre. C'est pourquoi écrire \to dans le texte courant est une erreur et non pas seulement une maladresse : hors du mode mathématique, cette règle d'espacement n'existe tout simplement pas. Il faut d'abord passer en mode mathématique, comme dans $f\colon A \to B$. La nomenclature est résolument mécanique : une direction (left, right, up, down) combinée à une forme. Une initiale majuscule donne la forme à double trait (\Rightarrow ⇒), le préfixe long la forme allongée (\longrightarrow ⟶). Les noms se construisent au lieu de s'apprendre par cœur.

latex
% a map, and a chain of implications
\[
  P \implies Q, \qquad x \to 0, \qquad a_n \to L \;(n \to \infty)
\]

Deux alias méritent qu'on en connaisse l'origine : après cela, on ne les oublie plus. \to est un alias de \rightarrow et \gets de \leftarrow — mais le nom \gets vient de l'informatique, pas des mathématiques. x \gets 1 se lit « x gets 1 », c'est-à-dire une affectation. Knuth, l'auteur de TeX, a aussi écrit The Art of Computer Programming et a transporté tel quel le vocabulaire des algorithmes dans son système de composition. Le second est \iff (⟺). L'abréviation « iff » pour « if and only if » a été popularisée par le mathématicien Paul Halmos, à qui l'on doit également le carré évidé ∎ qui clôt une démonstration, toujours appelé symbole de Halmos. En pratique : le court \to et \gets pour les applications et les limites, \iff pour les énoncés d'équivalence.

Flèches horizontales : à quoi sert le second trait

Les flèches horizontales forment une famille à trait simple (\leftarrow, \rightarrow, \leftrightarrow) et une famille à double trait (\Leftarrow, \Rightarrow, \Leftrightarrow), chacune avec sa variante long. La distinction n'est pas ornementale. Par une convention que les lecteurs partagent, le trait simple → porte les applications entre ensembles ou objets, tandis que le double trait ⇒ porte l'implication entre propositions. Ainsi, lorsque « f : A → B » et « P ⇒ Q » voisinent sur une page, le seul nombre de traits signale qu'il s'agit de niveaux différents. Les formes longues ont une longueur fixe ; ce ne sont pas les flèches extensibles de la fin de cette page.

CommandeGlypheSignification / utilisation
\leftarrowflèche vers la gauche (identique à \gets)
\getsalias de \leftarrow ; note une affectation
\rightarrowflèche vers la droite (identique à \to) ; pour les applications
\toalias pour \rightarrow; f\colon A \to B
\leftrightarrowflèche gauche-droite
\longleftarrowlongue flèche vers la gauche
\longrightarrowlongue flèche vers la droite
\longleftrightarrowlongue flèche gauche-droite
\Leftarrowflèche double vers la gauche
\Rightarrowflèche vers la droite à double ligne; implique
\Leftrightarrowflèche gauche-droite à double ligne; équivalence
\Longleftarrowlongue flèche vers la gauche à double ligne
\Longrightarrowlongue flèche vers la droite à double ligne
\Longleftrightarrowlongue flèche gauche-droite à double ligne
\iffsi et seulement si; \Longleftrightarrow avec espace supplémentaire

Dans les textes de logique riches en prose, amsmath ajoute \implies (⟹) et \impliedby (⟸), qui complètent l'ensemble. Ce sont \Longrightarrow et \Longleftarrow avec une espace supplémentaire de chaque côté — la même que celle de \iff. Écrire une chaîne « P \implies Q \iff R » laisse respirer les symboles, et cette espace joue le rôle d'une ponctuation : même une longue formule montre où reprendre son souffle. À l'inverse, une succession de \Rightarrow serrés a tendance à s'agglutiner.

Quand la forme est la définition : applications et crochets

À partir d'ici, les flèches deviennent du vocabulaire. \mapsto (↦) porte une barre verticale à sa base et signifie non pas « de l'ensemble A vers l'ensemble B » mais « cet élément va sur celui-là ». Écrire x \mapsto x^2 à côté de f\colon \mathbb{R} \to \mathbb{R} sépare en une seule ligne l'application elle-même de la correspondance des éléments. Cette notation s'est répandue par les ouvrages du collectif Bourbaki. Le crochet de \hookrightarrow (↪) évoque l'accrochage et marque par convention une inclusion : un sous-ensemble plongé tel quel dans un ensemble plus grand. Les deux appartiennent au LaTeX standard et ne demandent aucun package.

CommandeGlypheSignification / utilisation
\mapstocorrespondance élément par élément ; x \mapsto x^2
\longmapstoflèche de correspondance allongée
\hookleftarrowflèche gauche avec crochet
\hookrightarrowflèche droite à crochet ; inclusion (injective)
latex
\[
  f\colon \mathbb{R} \to \mathbb{R}, \quad x \mapsto x^2,
  \qquad \mathbb{Z} \hookrightarrow \mathbb{Q}
\]

Lorsqu'on veut énoncer directement l'injectivité ou la surjectivité, les formes deviennent les plus éloquentes. Dans amssymb, \rightarrowtail (↣) se dote d'une queue à sa base et \twoheadrightarrow (↠) double sa pointe. La queue se lit « chacun vers sa propre cible » — injectif — et la pointe doublée « recouvrant tout l'autre côté » — surjectif ; une flèche portant les deux, ⤖, désigne une bijection. Autrement dit, décomposez une flèche en ses trois parties (base, hampe, pointe) et vous lisez son sens directement. La convention dépend toutefois du contexte : dans un article, le plus sûr est de définir le symbole une fois à sa première apparition. N'utilisez pas \mapsto pour les inclusions et ne confondez pas \hookrightarrow avec \rightarrowtail.

Verticales et diagonales : l'ossature des diagrammes

Les flèches verticales et diagonales prennent tout leur sens dans les diagrammes commutatifs. Ces diagrammes sont entrés dans l'usage courant en 1945, dans l'article où Samuel Eilenberg et Saunders Mac Lane ont fondé la théorie des catégories, et ils ont imposé une écriture des mathématiques où les objets sont des sommets et les applications des arêtes. La famille verticale comprend \uparrow, \downarrow, \updownarrow et les formes à double trait \Uparrow, \Downarrow, \Updownarrow. Les quatre diagonales sont \nearrow (↗), \searrow (↘), \swarrow (↙) et \nwarrow (↖) — les noms sont simplement les points cardinaux nord-est, sud-est, sud-ouest et nord-ouest. En analyse, ↗ et ↘ signalent aussi une convergence croissante ou décroissante. Notez que \uparrow et ses parents servent également de délimiteurs pour \left … \right.

CommandeGlypheSignification / utilisation
\uparrowflèche vers le haut
\downarrowflèche vers le bas
\updownarrowflèche haut-bas
\Uparrowflèche vers le haut à double ligne
\Downarrowflèche vers le bas à double ligne
\Updownarrowflèche haut-bas à double ligne
\nearrowflèche nord-est
\searrowflèche sud-est
\swarrowflèche sud-ouest
\nwarrowflèche nord-ouest

Harpons et amssymb : ce que dit une flèche à un seul barbillon

Un harpon est une flèche munie d'un barbillon d'un seul côté. Combinant un barbillon supérieur et un inférieur, \rightleftharpoons (⇌) est le symbole usuel de la réaction réversible ou de l'équilibre en chimie. Le demi-barbillon est lui-même le sens : les deux flèches représentent la réaction directe et la réaction inverse comme deux processus distincts, ce qui diffère du ⇄ entièrement barbelé. Pour composer sérieusement de la chimie, le package mhchem permet d'écrire \ce{A <=> B} et gère au passage les coefficients et les symboles d'état. Les harpons apparaissent aussi en physique, par exemple dans les notations liées au moment cinétique.

CommandeGlypheRemarques
\rightharpoonupvers la droite, barbe vers le haut (standard)
\rightharpoondownvers la droite, barbe vers le bas (standard)
\leftharpoonupvers la gauche, barbe vers le haut (standard)
\leftharpoondownvers la gauche, barbe vers le bas (standard)
\rightleftharpoonsflèche à réaction réversible (standard)

En revanche, les flèches décoratives — pointes doublées, queues, traits discontinus — ne font pas partie du LaTeX standard et exigent \usepackage{amssymb}. Ce package appartient à un ensemble de fontes et de macros produit par l'American Mathematical Society pour fournir les symboles qui manquaient aux mathématiciens dans les fontes mathématiques conçues à l'origine par Knuth. Autrement dit : chaque flèche du tableau ci-dessous existe parce que quelqu'un en a eu besoin dans un article.

CommandeGlypheSignification / utilisation (amssymb)
\twoheadrightarrowflèche droite à double pointe ; surjective
\twoheadleftarrowflèche gauche à deux pointes
\rightarrowtailflèche droite à queue ; injective
\leftarrowtailflèche gauche avec queue
\rightrightarrowsdeux flèches droite côte à côte
\leftleftarrowsdeux flèches gauche côte à côte
\rightleftarrowsflèches appariées droite-gauche
\rightsquigarrowflèche droite ondulée
\leftrightsquigarrowflèche gauche-droite ondulée
\curvearrowrightflèche courbée dans le sens des aiguilles d'une montre
\nrightarrowflèche droite annulée (barrée)
\nRightarrowflèche droite à double ligne annulée

Des flèches qui s'allongent pour porter une étiquette

Toutes les flèches vues jusqu'ici avaient une longueur fixe. amsmath fournit \xrightarrow{…} et \xleftarrow{…}, dont la hampe s'allonge elle-même pour s'ajuster à l'étiquette placée au-dessus. On les emploie lorsqu'une application mérite un nom — A \xrightarrow{\ f\ } B — ou lorsqu'il faut inscrire une condition sur l'arête d'une suite exacte ou d'un diagramme commutatif. L'ancien procédé consistant à empiler du texte sur un \longrightarrow de longueur fixe avec \stackrel fonctionne toujours, mais le texte déborde dès qu'il est plus large ; les formes extensibles sont aujourd'hui le choix naturel.

latex
\usepackage{amsmath}   % \xrightarrow, \xleftarrow
% \usepackage{mathtools} % also \xLeftarrow, \xhookrightarrow, \xmapsto
\[
  A \xrightarrow{\;f\;} B \xrightarrow{\;g\;} C,
  \qquad x \xrightarrow[n\to\infty]{} L
\]

L'ajout de l'argument optionnel entre crochets permet d'écrire aussi sous la flèche. \xrightarrow[n \to \infty]{\ a_n\ } place le nom de l'application au-dessus et la condition en dessous : un énoncé sur une limite ou une convergence tient alors sur une seule flèche. Dès qu'il s'agit de construire un diagramme complet, un package spécialisé comme tikz-cd se révèle plus rapide ; la répartition pratique est donc : \xrightarrow pour une flèche isolée dans le texte, tikz-cd pour le diagramme lui-même.

En résumé, la décision se prend en trois temps. Pour les applications et les relations, le LaTeX standard suffit (\to, \mapsto, \hookrightarrow, \Rightarrow). Lorsque la forme elle-même doit porter un sens — injectif, surjectif, équilibre —, on recourt à amssymb. Lorsque la flèche doit porter une étiquette et s'allonger, on prend la famille \xrightarrow d'amsmath. Et dès qu'il s'agit de dessiner le diagramme lui-même, on passe à tikz-cd. Choisir une flèche, c'est aussi indiquer au lecteur, sans le dire, à quel niveau du raisonnement il se trouve.