Angle brackets are used in various sorts of mathematical expressions:
〈x, y〉 can denote an inner
product or other such pairing,
〈a, b | ab = ba2〉
a presentation of a group, and k〈X〉
a free associative algebra.
On the typewriter, they are rendered using
the greater-than and less-than signs, < and >.
Printed versions of angle bracket characters have angles ranging
from nearly as sharp as < and > to much flatter, often
compressing the symbols to the same widths as parentheses ( and ).
Some examples from the literature showing this range of forms are
this page,
this page, and
this page.
The LaTeX symbols \langle and \rangle are
very flat (as are the html symbols ⟨ and
⟩ used above, at least
as they appear on my browser).
Perhaps the tendency to use very flat symbols is based on the goal of emphatically distinguishing these from the inequality symbols. My experience is that occasions where angle brackets could be confused with inequality signs are rare, but that, on the other hand, in rapid reading, the eye can mistake very flat angle brackets for parentheses, leading to genuine confusion, e.g., between k〈X〉, a free associative algebra, and k(X), a field of rational functions.
Hence I have put together some not-so-flat alternatives to the
LaTeX angle-bracket symbols \langle and \rangle.
I give below two versions.
One pair, denoted \langl and \rangl,
gives angle brackets with an angle of 120°, the other,
\lang and \rang, makes the angle 90°.
(Other angles would be equally easy to produce.)
Both use the graphics package.
To see how these look,
with the standard LaTeX symbols given for comparison, see
this PDF file.
(I recommend clicking a few times to enlarge what you are looking at.
I also like a little more space than LaTeX assigns
between such symbols and what they enclose, so
I give there, along with the default LaTeX output, an example using
\langle\kern.5pt and \kern.5pt\rangle.)
The definitions of the new glyphs (also shown on the pdf page) are:
\usepackage{graphics}
\newcommand{\langl}{\begin{picture}(4.5,7)
\put(1.1,2.5){\rotatebox{60}{\line(1,0){5.5}}}
\put(1.1,2.5){\rotatebox{300}{\line(1,0){5.5}}}
\end{picture}}
\newcommand{\rangl}{\begin{picture}(4.5,7)
\put(.9,2.5){\rotatebox{120}{\line(1,0){5.5}}}
\put(.9,2.5){\rotatebox{240}{\line(1,0){5.5}}}
\end{picture}}
\newcommand{\lang}{\begin{picture}(5,7)
\put(1.1,2.5){\rotatebox{45}{\line(1,0){6.0}}}
\put(1.1,2.5){\rotatebox{315}{\line(1,0){6.0}}}
\end{picture}}
\newcommand{\rang}{\begin{picture}(5,7)
\put(.1,2.5){\rotatebox{135}{\line(1,0){6.0}}}
\put(.1,2.5){\rotatebox{225}{\line(1,0){6.0}}}
\end{picture}}
I am not proficent enough with TeX to give these symbols the special properties of LaTeX delimiters, e.g., the ability to change size depending on what they enclose. Perhaps someone else can tell me how. I welcome comments of any sort. (2025/08/27: re change of size, see note at bottom of this page!)
Incidentally, I have found that if I use a formula containing
the above glyphs in a section title, LaTeX gives error messages,
and refuses to continue until I hit carriage-returns; but that if
\newcommand is replaced by \DeclareRobustCommand
in both the above definitions, the problem goes away.
I don't know whether there are any
drawbacks to using \DeclareRobustCommand .
Apparently, this problem (and, I suppose, this solution)
applies to any command which contains a new environment,
as specified by a \begin...\end pair.
The above symbols are enough for most areas of mathematics that use angle brackets, but in noncommutative ring theory, a free associative algebra k〈X〉 has a universal skew field of fractions (an analog of the commutative construction of k(X) from k[X] ), and we like to denote this by parentheses superimposed on angle brackets, as is done in this book, and this book. But often such superimposed symbols are not available, in which case one is forced to make do with the workaround k(〈X〉), as is done in this book. This unfortunately looks very much like k((X)) or k〈〈X〉〉, which represent two sorts of formal power series constructions. Below are LaTeX constructs – again in two versions – for the desired superimposed symbols. Here is how they look (with the above workaround for comparison). One has to use sharper angles in these symbols than in the angle bracket symbols shown above, to keep the brackets from running too close to the parentheses; I have made the angles 80° and 60°.
The code is:
\usepackage{graphics}
\newcommand{\langlC}{\begin{picture}(7,7)
\put(1.8,0){$($}
\put(1.1,2.5){\rotatebox{40}{\line(1,0){6.5}}}
\put(1.1,2.5){\rotatebox{320}{\line(1,0){6.5}}}
\end{picture}}
\newcommand{\ranglC}{\begin{picture}(7,7)
\put(1.2,0){$)$}
\put(.8,2.5){\rotatebox{140}{\line(1,0){6.5}}}
\put(.8,2.5){\rotatebox{220}{\line(1,0){6.5}}}
\end{picture}}
\newcommand{\langC}{\begin{picture}(9,7)
\put(3.0,0){$($}
\put(1.1,2.5){\rotatebox{30}{\line(1,0){8.0}}}
\put(1.1,2.5){\rotatebox{330}{\line(1,0){8.0}}}
\end{picture}}
\newcommand{\rangC}{\begin{picture}(9,7)
\put(2.0,0){$)$}
\put(.8,2.5){\rotatebox{150}{\line(1,0){8.0}}}
\put(.8,2.5){\rotatebox{210}{\line(1,0){8.0}}}
\end{picture}}
----------------------------------------------------------------------
2025/08/27
----------------------------------------------------------------------
Yesterday I ran into a problem when using angle brackets in the
Abstract of a paper: The Abstract is, as
usual, in smaller font-size than
the rest of the paper, and this affected all of the text and symbols
in the Abstract except those brackets.
I finally found a solution.
Most of the numbers in the angle-bracket definitions apparently
specify lengths in points; but if I modified them by dividing
those numbers by 10 and following them by em; i.e.,
by replacing each specification of a "point" by
"1/10 of the current point-size",
the resulting symbols did change size appropriately.
Here is the code for \langl and \rangl.
(It is based on the versions of the
\langl and \rangl commands that I have
been using, which evidently have different numbers in
the \begin{picture} line than shown above;
I'm not sure why.)
\usepackage{graphics}
\newcommand{\langl}{\begin{picture}(.51em,1em)
\put(.11em,.33em){\rotatebox{60}{\line(1,0){.55em}}}
\put(.11em,.33em){\rotatebox{300}{\line(1,0){.55em}}}
\end{picture}}
\newcommand{\rangl}{\begin{picture}(.5em,1em)
\put(.09em,.33em){\rotatebox{120}{\line(1,0){.55em}}}
\put(.09em,.33em){\rotatebox{240}{\line(1,0){.55em}}}
\end{picture}}