Élément neutre

Bonjour
Comment saisir l'élément neutre " 1" avec deux barres verticaux sous latex ?
Aussi, quel est (sous latex), le symbole mathématique qui représente la loi de composition "truc", souvent notée "T" renversé ?
Merci.

Réponses

  • Deux sources : detexify et "The Comprehensive LaTeX Symbol List" du CTAN. On y trouve :
    \usepackage{ bbold }
    \mathbb{1}
    
    et
    \top
    
  • Bonjour,

    Pour les puristes, \top (\(\top\)) et \bot (\(\bot\)) sont de simples caractères mathématiques : aucune espace n'est gérée avant et après ce caractère.

    D'autre part, l'AMS propose \(\intercal\) (\(\intercal\)), que je ne trouve pas très joli.

    Pour détourner un symbole de sa fonction première et gérer automatiquement l'espace qui l'entoure, il faut le définir à l'aide des commandes \mathbin pour une loi de composition, \mathrel pour une relation binaire.

    Voici un tableau de comparaison, j'ai encadré les expressions par des « valeurs absolues» pour mettre en évidence la différence de largeur des différentes variantes.

    À noter que \perp (\(\perp\)) est la variante \mathrel de \bot.
  • @gb Aurais-tu oublié de joindre une image ? ;-)

    Tu as raison d'écrire « À noter que \perp ($\perp$) est la variante \mathrel de \bot ». En effet, 'latexdef bot' donne :
    \bot:
    \mathchar"23F
    
    et 'latexdef perp' :
    \perp:
    \mathchar"323F
    
    Il suffit ensuite de décomposer :
    • "23F = "023F, c'est-à-dire classe 0 (ordinary, i.e., \mathord), famille 2 et position "3F dans la police correspondante ;
    • "323F : classe 3 (relation, i.e., \mathrel), famille 2 et position "3F (preuve qu'il s'agit donc du même glyphe puisque c'est le même couple (famille math., code point)).
    La famille mathématique 2 correspond à la police cmsy dans plain TeX, soit les symboles mathématiques « de base », par opposition à ceux de cmex (Computer Modern Math Extension) que l'on retrouve en famille 3 (voir ci-dessous). LaTeX ajoute une couche d'abstraction autour de tout ça, mais les familles 0, 1, 2 et 3 (au minimum) jouent le même rôle que dans plain TeX par défaut, sauf erreur.

    Extraits de plain.tex :
    \font\tensy=cmsy10 % math symbols
    \font\sevensy=cmsy7
    \font\fivesy=cmsy5
    
    \font\tenex=cmex10 % math extension
    
    \textfont2=\tensy \scriptfont2=\sevensy \scriptscriptfont2=\fivesy
    \textfont3=\tenex \scriptfont3=\tenex \scriptscriptfont3=\tenex
    

    Ci-joint : numéros correspondant aux différentes classes de symboles mathématiques (c'est utile pour décrypter une valeur \mathchar comme nous venons de le voir).95266
  • Tiens, puisqu'on parle de ça : est-il vrai que \mid est la version \mathrel de | ?
  • Affirmatif :
    \documentclass{article}
    \usepackage{expl3}
    
    \begin{document}
    
    \ExplSyntaxOn
    
    \cs_meaning:N \mid
    \par
    \int_to_hex:n { \char_value_mathcode:n { `| } }
    
    \ExplSyntaxOff
    
    \end{document}
    
    (en TeX tout court, on peut faire d'une part \meaning\mid, d'autre part \the\mathcode`| et convertir en hexadécimal).95274
    mid.png 11.6K
  • Deux barres verticaux ?
  • brian écrivait:
    @gb Aurais-tu oublié de joindre une image ?

    Effectivement. Je répare l'oubli :

    \[\LARGE
    \begin{array}{ccl}
    \left\lvert a \top b \right\vert & \left\lvert a \bot b \right\vert & {\normalsize\text{caractère ordinaire}} \\
    \left\lvert a \mathbin{\top} b \right\vert & \left\lvert a \mathbin{\bot} b \right\vert & {\normalsize\text{version \mathbin}} \\
    \left\lvert a \mathrel{\top} b \right\vert & \left\lvert a \mathrel{\bot} b \right\vert & {\normalsize\text{version \mathrel}}
    \end{array}
    \]

    @ Chaurien : \Vert (\(\Vert\)) et ses variantes \lVert (ouvrant), \rVert (fermant), \parallel (relation)
  • Merci mais mon intervention portait sur le genre (pour une fois c'est le terme approprié) du mot « barre », qui fait que des barres sont verticales et non « verticaux ».
    Bonne soirée.
    RC
  • Certes. Pour revenir aux préoccupations de nenu, il ou elle pourra donc utiliser quelque chose comme :
    \documentclass{article}
    \usepackage{dsfont}
    
    \newcommand{\loiT}{\mathbin{\top}}
    \newcommand{\fIndic}{\mathds{1}}
    
    \begin{document}
    
    La loi $\loiT$. Soit $(E, \loiT)$ un magma. $x \loiT y = z$. La fonction
    indicatrice $\fIndic_A$ de la partie $A$ de $X$.
    
    \end{document}
    
    \mathds{1} donne le 1 avec double barre et nécessite \usepackage{dsfont}. C'est une autre possibilité que celle évoquée plus haut par Math Coss. Le package dsfont contient plein de lettres doublées (cf. extraits de la doc ci-joints, d'abord avec empattement puis sans).95284
    95286
    95288
  • Dans dsfont, je n'aime pas (du tout) le fait que les deux barres ne soient pas identiques.
  • Quand à \Vert, \lVert, \rVert et \parallel, ce que dit gb me va bien mais la preuve est un peu différente que celle que j'ai donnée pour | et \mid, donc je détaille un peu :
    $ latexdef -p amsmath Vert
    \Vert:
    macro:->\protect \Vert  
    
    \Vert :
    macro:->\delimiter "026B30D 
    
    Il y a une macro auxilliaire dont le nom est \Vert<espace> (l'espace fait partie du nom, on fabrique ça avec \csname). C'est un détail d'implémentation qui permet à \Vert (sans espace) de rester inchangée si elle se retrouve dans un \protected@edef ou un \protected@write (dans la ligne 'macro:->\protect \Vert ', il y a deux espaces après \Vert, ce qui veut dire qu'il s'agit de \Vert<espace>). Bref, ça ne nous intéresse pas directement ici, je vais passer ce détail sous silence pour les autres commandes.

    Donc \Vert est un \delimiter "026B30D. Le nombre écrit ici en hexadécimal contient trois « tranches » : 0, 26B et 30D (voir TeXbook p. 156).
    • Lorsque \Vert se retrouve dans une formule mathématique à un endroit où TeX n'attend pas de délimiteur (autrement dit, pas après \left ou \right), cette commande a le même effet que \mathchar "026B : un \mathord (classe 0 = ordinary) dont le glyphe est en position "6B dans la police affectée à la famille mathématique n°2.
    • Lorsque \Vert se retrouve dans une formule mathématique après \left ou \right, elle se comporte comme un délimiteur dont le \delcode est "26B30D (le premier chiffre de "026B30D est ignoré dans ce cas — il le serait encore même si ce n'était pas un zéro), c'est-à-dire que la « petite » variante du délimiteur est obtenue avec le glyphe "6B de la famille mathématique n°2 et sa « grande » variante avec le glyphe "0D de la famille n°3.
    Bref, \Vert est un \mathord sauf après \left ou \right, auquel cas c'est un délimiteur comme il faut, dont les petite et grande variantes sont respectivement déterminées par "26B et "30D.

    Passons à \lVert :
    $ latexdef -p amsmath lVert
    
    (...)
    
    \lVert :
    macro:->\delimiter "426B30D
    
    C'est tout pareil sauf que lorsque \lVert ne suit pas \left ou \right, il se comporte comme un symbole mathématique de classe 4 (\mathopen) au lieu d'un symbole de classe 0 (\mathord).

    Sans surprise :
    $ latexdef -p amsmath rVert
    
    (...)
    
    \rVert :
    macro:->\delimiter "526B30D
    
    Même chose que \Vert, sauf que lorsque \rVert ne suit pas \left ou \right, il se comporte comme un symbole mathématique de classe 5 (\mathclose) au lieu d'un symbole de classe 0 (\mathord).

    Enfin, \parallel :
    $ latexdef parallel
    
    (...)
    
    \parallel:
    \mathchar"326B
    
    La classe 3 nous confirme qu'il s'agit d'un \mathrel (relation binaire). Le glyphe est le même que celui de la petite variante des délimiteurs \Vert, \lVert et \rVert : position "6B de la police affectée à la famille n°2.
  • Math Coss a écrit:
    Dans dsfont, je n'aime pas (du tout) le fait que les deux barres ne soient pas identiques.
    Elles le sont dans la version sans serif (sauf cas particuliers comme le U). (:P)
  • D'accord, la version sans sérif est 1) sans sérif et 2) moche avec des barres identiques...
Connectez-vous ou Inscrivez-vous pour répondre.