LaTeX 中 displaymath 环境中的换行问题

4

我需要在LaTeX中写下以下公式,但是我无法将其分成多行,并且对于随后的行具有正确的缩进,这是我的代码。

\begin{displaymath}
\pi_D^B(r) = \{z^{(|D|+1)}|\exists x \in r(z[D]=x[D])\wedge \\
             \forall y \in r (y[D]=z[D]\Rightarrow y[T]\subseteq z[T])\wedge \\
             \forall y \in z[T \exists y \in r (y[D]=z[D]\wedge t \in  y[T])\}
\end{displaymath}
4个回答

7
使用amsmath包中的align环境:
\begin{align}
 \pi_D^B(r) = &\{z^{(|D|+1)}|\exists x \in r(z[D]=x[D])\wedge \\
              &\forall y \in r (y[D]=z[D]\Rightarrow y[T]\subseteq z[T])\wedge \\
              &\forall y \in z[T \exists y \in r (y[D]=z[D]\wedge t \in  y[T])\}
\end{align}

4

由于displaymath没有编号,您可能更喜欢使用align*环境而不是align。请注意,通常在对齐之前会使用&符号作为关系符号。

有关更多信息,请查看此处列出的文档之一:使用LaTeX进行数学运算

斯特凡


0

一个解决方案是使用eqnarray或更好的eqnarray*来避免方程标签。

\begin{eqnarray*} 
\pi_D^B(r)  & = & \{z^{(|D|+1)}|\exists x \in r(z[D]=x[D])\wedge \\ 
            &   & \forall y \in r (y[D]=z[D]\Rightarrow y[T]\subseteq z[T])\wedge \\ 
            &   & \forall y \in z[T \exists y \in r (y[D]=z[D]\wedge t \in  y[T])\} 
\end{eqnarray*} 

3
请避免使用 eqnarray 环境。只需 谷歌搜索 eqnarray — 几个排名靠前的结果都解释了为什么要避免使用它。 - ShreevatsaR

0

同样地,你可以在displaymath中嵌套一个split环境(来自amsmath包):

\documentclass{article}
\usepackage{amsmath}

\begin{document}
\begin{displaymath}
  \begin{split}
    \pi_D^B (r) = & \{z^{(|D|+1)} | \exists x \in r(z[D]=x[D]) \wedge \\
    & \forall y \in r (y[D]=z[D] \Rightarrow y[T] \subseteq z[T]) \wedge \\
    & \forall y \in z[T \exists y \in r (y[D]=z[D] \wedge t \in  y[T])\}
  \end{split}
\end{displaymath}
\end{document}

screenshot of output

我认为你应该修复最后一行中的z[T \exists


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接