对齐多个不等号

对齐多个不等号

我有一个问题,关于如何对齐一组不等式的多个符号以使其看起来干净。这是我目前所拥有的:

\begin{align*}
|f(x)-f(a)| &< f(a) \\
-f(a) < f(x) - f(a) &< f(a) \\
-f(a) + f(a) < f(x) &< f(a) + f(a) \\
0 < f(x) &< 2f(a) \\
\implies f(x) &> 0.
\end{align*}

仅将右不等号相互对齐:在此处输入图片描述

我想要实现的结果类似于使用 alignat 环境时可能获得的结果。理想情况下,我希望基本上创建 3 列,其中不等号作为分隔符 - 但我希望中间列居中对齐。

另请注意,顶行只有一个不等号 - 我希望它与右侧的所有符号对齐。我该如何实现这一点?

答案1

像这样?

在此处输入图片描述

使用 owarray很简单:

\documentclass{article}
\usepackage{mathtools}

\begin{document}
\[\setlength\arraycolsep{1pt}
    \begin{array}{rcccl}
                & ~ & f(x)-f(a)|  & < & f(a) \\
-f(a)           & < & f(x) - f(a) & < & f(a) \\
-f(a) + f(a)    & < & f(x)        & < & f(a) + f(a) \\
0               & < & f(x)        & < & 2f(a) \\
                & ~ &\implies f(x)& > & 0
    \end{array}
\]
\end{document}

答案2

解决方案与alignateqparbox包。我借此机会定义了一个\eqmathbox命令:它的可选参数是一个标签(M默认情况下),它的强制参数是数学模式,显示样式。所有\eqmathbox共享相同标签的 es 都将使其内容居中在一个宽度为最大内容宽度的框中。我还定义了一个命令,它在其带星号的版本中在其参数周围\abs添加了一对隐式的。\left\lvert … \right\rvert

\documentclass{article}
\usepackage{mathtools}
\DeclarePairedDelimiter\abs\lvert\rvert
\usepackage{eqparbox}
\newcommand\eqmathbox[2][M]{\eqmakebox[#1]{$\displaystyle#2$}}

\begin{document}

\begin{alignat*}{2}
              & \phantom{{}<{}} & \eqmathbox{\abs{ f(x)-f(a)}} & < f(a) \\
  -f(a) & < & \eqmathbox{f(x)-f(a)} & < f(a) \\%
  -f(a) + f(a) & < & \eqmathbox{f(x)} & < f(a) + f(a) \\
  0 & < & \eqmathbox{f(x)} & < 2f(a) \\
               & & \implies f(x) & > 0
\end{alignat*}

\end{document} 

在此处输入图片描述

相关内容