0

Compare result of the following two examples:

$1\mathopen{\hbox{$\left(\vbox to8.5pt{}\right.\nulldelimiterspace=0pt \mathsurround=0pt$}}$
\end
$1\left(\vbox to8.5pt{}\right.$
\end

Why \left( in the first example produces less spacing than in the second? (although the construction in the first example includes the construction from the second example as a subset, so, intuitively, effect should not be smaller)

Igor Liferenko
  • 7,063
  • 2
  • 14
  • 47

1 Answers1

3

The construction \left<delim><math material>\right<delim> forms an Inner atom, which is surrounded by thin spaces, by rule, if part of another formula, according to the spacing rules described in the TeXbook.

Compare

!$\left(x\right)$!

!$\left(x\right)x$!

!$x\left(x\right)x$!

\bye

enter image description here

See the spacing table in https://tex.stackexchange.com/a/81777/4427, or the original table in the TeX book, page 170.

In the \bigl construction, the math formula with \left and \right has no atom before \left and after \right, so no thin space is added.

You can use mleftright.sty, even with plain TeX:

\input mleftright.sty

!$\left(x\right)$!

!$\left(x\right)x$!

!$x\left(x\right)x$!

!$x\mleft(x\mright)x$!

\bye

enter image description here

Consult the source code of mleftright.sty in order to understand the trick.

egreg
  • 1,121,712
  • For those who want to know the trick without looking into mleftright.sty: !$x\mathopen{}\mathclose\bgroup\left(x\aftergroup\egroup\right)x$! – Igor Liferenko Jul 24 '19 at 06:12
  • If one does not want to use mleftryght.sty, the following may be used: !$x\mathopen{}\left(x\right)\mathclose{}x$!, and if right delim is sub/super-scripted, \mathclose{ should be put before \left instead. – Igor Liferenko Jul 24 '19 at 06:49