¿Cómo declarar que un delimitador es izquierdo o derecho?

¿Cómo declarar que un delimitador es izquierdo o derecho?

TeX conoce la diferencia entre un delimitador "izquierdo" y uno "derecho" (por ejemplo, (y )) y ajusta el espaciado en consecuencia. Sin embargo, las versiones izquierda y derecha del delimitador |son las mismas, por lo que TeX tiene que adivinar. Generalmente TeX adivina correctamente, pero a veces no lo hace. Ahora, sé que puedo usar \lefty \rightforzar a TeX a considerar un determinado |como delimitador izquierdo o derecho, sin embargo, estos tienen el efecto adicional de cambiar el tamaño (que tal vez no quiero). Incluso los comandos "grandes" más pequeños \biglaumentan \bigrel tamaño (aunque sea solo una pequeña cantidad). ¿Hay alguna manera de hacer |un delimitador izquierdo o derecho sin cambiar su tamaño en absoluto?

Aquí hay un ejemplo específico donde sé cómo hacerlo, pero no es una solución general:

\documentclass{article}

\usepackage{amsmath,amssymb}

\begin{document}

$|\operatorname{A}|$

$|{\operatorname{A}}|$

$\left|\operatorname{A}\right|$

\end{document}

El espaciado es incorrecto en la primera línea y correcto en la segunda y tercera líneas. La segunda línea funciona bien, pero me parece un poco pirateada. La tercera línea no es buena ya que aumentaría el tamaño de los delimitadores si las cosas intermedias fueran más altas (y tal vez no quiero eso).

(Sí, sé que la razón por la que el espaciado es incorrecto en la primera línea es porque TeX trata la segunda |como el "argumento" de \operatorname{A}).

Respuesta1

Si dice, en una fórmula matemática, \mathopen|entonces la barra vertical se interpretará como un átomo abierto (es decir, un delimitador izquierdo), pero su tamaño no cambiará. De manera similar, \mathclose|produce un átomo cercano (es decir, un delimitador derecho) sin ningún cambio de tamaño. Véase también la respuesta al ejercicio 18.14 enEl libro de texto. MWE:

% My standard header for TeX.SX answers:
\documentclass[a4paper]{article} % To avoid confusion, let us explicitly 
                                 % declare the paper format.

\usepackage[T1]{fontenc}         % Not always necessary, but recommended.
% End of standard header.  What follows pertains to the problem at hand.



\begin{document}

For example, \( \mathopen|-x\mathclose| \neq |-x| \).

\end{document}

A pesar de esto, creo que la solución que @Bernard recomienda enun comentario, es decir, utilizar \DeclarePairedDelimiter, es lo correcto.

Editar: Como recuerda Barbara Beeton en su comentario, si el problema se limita a barras verticales simples y dobles (y si prefiere no cargar el mathtoolspaquete, sino seguir con amsmath), también puede utilizar los cuatro comandos predefinidos \lvert, \rvert, \lVerty \rVert: l significa “izquierda”, rpara “derecha”, minúscula  vpara barra simple, mayúscula Vpara barra doble.

Para una discusión más profunda, ver, por ejemplo,Usando \grande| y \derecha| versus \bigr\rvert y \right\rvert(¡Recuerdo esta pregunta porque una de las respuestas era mía!).

información relacionada