If we look at the definitions of \bigl and \bigr, we find


In other words, \bigl<bracket> is equivalent to \mathopen\big<bracket>. And yet mathtools (as explained on page 30 of its manual) uses the following constructions, at least when nostarscaled is activated:


And the manual actually stresses that these braces make a difference, at least in some fonts. Also, @egreg uses the same solution here. But why is the following not more correct?


1 Answer 1


There is no real difference. In plain TeX we see

\def\big#1{{\hbox{$\left#1\vbox to8.5\p@{}\right.\n@space$}}}

(and the LaTeX kernel has essentially the same). Thus



\mathopen{\hbox{$\left(\vbox to8.5\p@{}\right.\n@space$}}

whereas \mathopen{\big(} becomes

\mathopen{{\hbox{$\left(\vbox to8.5\p@{}\right.\n@space$}}}

A further group does no harm, but I can't see how this could make a difference with some fonts.

To be picky, in the “expansion” above \mathopen has already been digested when TeX expands \big; its job is to tell TeX to mark the next atom as an Open one. However, \mathopen\big( is “more correct”; but the group is needed in D. Arsenau's trick.

  • 1
    Well, according to the mathtools manual as well as this question, it does make a difference for the positioning of indices. (That being said, the provided answers seem to contradict themselves and each other, so I’m not entirely sure what exactly is going wrong.) Where do these positioning issues come from then, if the two constructions are close to equivalent?
    – Gaussler
    Aug 16, 2021 at 9:18

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .