• Aucun résultat trouvé

Théorèmes, lemmes, etc

Dans le document Une courte (?) introduction à LATEX 2ε (Page 95-99)

En rédigeant des documents mathématiques, on a besoin d’un moyen de présenter des lemmes, des définitions, des axiomes et d’autres structures similaires :

\newtheorem{nom}[compteur]{texte}[section]

L’argument nom est un mot-clef utilisé pour identifier le théorème.

L’argument texte définit le nom réel du théorème tel qu’il sera imprimé dans le document final.

Les arguments entre crochets sont optionnels. Ils servent à indiquer la numérotation à utiliser sur le théorème. Utilisez lecompteur pour indiquer le nom d’un théorème déjà déclaré. Le nouveau théorème sera alors numéroté dans la même séquence. Avec section vous indiquez dans quel niveau de sectionnement vous voulez numéroter votre théorème.

Après avoir exécuté \newtheoremdans le préambule de votre document, vous pouvez utiliser la commande suivante :

\begin{nom}[texte]

Ceci est mon premier théorème

\end{nom}

L’extension amsthm (qui fait partie d’AMS-LaTeX) met à disposition la commande\theoremstyle{style}offrant un choix de type de théorème parmi trois styles préféfinis : definition(titre gras, corps romain), plain (titre gras, corps italique) or remark(titre italique, corps romain).

Voilà pour la théorie. Les exemples qui suivent devraient lever tout doute et montrer clairement que la commande\newtheoremest trop complexe à comprendre.

D’abord définissez les théorèmes :

\theoremstyle{definition} \newtheorem{loi}{loi}

\theoremstyle{plain} \newtheorem{decret}[loi]{Décret}

\theoremstyle{remark} \newtheorem*{lechef}{Le chef}

\begin{loi} \label{chef}

Le chef a raison.

\end{loi}

\begin{decret}[Important]

Le chef a toujours raison, voir la loi~\ref{chef}.

\end{decret}

\begin{lechef}

Et si le chef a tort, se référer à la loi~\ref{chef}.

\end{lechef}

loi 1. Le chef a raison.

Décret 2(Important). Le chef a toujours raison, voir la loi 1.

Le chef. Et si le chef a tort, se référer à la loi1.

L’environnement “decret” utilise le même compteur que l’environnement

“loi”, donc il obtient un numéro dans la même séquence que les autres “lois”.

L’argument entre crochets permet de spécifier un titre ou quelque chose de ce genre pour l’environnement.

\newtheorem{mur}{Murphy}[section]

\begin{mur} Tout ce qui peut aller mal ira mal.\end{mur}

Murphy 3.8.1. Tout ce qui peut aller mal ira mal.

Les environnements “Murphy” sont numérotés à l’intérieur de la section en cours. On aurait pu utiliser un autre niveau tel quechapterousubsection.

Si vous voulez personnaliser vos théorèmes au point près, l’extension ntheoremvous offrira la pléthore d’options dont vous avez besoin.

3.8.1 Preuves et symbole de fin de preuve

L’extensionamsthm fournit aussi l’environnement de preuve proof.

\begin{proof}

Trivial, utilisez

\begin{equation*}

E=mc^2.

\end{equation*}

\end{proof}

Proof. Trivial, utilisez E=mc2.

La commande \qedherepermet de déplacer le symbole de fin de preuve (CQFD) pour les cas où il finirait seul sur une ligne.

\begin{proof}

Trivial, utilisez

\begin{equation*}

E=mc^2. \qedhere

\end{equation*}

\end{proof}

Proof. Trivial, utilisez E=mc2.

Malheureusement, cette correction ne fonctionne pas avec l’environnement IEEEeqnarray.

\begin{proof}

Voici une preuve qui termine par un alignement d’équations.

\begin{IEEEeqnarray*}{rCl}

a & = & b + c \\

& = & d + e. \qedhere

\end{IEEEeqnarray*}

\end{proof}

Proof. Voici une preuve qui termine par un alignement d’équations.

a=b+c

=d+e.

La raison provient de la structure interne d’IEEEeqnarray, qui place systéma-tiquement une colonne invisible de chaque côté de l’équation, qui contiennent seulement des espaces étirables, de façon à ce que le tableau d’équations soit correctement centré. Il faudrait en fait placer le\qedhere à l’extérieur de cet espace étirable, mais ce n’est pas possible car ces colonnes sont invisibles pour l’utilisateur.

Il y a une solution très simple : définir ces colonnes étirables explicitement

!

\begin{proof}

Voici une preuve qui termine par un alignement d’équations.

Proof. Voici une preuve qui termine par un alignement d’équations.

a=b+c

=d+e.

Ici, le+dans{+rCl+x*}indique un espace étirable : un à gauche de l’équation qui, s’il n’était pas présent, serait ajouté d’office par IEEEeqnarray, et un à droite de l’équation. Mais cette fois à droite,après cette colonne étirable, nous ajoutons une colonne vide x, qui ne sera utilisée que sur la dernière ligne, si la commande\qedhereest utilisée. Enfin, nous ajoutons un*: c’est un espace sans épaisseur, qui empêche IEEEeqnarray d’ajouter un autre espace+indésirable.

Dans le cas d’équations numérotées, le problème est similaire. Comparons

\begin{proof}

Voici une preuve qui termine par une équation numérotée.

\begin{equation}

a = b + c.

\end{equation}

\end{proof}

Proof. Voici une preuve qui termine par une équation numérotée.

a=b+c. (3.42)

avec

\begin{proof}

Voici une preuve qui termine par une équation numérotée.

\begin{equation}

a = b + c. \qedhere

\end{equation}

\end{proof}

Proof. Voici une preuve qui termine par une équation numérotée.

a=b+c. (3.43)

Vous remarquerez que dans la deuxième version, qui est correcte, le symbole 2 est bien plus proche de l’équation que dans la première.

De façon analogue, la bonne manière de placer le symbole de fin de preuve à la fin d’un alignements d’équations est la suivante.

\begin{proof}

Voici une preuve qui termine par un alignement d’équations.

\begin{IEEEeqnarray}{+rCl+x*}

a & = & b + c \\

& = & d + e. \\

&&& \qedhere\nonumber

\end{IEEEeqnarray}

\end{proof}

Proof. Voici une preuve qui termine par un alignement d’équations.

a=b+c (3.44)

=d+e. (3.45)

par opposition à

\begin{proof}

Voici une preuve qui termine par un alignement d’équations.

\begin{IEEEeqnarray}{rCl}

a & = & b + c \\

& = & d + e.

\end{IEEEeqnarray}

\end{proof}

Proof. Voici une preuve qui termine par un alignement d’équations.

a=b+c (3.46)

=d+e. (3.47)

Dans le document Une courte (?) introduction à LATEX 2ε (Page 95-99)