Only for the best practitioners. We should stick to the semantic rules by using the following dots.
\documentclass[preview,border=12pt]{standalone}
\usepackage{amsmath}
\begin{document}
\begin{itemize}
\item \verb+\dotsc+ for comma separated element $A_1, A_2, \dotsc, A_{n-1}, A_n$.
\item \verb+\dotsb+ for binary operator $A_1 +A_2 + \dotsb + A_{n-1} + A_n$.
\item \verb+\dotsm+ for multiplication $A_1 A_2 \dotsm A_{n-1} A_n$.
\item \verb+\dotsi+ for integral $\int_{A_1} \int_{A_2} \dotsi \int_{A_{n-1}} \int_{A_n}$.
\item \verb+\dotso+ for others.
\end{itemize}
\end{document}
Advantages:
You can redefine the implementation for each dots above in the preamble whenever your institution ask you to change its behavior to meet its own adopted layout. If you use just \ldots
and \cdots
rather than the above semantic dots then you have to manually change them per equation --- as a result, this job makes your life boring.
\dots
(general dots) versus \dots*
(amsmath's semantically defined dots)
\documentclass[preview,border=12pt,varwidth]{standalone}
\usepackage{amsmath,xcolor}
\begin{document}
\begin{itemize}
\item (\verb+\dots+) $A_1, \dots, A_n$ \textcolor{red}{v.s.}\ $A_1, \dotsc, A_n$ (\verb+\dotsc+).
\item (\verb+\dots+) $A_1 + \dots + A_n$ \textcolor{red}{v.s.}\ $A_1 + \dotsb + A_n$ (\verb+\dotsb+).
\item (\verb+\dots+) $A_1 \dots A_n$ \textcolor{red}{v.s.}\ $A_1 \dotsm A_n$ (\verb+\dotsm+).
\item (\verb+\dots+) $\int_{A_1} \dots \int_{A_n}$ \textcolor{red}{v.s.}\ $\int_{A_1} \dotsi \int_{A_n}$ (\verb+\dotsi+).
\item (\verb+\dots+) \dots\ \textcolor{red}{v.s.}\ \dotso\ (\verb+\dotso+).
\end{itemize}
\end{document}
\cdots
. It works.\dots
places an ellipsis correct, so I'm wondering if I'm wong in my assumption or I've found an error. (I guess it's the first.)\dots
looks ahead to see what follows and based on that decides whether to use certain dots. The decision is based on whether the following element is\mathbin
, or\mathrel
, or ... And(
does not provide\mathrel
or\mathbin
(the only two leading to\dotsm
or\dotsb
- a vertical adjustment of the dots).\dotsm
here.\def\rightdelim@{\gtest@true \ifx\@let@token)\else \ifx\@let@token]\else \ifx\@let@token\rbrack\else \ifx\@let@token\}\else
to special case known delimiters and the entire\DOTS?
mechanism so that it can be affected by the preceding token. (not that it makes any difference in this case:-)