Comment écrire les symboles d'ensembles ?

D'après Thierry Bouche, au temps jadis, dans les livres, les symboles d'ensemble étaient imprimés en gras pour qu'on les voie bien. Problème : comment, lorsque l'on écrit sur un tableau noir, maintenir ce type de distinction ? En fait, au lieu d'écraser la craie avec force sur le tableau pour élargir un trait, on a décidé de le doubler. Ce qui est comique, c'est qu'en retour, les livres se sont mis à copier l'usage des enseignants, et ont distingué le « gras » (bold), du « gras de tableau » (blackboard bold) qui est une police de caractères à part (dessin normal à barre redoublée).

Avec les polices AMS

Les symboles mathématiques d'ensemble et bien d'autres sont disponibles par défaut dans les polices AMS : famille msam (e.g. msam10 pour 10pt) et msbm (disponibles en Type 1 dans les distributions actuelles). Pour y avoir accès, il faut utiliser les extensions amsfonts et amssymb.

Voici un exemple d'utilisation, avec un cas, pour l'ensemble des réels, de définition de commande pour simplifier ce type de saisie :

\newcommand{\R}{\mathbb{R}}
$\mathbb{N}, \mathbb{Z}, \R, \mathbb{C}$


\newcommand{\R}{\mathbb{R}}
$\mathbb{N}, \mathbb{Z}, \R, \mathbb{C}$

La commande \mathbb ne fonctionne que pour les lettres majuscules. Par ailleurs, la forme de ces caractères est considérée comme plutôt austère (bien qu'elle ressemble à ce qu'on obtiendrait avec une craie) et rend ces lettres parfois peu appréciées.

Avec l'extension mathbbold ou l'extension bbold

Les extensions mathbbol et bbold permettent d'obtenir des lettres minuscules, et même d'autres symboles. La police est cependant visuellement différente des polices mathématiques usuelles : elle ressemble à une Futura vraiment doublée par endroit, pas détourée. L'exemple ci-dessous illustre ce point et montre également qu'il faut utiliser la commande \mathbb (comme pour les fontes AMS). C'est d'ailleurs le cas pour mathbbol comme pour bbold.

\documentclass{article}
\usepackage{mathbbol}
\begin{document}
\[\mathbb{N, Z, R, C, a, b, c, 1, 2, 3}\]
\end{document}

\documentclass{article}
\usepackage{mathbbol}
\pagestyle{empty}
\begin{document}
\[\mathbb{N, Z, R, C, a, b, c, 1, 2, 3}\]
\end{document}

Cette police, créée avec MetaFont, n'est pas disponible en format T1.

Avec l'extension bbm

L'extension bbm propose certaines variantes pour les polices Computer Modern. Ces symboles correspondent plus à ceux utilisés au tableau en France. Les caractères s'obtiennent avec la commande \mathbbm.

\documentclass{article}
\usepackage{bbm}
\begin{document}
\[\mathbbm{N, Z, R, C, a, b, c}\]
\end{document}

FIXME : la restitution LaTeX ne se fait pas.

Cette police, créée avec MetaFont, n'est pas disponible en format T1.

Avec l'extension doublestroke

L'extension doublestroke propose des symboles correspondant à ceux utilisés en France au format T1 et est donc bien adapté pour la création de fichier PDF de qualité. Toutes les majuscules sont présentes ainsi que le « 1 », le « h » et le « k ».

\documentclass{article}
\usepackage{dsfont}
\begin{document}
\[\mathds{N, Z, R, C}\]
\end{document}

\documentclass{article}
\usepackage{dsfont}
\pagestyle{empty}
\begin{document}
\[\mathds{N, Z, R, C}\]
\end{document}

Un document permet de comparer l'apparence des différentes polices citées ci-dessus : blackboard.

Avec l'extension boondox

L'ensemble de polices boondox consiste en des formats T1 des polices STIX mathématiques. Cet ensemble contient une fonte BOONDOXDoubleStruck-Regular et sa version grasse (cette dernière s'obtenant avec \mathbbb).

\documentclass{article}
\usepackage{BOONDOX-ds}
\begin{document}
\[\mathbb{N, Z, R, C, a, b, c, 1, 2, 3}\]
\[\mathbbb{N, Z, R, C, a, b, c, 1, 2, 3}\]
\end{document}

\documentclass{article}
\usepackage{BOONDOX-ds}
\pagestyle{empty}
\begin{document}
\[\mathbb{N, Z, R, C, a, b, c, 1, 2, 3}\]
\[\mathbbb{N, Z, R, C, a, b, c, 1, 2, 3}\]
\end{document}

Avec des définitions approchantes

Si vous ne disposez pas des extensions de l'AMS, vous pouvez, au grand dam de certains puristes, utiliser les commandes définies ci-après.

Un premier ensemble de définitions

\def\N{\mbox{I\hspace{-.15em}N}}
\N      
\def\Z{\mbox{Z\hspace{-.3em}Z}}
\Z
\def\R{\mbox{I\hspace{-.15em}R}}
\R
\def\C{\mbox{l\hspace{-.47em}C}}
\C


\def\N{\mbox{I\hspace{-.15em}N}}
\N      
\def\Z{\mbox{Z\hspace{-.3em}Z}}
\Z
\def\R{\mbox{I\hspace{-.15em}R}}
\R
\def\C{\mbox{l\hspace{-.47em}C}}
\C

Il faut savoir dans ce cas que leur utilisation est limitée : pas de mise en indice, exposant, etc.

Un second ensemble de définitions

C. Fiorio propose également un certain nombre de commandes (\LaTeXe):

%%%% debut macro %%%%
%
%%  Les ensembles de nombres
%
\newcommand{\nbR}{\ensuremath{\mathrm{I\!R}}} % IR 
\newcommand{\nbN}{\ensuremath{\mathrm{I\!N}}} % IN
\newcommand{\nbF}{\ensuremath{\mathrm{I\!F}}} % IF
\newcommand{\nbH}{\ensuremath{\mathrm{I\!H}}} % IH
\newcommand{\nbK}{\ensuremath{\mathrm{I\!K}}} % IK
\newcommand{\nbL}{\ensuremath{\mathrm{I\!L}}} % IL
\newcommand{\nbM}{\ensuremath{\mathrm{I\!M}}} % IM
\newcommand{\nbP}{\ensuremath{\mathrm{I\!P}}} % IP
%
% \nbUn : 1I : symbole Un
\newcommand{\nbUn}{{\mathchoice {\rm 1\mskip-4mu l} 
  {\rm 1\mskip-4mu l} {\rm 1\mskip-4.5mu l} 
  {\rm 1\mskip-5mu l}}}
%
% \nbC   :  Nombres Complexes
\newcommand{\nbC}{{\mathchoice 
  {\setbox0=\hbox{$\displaystyle\rm C$}%
    \hbox{\hbox to0pt{\kern0.4\wd0
    \vrule height0.9\ht0\hss}\box0}}
  {\setbox0=\hbox{$\textstyle\rm C$}\hbox{%
    \hbox to0pt{\kern0.4\wd0
    \vrule height0.9\ht0\hss}\box0}}
  {\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{%
    \hbox to0pt{\kern0.4\wd0
    \vrule height0.9\ht0\hss}\box0}}
  {\setbox0=\hbox{$\scriptscriptstyle\rm C$}%
    \hbox{\hbox to0pt{\kern0.4\wd0
    \vrule height0.9\ht0\hss}\box0}}}}
%
% \nbQ   : Nombres Rationnels Q
\newcommand{\nbQ}{{\mathchoice 
  {\setbox0=\hbox{$\displaystyle\rm Q$}\hbox{%
    \raise 0.15\ht0\hbox to0pt{\kern0.4\wd0%
    \vrule height0.8\ht0\hss}\box0}}
  {\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise
    0.15\ht0\hbox to0pt{\kern0.4\wd0
    \vrule height0.8\ht0\hss}\box0}}
  {\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{%
    \raise 0.15\ht0\hbox to0pt{\kern0.4\wd0
    \vrule height0.7\ht0\hss}\box0}}
  {\setbox0=\hbox{$\scriptscriptstyle\rm Q$}%
    \hbox{\raise 0.15\ht0\hbox to0pt{\kern0.4\wd0%
    \vrule height0.7\ht0\hss}\box0}}}}
%
% \nbT   : T
\newcommand{\nbT}{{\mathchoice 
  {\setbox0=\hbox{$\displaystyle\rm T$}\hbox{%
    \hbox to0pt{\kern0.3\wd0%
    \vrule height0.9\ht0\hss}\box0}}
  {\setbox0=\hbox{$\textstyle\rm T$}\hbox{%
    \hbox to0pt{\kern0.3\wd0%
    \vrule height0.9\ht0\hss}\box0}}
  {\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{%
    \hbox to0pt{\kern0.3\wd0%
    \vrule height0.9\ht0\hss}\box0}}
  {\setbox0=\hbox{$\scriptscriptstyle\rm T$}%
    \hbox{\hbox to0pt{\kern0.3\wd0%
    \vrule height0.9\ht0\hss}\box0}}}}
%
% \nbS   : S
\newcommand{\nbS}{{\mathchoice
  {\setbox0=\hbox{$\displaystyle\rm S$}\hbox{%
    \raise0.5\ht0\hbox to0pt{\kern0.35\wd0%
    \vrule height0.45\ht0\hss}\hbox to0pt{%
    \kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
  {\setbox0=\hbox{$\textstyle\rm S$}\hbox{%
    \raise0.5\ht0\hbox to0pt{\kern0.35\wd0%
    \vrule height0.45\ht0\hss}\hbox to0pt{%
    \kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
  {\setbox0=\hbox{$\scriptstyle\rm S$}\hbox{%
    \raise0.5\ht0\hbox to0pt{\kern0.35\wd0%
    \vrule height0.45\ht0\hss}\raise0.05\ht0
    \hbox to0pt{\kern0.5\wd0%
    \vrule height0.45\ht0\hss}\box0}}
  {\setbox0=\hbox{$\scriptscriptstyle\rm S$}%
    \hbox{\raise0.5\ht0\hbox to0pt{\kern0.4\wd0%
    \vrule height0.45\ht0\hss}\raise0.05\ht0%
    \hbox to0pt{\kern0.55\wd0%
    \vrule height0.45\ht0\hss}\box0}}}}
%
% \nbZ   : Entiers Relatifs Z
\newcommand{\nbZ}{{\mathchoice 
  {\hbox{$\sf\textstyle Z\kern-0.4em Z$}}
  {\hbox{$\sf\textstyle Z\kern-0.4em Z$}}
  {\hbox{$\sf\scriptstyle Z\kern-0.3em Z$}}
  {\hbox{$\sf\scriptscriptstyle Z\kern-0.2em Z$}}}}
%%%% fin macro %%%%
 
$\nbN, \nbZ, \nbR, \nbC$


%%  Les ensembles de nombres
%
\newcommand{\nbR}{\ensuremath{\mathrm{I\!R}}} % IR 
\newcommand{\nbN}{\ensuremath{\mathrm{I\!N}}} % IN
%
% \nbC   :  Nombres Complexes
\newcommand{\nbC}{{\mathchoice 
  {\setbox0=\hbox{$\displaystyle\rm C$}%
    \hbox{\hbox to0pt{\kern0.4\wd0
    \vrule height0.9\ht0\hss}\box0}}
  {\setbox0=\hbox{$\textstyle\rm C$}\hbox{%
    \hbox to0pt{\kern0.4\wd0
    \vrule height0.9\ht0\hss}\box0}}
  {\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{%
    \hbox to0pt{\kern0.4\wd0
    \vrule height0.9\ht0\hss}\box0}}
  {\setbox0=\hbox{$\scriptscriptstyle\rm C$}%
    \hbox{\hbox to0pt{\kern0.4\wd0
    \vrule height0.9\ht0\hss}\box0}}}}
%
% \nbZ   : Entiers Relatifs Z
\newcommand{\nbZ}{{\mathchoice 
  {\hbox{$\sf\textstyle Z\kern-0.4em Z$}}
  {\hbox{$\sf\textstyle Z\kern-0.4em Z$}}
  {\hbox{$\sf\scriptstyle Z\kern-0.3em Z$}}
  {\hbox{$\sf\scriptscriptstyle Z\kern-0.2em Z$}}}}

$\nbN, \nbZ, \nbR, \nbC$

Avec des polices gratuites

Certaines des polices évoquées dans la question « Quelles sont les fontes T1 disponibles pour les mathématiques ? » répondent à la demande :

  • les familles txfonts et pxfonts sont fournies avec des répliques de msam et msbm mais, comme indiqué par ailleurs, il y a plusieurs raisons pour ne pas utiliser ces fontes. Les versions révisées de ces fontes, newtx et newpx sont toutefois mieux ajustées ;
  • la famille mathpazo propose des caractères « gras de tableau » ;
  • les fontes fourier proposent des caractères « gras de tableau » pour les majuscules, le chiffre « 1 » et le « k ».

Avec des polices commerciales

Les polices dextor outline et Mathematical Pi (une sorte d'Helvetica doublée par endroit) donnent accès à des caractères « doublés ».


Source: Symbols for the number sets

domaines_specialises/mathematiques/symboles_d_ensembles.txt · Dernière modification: 2020/12/03 00:01 par yannick.tanguy
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0