Alinhar cdots horizontais em um ambiente de alinhamento

Alinhar cdots horizontais em um ambiente de alinhamento

Estou usando alignato ambiente para alinhar um conjunto de equações que descrevem praticamente a mesma coisa, mas para quantidades diferentes. Portanto decidi pular as coisas comuns e substituí-las por \cdots, porém não consigo alinhá-las no centro.

insira a descrição da imagem aqui

Alguma ideia para centralizar os pontos?

Segue um exemplo de código

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{alignat*}{4}
  &\sigma(E) &=& \vec{\sigma(E)} = \big\{\sigma(E_1), \sigma(E_2), \cdots, \sigma(E_n)\big\} &=&  \big\{\sigma_1, \sigma_2, \cdots, \sigma_n\big\}&\\
 &C(E) &=&{\cdots}&=&  \big\{C_1, C_2, \cdots, C_n\big\}&\\
\end{alignat*}

\end{document}

Responder1

Você pode resultar em TeX de baixo nível para \omitsair da formatação atual:

Exemplo de saída

\documentclass{article}

\usepackage{amsmath}

\begin{document}

\begin{alignat*}{2}
  \sigma(E) &={}& \vec{\sigma(E)}
  = \bigl\{\sigma(E_1), \sigma(E_2), \dots, \sigma(E_n)\bigr\}
  &= \bigl\{\sigma_1, \sigma_2, \dots, \sigma_n\bigr\}\\
  C(E) &={}&\omit\hfill$\cdots$\hfill
  &= \bigl\{C_1, C_2, \dots, C_n\bigr\}
\end{alignat*}

\end{document}

Observe que também adicionei grupos {}para obter o espaçamento correto nos sinais de igual e usei \bigl...\bigrem vez de \big. Também entre vírgulas você deve usar apenas \dots(ou \dotsc).

Tenha cuidado aqui com o uso do e comercial &. Em alignat, o alinhamento está implicitamente rlrl...com o primeiro grupo alinhado à direita, o segundo alinhado à esquerda, etc.

Responder2

Uma solução com o eqparboxpacote. Observe que 2 colunas de alinhamento são suficientes.

\documentclass{article}
\usepackage{amsmath}
\usepackage{eqparbox}
\newcommand{\eqmathbox}[2][M]{\eqmakebox[#1]{$\displaystyle#2$}}

\begin{document}

\begin{alignat*}{2}
  \sigma(E) &= {}& \eqmathbox{\vec{\sigma(E)} = \big\{\sigma(E_1), \sigma(E_2), \cdots, \sigma(E_n)\big\}} &= \big\{\sigma_1, \sigma_2, \cdots, \sigma_n\big\}\\
 C(E) &= {}& \eqmathbox{\cdots\cdots}&= \big\{C_1, C_2, \cdots, C_n\big\}\\
\end{alignat*}

\end{document} 

insira a descrição da imagem aqui

Responder3

arraynão é feito para alinhar equações, mas neste caso, com alguns truques ( @{}e {}onde queremos um espaçamento correto depois/antes do primeiro/último sinal de igual), pode ser conveniente.

\documentclass{article}
\usepackage{amsmath}
\usepackage{array}
\begin{document}
\[
\begin{array}{r@{}c@{}l}
  \sigma(E) ={} & \vec{\sigma(E)} = \big\{\sigma(E_1), \sigma(E_2), \cdots, \sigma(E_n)\big\} & {}= \big\{\sigma_1, \sigma_2, \cdots, \sigma_n\big\}\\
 C(E) ={} &\cdots& {}=  \big\{C_1, C_2, \cdots, C_n\big\}\\
\end{array}
\]
\end{document}

insira a descrição da imagem aqui

informação relacionada