How to make an old school "much less/greater" (<< and >>) symbol?
The mathabx
package provides this glyph as \lll
(and correspondingly \ggg
). However, mathabx
changes a lot of symbols. If you want only these two you may easily adapt the code from Importing a Single Symbol From a Different Font
\documentclass{article}
\DeclareFontFamily{U}{matha}{\hyphenchar\font45}
\DeclareFontShape{U}{matha}{m}{n}{
<5> <6> <7> <8> <9> <10> gen * matha
<10.95> matha10 <12> <14.4> <17.28> <20.74> <24.88> matha12
}{}
\DeclareSymbolFont{matha}{U}{matha}{m}{n}
\DeclareMathSymbol{\Lt}{3}{matha}{"CE}
\DeclareMathSymbol{\Gt}{3}{matha}{"CF}
\begin{document}
$a \ll b \Lt c \Gt d \gg e$
\end{document}
EDIT I was reminded in comments that \lll
and \ggg
are defined also in amssymb
(and other math font packages) to do something else. The names \Lt
, \Gt
(from stix
. unicode-math
& others) avoid such clashes.
The nice answer by Davislor also shows how to import these symbols from the stix
fonts, though in that case I'd switch fonts completely. In a Computer Modern setting I find the mathabx
symbols more suitable.
If you use stix
, here is a version that creates a newcommand
and rotates the symbols to give what you want.
\documentclass{article}
\usepackage{graphicx}
\usepackage{stix}
\newcommand{\lWedge}{\mathbin{\rotatebox[origin=c]{90}{$\Wedge$}}}
\newcommand{\gWedge}{\mathbin{\rotatebox[origin=c]{-90}{$\Wedge$}}}
\begin{document}
$\lWedge$
$\gWedge$
$\Wedge$
$\Vee$
\end{document}
EDIT:
Lt
and Gt
exist, so no need to rotate.
These characters are in Unicode, ⪡ as U+2AA1 and ⪢ as U+2AA2. They have the macro names \Lt
and \Gt
in unicode-math
(q.v. pages 74–75), the stix
package (p. 16), the stix2
package (p.16) , and at least one other.
The OpenType fonts XITS Math, Stix Two Math, Asana Math, GFS Neohellenic Math and Cambria Math all contain the glyphs, and it is possible in unicode-math
to fill in only those characters with a command such as:
\setmathfont[range={`⪡,`⪢}, Scale=MatchUppercase]{Asana Math}
A code sample that works with LuaLaTeX or XeLaTeX:
\documentclass[varwidth, preview]{standalone}
\usepackage{unicode-math}
\setmainfont{STIX Two Text}
\setmathfont{STIX Two Math}
\begin{document}
\( \delta \Lt h \Gt \epsilon \)
\end{document}
And one that works with any LaTeX engine:
\documentclass[varwidth, preview]{standalone}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{stix}
\begin{document}
\( \delta \Lt h \Gt \epsilon \)
\end{document}
Should you be forced to use a legacy NFSS font package that does not contain these symbols, you might be able to load \usepackage{stix}
before the other font packages. But, when another package is incompatible (perhaps because you run out of LaTeX math alphabets) and you need to declare them with \DeclareMathSymbol
, you can do it with a bit of reverse-engineering. The following template declares \Lt
and \Gt
for use with newtxmath
:
\documentclass[varwidth, preview]{standalone}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{newtxtext}
\usepackage{newtxmath}
\DeclareFontEncoding{LS1}{}{}
\DeclareFontSubstitution{LS1}{stix}{m}{n}
\DeclareSymbolFont{stixsymbb}{LS1}{stixbb}{m}{n}
\DeclareMathSymbol{\Lt}{\mathrel}{stixsymbb}{"F1}
\DeclareMathSymbol{\Gt}{\mathrel}{stixsymbb}{"F2}
\begin{document}
\( \delta \Lt h \Gt \epsilon \)
\end{document}
Note that this is a contrived example, and the practical code you would use to get newtx
fonts plus all symbols in stix
is in fact:
\usepackage{stix}
\usepackage{newtxtext}
\usepackage{newtxmath}
You can additionally insert the following lines to be able to use the UTF-8 characters directly within your document, if you are not using unicode-math
(which does that out of the box):
\usepackage{newunicodechar}
\newunicodechar{⪡}{\ensuremath{\Lt}}
\newunicodechar{⪢}{\ensuremath{\Gt}}
For completeness: the boisik
package also defines \Lt
and \Gt
, but (as of 2018) is only available as a bitmap font. It is therefore probably not an acceptable option.
As pointed out in another answer, mathabx
contains similar glyphs, but declares them as \lll
and \ggg
. This is a serious design flaw and will cause incorrect output when migrating to a different stylesheet. In the standard AMS fonts, unicode-math
and several other common packages, \lll
is ⋘. triple less than, and \ggg
is ⋙, triple greater than.
I would recommend unicode-math
as the first option and stix
as the second. If you want to load the glyphs from mathabx
, I would use campa’s answer, revised to change the names to the more standard \Lt
and \Gt
.