¿Por qué \big\mid no funciona?

¿Por qué \big\mid no funciona?

Es bien sabido \big\midque arroja un error. ¿Pero por qué es así? Hasta donde yo sé, \mides equivalente a \mathrel|, mientras que \lverty \rvertson equivalentes a \mathopen|y \mathclose|, respectivamente, al igual que \vertes equivalente a |. Y \lvert,\rvert,hacertrabajar con ambos \big, \bigly \bigr. Entonces, por simetría, creo que tendría sentido que también \midfuncionara con etc.\big,\bigm

MWE:

\documentclass{article}

\begin{document}
$\bigl\rvert ... \bigr\lvert$ works fine.

$\big\mid$ does not.
\end{document}

Tenga en cuenta que no estoy buscando unsoluciónpara imprimir un más alto \mid; Sé que podría usar \big|o \bigm|. Tengo curiosidad.

Respuesta1

  • Los comandos \bigl\vert, \bigm\verty \bigr\vertson semánticamente simétricos. Por cierto, los tripletes de comandos \bigl\lvert \bigl\vert \big\lverty \bigr\rvert \bigr\vert \big\rvert, respectivamente, producen el mismo resultado.

  • Es el comando \midel que es un poco atípico, semánticamente hablando. Como @egreg señaló en un comentario, \midse construye como un símbolo de relación y no está configurado para tomar un prefijo que modifique el tamaño.

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{amsmath}
\begin{document}

\dots\ $\bigl\lvert \ldots \bigm| \ldots \bigr\rvert$ \dots\ works fine.

\dots\ $\bigl\vert \ldots \bigm\vert \ldots \bigr\vert$ \dots\ works just the same.

\dots\ $\bigl\vert \ldots \big| \ldots \bigr\vert$ \dots\ works too, but it isn't the same.

\end{document}

Respuesta2

Su uso \biges generalmente incorrecto, porque produce un átomo ordinario. Por lo tanto, es mejor utilizarlos \biglpara abrir vallas, \bigrpara cerrarlas y \bigmpara las relaciones.

La definición de \bigXen última instancia lo hace \bigde todos modos, pero primero agrega el tipo correcto. Y \big<token>simplemente lo hace

\left<token>

entonces debemos asegurarnos de que el argumento to \bigXsea un delimitador, lo cual \midno lo es.

En principio, se podría eliminar esta limitación para las relaciones que sabemos que se basan en un delimitador:

\documentclass{article}
\usepackage{amsmath}

\makeatletter
\let\amsmath@bigm\bigm

\renewcommand{\bigm}[1]{%
  \ifcsname fenced@\string#1\endcsname
    \expandafter\@firstoftwo
  \else
    \expandafter\@secondoftwo
  \fi
  {\expandafter\amsmath@bigm\csname fenced@\string#1\endcsname}%
  {\amsmath@bigm#1}%
}

\newcommand{\DeclareFence}[2]{\@namedef{fenced@\string#1}{#2}}
\makeatother

\DeclareFence{\mid}{|}

\begin{document}

$\bigl\{\, x\in X \bigm\mid x\notin X \,\bigr\}$

\smallskip

$\bigl\{\, x\in X \bigm| x\notin X \,\bigr\}$

\end{document}

Esto es solo una prueba de concepto, por lo que no intenté una generalización a \bigmhermanos \Bigmy .\biggm\Biggm

ingrese la descripción de la imagen aquí

información relacionada