# big dot operation with lower and upper bound in XeLatex

How can I write a big dot operation with lower and upper bound in XeLatex as represented in the figure? Thank you.

• Oct 26, 2022 at 18:09
• You're looking for \bigodot and \substack. The latter is defined in amsmath. Oct 26, 2022 at 18:18

The command \bigodot by default is a "Variable-sized Math Operator", meaning it is larger in display mode than it is in inline mode. In addition, limits (if any) are placed above and below the symbol in display, but placed to the right (in super/subscript) position when inline. Thus the code

$\bigodot_{k=m+1}^M\mathbf{b}_{V^{(k)}}\quad \displaystyle{\bigodot_{k=m+1}^M\mathbf{b}_{V^{(k)}}}$


produces the following output:

If you don't like the space between \bigodot and \mathbf{b} you can enclose the lower limit in \mathclap{...}. This requires the mathtools package:

$\bigodot_{k=m+1}^M\mathbf{b}_{V^{(k)}}\quad \displaystyle{\bigodot_{\mathclap{k=m+1}}^M\mathbf{b}_{V^{(k)}}}$


Note that this also reduces space on the left.

To have two lines below the operator, use \substack{j=1\\j\ne i} for the lower limit. The \substack command requires the amsmath package, which is automatically loaded if you load mathtools.

\documentclass{article}

\usepackage{mathtools}

\begin{document}

$\mathbf{b}_{V^{(i)}}\propto\bigodot_{\substack{j=1\\j\ne i}}^m\mathbf{f}_{V^{(j)}}\quad \bigodot_{\mathclap{k=m+1}}^M\mathbf{b}_{V^{(k)}},\quad i=1:m$

\end{document}


As a last (very picky) comment, you may notice that the j=1 and j\ne i aren't perfectly aligned in the \substack. This is because 1 and i don't have the same width. You can correct this by placing a phantom 1:

\substack{j=1\\j\ne\mathrlap{i}\phantom{1}}