# Bracket sizing with \bigwedge and \substack

I've been trying to enclose a wedge with a substack of conditions in square brackets.

My original code was:

\left[\bigwedge_{\substack{j=1\\\text{where }i(j)=1}}^n e_j\right]


which produced:

This includes a lot of redundant space and looks quite unpleasant. I was trying to create something like this:

To produce this, I wrote:

\DeclareMathOperator{\fakewedge}{\textbf{\Large/\hspace{-0.085cm}\textbackslash}}

\left[\hspace{0.05cm}\substack{\\n\\\\\vspace{-0.325cm}\\\fakewedge\\\mbox{}\\j=1\\
\text{where }i(j)=1\vspace{0.08cm}}\hspace{-0.425cm}\let\scriptstyle\textstyle
\substack{e_j\\\vspace{0.175cm}}\hspace{0.15cm}\right]


which I'm fairly sure includes almost every bad practice there is.

Is there any way to achieve something close to my intention without writing such a mess?

I have read answers to this question for example, but I wanted to include my conditions in the brackets as well. I attempted to define my own versions of say \bigl and \bigr with the size I wanted, but that didn't seem to work.

I eventually managed to make brackets of arbitrary sizes using \left[\vbox spread <HEIGHT>cm{}\right. and \left]\vbox spread <HEIGHT>cm{}\right., but the wedge still needed moving vertically (which was why I resorted to \substack), and this was already bad practice to begin with.

Any suggestions would be much appreciated.

Update: Thanks to Bernard for his comment. I've used the bmatrix environment now to solve the bracketing issue, and have tried to use smashoperator to place the $e_j$ next to the wedge.

\begin{bmatrix}
\smashoperator{{\displaystyle\bigwedge}_{\substack{j=1\\\text{where }i(j)=1}}}^n e_j
\end{bmatrix}


However this has resulted in the following:

Is there a way to make the matrix ignore the smashoperator? If this should be asked as a new question then please just let me know.

• Try with the bmatrix environment. Oct 31 '20 at 17:18
• Use \Bigl[ and \Bigr] instead of \left[ and \right]. This won't include the conditions, but it's not necessary to. Oct 31 '20 at 17:24

Don't use \left and \right to size the square brackets; instead, use either \Bigl/\Bigr (as already suggested by @egreg) or \biggl/\biggr.

\documentclass{article}
\usepackage{mathtools}
\begin{document}
$\Bigl[ \bigwedge_{\substack{j=1\\ \mathclap{\text{where i(j)=1}}}} ^n \! e_j \Bigr] \qquad\qquad \biggl[\, \bigwedge_{\substack{j=1\\ \mathclap{\text{where i(j)=1}}}} ^n \! e_j \biggr]$
\end{document}


\documentclass{article}
\usepackage{amsmath}

\begin{document}

$\underset{\text{where i(j)=1}}{\begin{bmatrix}\: \bigwedge\limits_{j=1}^n \! e_j \end{bmatrix}}$

\end{document}


Use \smashoperator[r] and add extra space to ensure the proper placement of \right]:

\documentclass{article}

\usepackage{mathtools}

\begin{document}

$\left[ \bigwedge_{\substack{j = 1 \\ \text{where } i(j) = 1}}^n e_j \right]$

$\left[ \smashoperator[r]{\bigwedge_{\substack{j = 1 \\ \text{where } i(j) = 1}}^n} e_j \hspace{0.7em} \right]$

\end{document}


Many thanks for everyone's suggestions.

In the end I've decided to use this, since it matches most closely what I had in mind:

\begin{bmatrix}
\substack{\displaystyle\hphantom{e_j}\bigwedge^n e_j\\j=1\\\text{where }i(j)=1}
\end{bmatrix}


which produces:

It still isn't the prettiest code, but it's a lot better than it was!