Les grandes constructions

Informatique — LaTeX, chapitre 3

Le chapitre 1 a montré une somme, une matrice, un système. Ce chapitre reprend chacune de ces constructions pour en donner les variantes que réclame un travail réel : une somme à double indice, une équation trop longue pour tenir sur une ligne, une démonstration alignée sur ses signes d’égalité.

C’est le dernier chapitre consacré aux mathématiques. Après lui, vous saurez écrire toutes les formules d’un mémoire.

3.1 Les grands opérateurs

3.1.1 Bornes au-dessus ou à côté

\sum_{i=1}^{n} x_i \quad \prod_{i=1}^{n} x_i \quad \int_{0}^{1} f(x)\,\mathrm{d}x
\displaystyle\sum_{i=1}^{n} x_i \quad \displaystyle\int_{0}^{1} f(x)\,\mathrm{d}x
ImportantPourquoi vos sommes changent d’aspect

LaTeX emploie deux styles : en ligne, au fil du texte, où il comprime pour ne pas écarter les lignes ; hors ligne, dans une équation isolée, où il déploie.

Dans un vrai document, $\sum_{i=1}^n$ s’écrit compressé, alors que le même code entre \[ ... \] s’affiche déployé. Ce n’est pas un défaut.

Si vous voulez la forme développée au milieu d’une phrase, préfixez par \displaystyle. Mais réfléchissez-y à deux fois : elle écarte les lignes du paragraphe et rend le texte irrégulier.

3.1.2 Plusieurs conditions sous un opérateur

\sum_{\substack{i=1 \\ i \neq j}}^{n} x_i
\sum_{i=1}^{n} \sum_{j=1}^{m} a_{ij} \qquad \sum_{1 \le i < j \le n} a_{ij}

\substack{... \\ ...} empile plusieurs lignes sous l’opérateur. La seconde écriture — une condition unique et lisible — est souvent préférable.

3.1.3 Intégrales multiples et opérateurs personnalisés

\iint_D f \quad \iiint_V f \quad \oint_C f
\hat{\beta} = \operatorname*{arg\,min}_{\beta} \sum_{i=1}^{n} (y_i - x_i'\beta)^2
Astuce\operatorname* pour argmin et argmax

\arg\min n’existe pas en LaTeX de base. \operatorname*{arg\,min} compose le nom en romain droit, comme \sin ou \log, et l’astérisque place l’indice dessous en mode déployé.

Sans astérisque, l’indice se met à droite. Comparez les deux dans l’éditeur.

Dans un vrai document, déclarez-le une fois dans le préambule :

\DeclareMathOperator*{\argmin}{arg\,min}

Vous écrirez ensuite simplement \argmin_{\beta}.

3.2 Les équations sur plusieurs lignes

C’est le besoin le plus fréquent, et celui qui distingue le mieux les environnements.

3.2.1 align — aligner sur un point

\begin{aligned} (a+b)^2 &= (a+b)(a+b) \\ &= a^2 + ab + ba + b^2 \\ &= a^2 + 2ab + b^2 \end{aligned}

Le & marque la colonne d’alignement, \\ change de ligne. Notez que le & se place avant le signe égal : c’est lui qu’on veut voir aligné.

Avertissementalign ou aligned ?

align est un environnement autonome, qui crée son propre bloc d’équation et numérote chaque ligne.

aligned s’emploie à l’intérieur d’un autre environnement mathématique.

Dans un document, écrivez \begin{align} ... \end{align} directement. L’éditeur de cette page étant déjà en mode mathématique, il faut y employer aligned — d’où son usage ici.

3.2.2 Une équation trop longue

\begin{aligned} S ={}& a_1 + a_2 + a_3 + a_4 + a_5 \\ &+ a_6 + a_7 + a_8 + a_9 \end{aligned}

La convention typographique veut qu’on coupe avant un opérateur, jamais après : le lecteur voit d’emblée que la ligne suivante continue une addition.

Le {} après = force LaTeX à traiter le signe comme une relation malgré la coupure, et à conserver l’espacement correct.

3.2.3 Sans alignement

\begin{gathered} E(\hat{\beta}) = \beta \\ V(\hat{\beta}) = \sigma^2 (X'X)^{-1} \end{gathered}

gather — ou gathered à l’intérieur — centre chaque ligne indépendamment. À employer quand les lignes n’ont pas de structure commune.

3.3 Les cas et les systèmes

3.3.1 cases — une définition par morceaux

\mathbf{1}_A(x) = \begin{cases} 1 & \text{si } x \in A \\ 0 & \text{sinon} \end{cases}

cases place automatiquement l’accolade gauche et aligne deux colonnes : la valeur, puis la condition. C’est plus court et plus sûr que la construction manuelle du chapitre 1.

Notez \text{si } avec l’espace à l’intérieur des accolades : hors de \text, LaTeX ignore les espaces en mode mathématique.

\rho(u) = \begin{cases} \frac{1}{2}u^2 & \text{si } |u| \le \delta \\[4pt] \delta\left(|u| - \frac{1}{2}\delta\right) & \text{sinon} \end{cases}

\\[4pt] ajoute quatre points d’espace vertical après la ligne — utile quand des fractions se touchent.

3.3.2 Un système d’équations

\begin{cases} 2x + y = 5 \\ x + 3y = 10 \end{cases}

3.4 Les matrices

3.4.1 Les cinq variantes

\begin{pmatrix} a & b \\ c & d \end{pmatrix} \quad \begin{bmatrix} a & b \\ c & d \end{bmatrix} \quad \begin{vmatrix} a & b \\ c & d \end{vmatrix}
Environnement Délimiteurs
matrix aucun
pmatrix parenthèses
bmatrix crochets
vmatrix barres simples — un déterminant
Vmatrix barres doubles — une norme

Le & sépare les colonnes, \\ les lignes : la même grammaire que align.

3.4.2 Les points de suspension

\begin{pmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mn} \end{pmatrix}

\cdots centrés, \vdots verticaux, \ddots en diagonale. Il existe aussi \ldots, alignés sur la ligne de base — pour une énumération de texte, pas pour une matrice.

3.4.3 Une matrice par blocs

\left( \begin{array}{cc|c} 1 & 0 & 5 \\ 0 & 1 & 3 \end{array} \right)

array demande une spécification de colonnes : c centré, l à gauche, r à droite, | une barre verticale. C’est le même mécanisme que les tableaux du chapitre 5, appliqué aux mathématiques.

3.5 Décorer une formule

\underbrace{a_1 + a_2 + \cdots + a_n}_{n \text{ termes}} \quad \overbrace{x + y}^{\text{somme}}
\underbrace{E\left[(\hat{\theta} - \theta)^2\right]}_{\text{EQM}} = \underbrace{\left(E[\hat{\theta}] - \theta\right)^2}_{\text{biais}^2} + \underbrace{V(\hat{\theta})}_{\text{variance}}

Ces accolades sont l’un des meilleurs outils pédagogiques de LaTeX : elles nomment chaque morceau d’une formule sans rompre la lecture.

\hat{\beta} = \beta + \overset{\text{erreur}}{\overbrace{(X'X)^{-1}X'\varepsilon}}

3.6 Numéroter et renvoyer

Dans un vrai document, une équation isolée se numérote automatiquement.

\begin{equation}
\label{eq:mco}
\hat{\beta} = (X'X)^{-1}X'y
\end{equation}

D'apres l'equation~\eqref{eq:mco}, l'estimateur est sans biais.
Astuce\eqref plutôt que \ref

\eqref ajoute les parenthèses : il produit « (3.1) » là où \ref donnerait « 3.1 ». C’est la convention pour les équations.

Et l’étiquette eq:mco suit un usage répandu : préfixer par le type d’objet — eq:, fig:, tab:, sec:. Sur un mémoire de cent pages, cette discipline vous fera gagner des heures.

Le chapitre 6 traite en détail des renvois.

Pour supprimer le numéro d’une équation, ajoutez une étoile : equation*, align*, gather*. Sans étoile, chaque ligne d’un align est numérotée ; \nonumber en exempte une seule.

3.7 Écrire une démonstration

\begin{aligned} E[\hat{\beta}] &= E\left[(X'X)^{-1}X'y\right] \\ &= E\left[(X'X)^{-1}X'(X\beta + \varepsilon)\right] \\ &= \beta + (X'X)^{-1}X' \, E[\varepsilon] \\ &= \beta \end{aligned}

Voilà le patron de toute démonstration : une ligne par étape, toutes alignées sur le signe égal, la justification à droite si nécessaire. C’est la construction que vous emploierez le plus souvent dans un mémoire.

À vous

Écrivez la décomposition de la variance totale : la variance de Y égale l’espérance de la variance conditionnelle plus la variance de l’espérance conditionnelle, en nommant chaque terme par une accolade.

V(Y) =
V(Y) =
\underbrace{E\left[V(Y \mid X)\right]}_{\text{variance intra}}
+ \underbrace{V\left(E[Y \mid X]\right)}_{\text{variance inter}}

Et la démonstration correspondante, alignée :

\begin{align}
V(Y) &= E[Y^2] - \left(E[Y]\right)^2 \\
     &= E\left[E[Y^2 \mid X]\right] - \left(E\left[E[Y \mid X]\right]\right)^2 \\
     &= E\left[V(Y \mid X) + \left(E[Y \mid X]\right)^2\right]
        - \left(E\left[E[Y \mid X]\right]\right)^2 \\
     &= E\left[V(Y \mid X)\right] + V\left(E[Y \mid X]\right)
\end{align}

Notez \mid du chapitre 2 pour le conditionnement, et les \left(...\right) qui s’ajustent aux espérances imbriquées. Sans eux, les parenthèses extérieures seraient de même taille que les intérieures, et la formule deviendrait illisible.

Ce qu’il faut retenir

Écriture Effet
\displaystyle forcer la forme déployée en ligne
\substack{a \\ b} plusieurs conditions sous un opérateur
\operatorname*{arg\,min} opérateur nommé, indice dessous
align / aligned aligner sur & — autonome / imbriqué
couper avant l’opérateur convention typographique
gather centrer chaque ligne, sans alignement
cases définition par morceaux, accolade automatique
\text{si } texte dans une formule — espace à l’intérieur
pmatrix, bmatrix, vmatrix matrices selon leurs délimiteurs
\cdots, \vdots, \ddots points de suspension
array avec {cc\|c} contrôle fin des colonnes
\underbrace{...}_{...} nommer un morceau de formule
equation + \label + \eqref numéroter et renvoyer
align*, \nonumber supprimer la numérotation

La première partie du cours s’achève : vous savez écrire les mathématiques. La seconde construit le document qui les contient.