我使用的代码是这样的:
\[
\begin{cases}
W_n(\mathcal{O}_k) =\{X^{(n)}=(x_0,x_1,\cdots,x_{n-1})\in W_n(k): x_i\in \mathcal{O}_k,\text{ } i\in{\{0,1,\cdots, n-1\}} \}\\
W_n(m_k)=\{X^{(n)}=(x_0,x_1,\cdots,x_{n-1})\in W_n(k) :x_i\in m_k,\text{ } i\in{\{0,1,\cdots, n-1\}}\} \\
W_n(m_k)^{(m)}=
\{X^{(n)}=(x_0,x_1,\cdots,x_{n-1})\in W_n(k):
v(x_i)\geq m/p^{n-1-i},\text{ } i\in{\{0,1,\cdots, n-1\}} \}
\end{cases}\]
效果很好,但当我改变间距等时,第三个方程变得太长,这意味着我必须改变一些东西。我选择了最简单的方法,\{W_n(m_k)^{(m)}
只需这样做就可以拆分集合的定义
W_n(m_k)^{(m)}=
\{X^{(n)}=(x_0,x_1,\cdots,x_{n-1})\in W_n(k): \\
v(x_i)\geq m/p^{n-1-i},\text{ } i\in{\{0,1,\cdots, n-1\}} \}
但至少我应该把这两条定义线对齐。
我怎样才能做到这一点?(我试过使用\align
,\aligned
但似乎不适用于cases
。
或者有没有更好的方法用两行来写一个集合?
答案1
你是指这样的事情吗?
\[
\begin{cases}
W_n(\mathcal{O}_k) = \{X^{(n)} = (x_0, x_1, \cdots, x_{n-1}) \in W_n(k): x_i \in \mathcal{O}_k,\text{ } i \in{\{0, 1, \cdots, n-1\}} \}\\
W_n(m_k) = \{X^{(n)} = (x_0, x_1, \cdots, x_{n-1}) \in W_n(k): x_i \in m_k,\text{ } i \in{\{0, 1, \cdots, n-1\}}\} \\
W_n(m_k)^{(m)} =
\{X^{(n)} = (x_0, x_1, \cdots, x_{n-1}) \in W_n(k): \\
\hphantom{W_n(m_k)^{(m)} = \strut}v(x_i) \geq m/p^{n-1-i},\text{ } i \in{\{0, 1, \cdots, n-1\}} \}
\end{cases}
\]
\hphantom
保留水平空间,而\strut
只是一个随机技巧,用于添加“等号后间距”。不过,这不是一个非常漂亮的解决方案。附注:在方程式中添加空格应该会使它们更容易处理。它们通常在数学编译期间被忽略,因此让代码更漂亮很方便。您甚至可以添加换行符!♥ 您可能还想考虑使用类似\quad
或\enspace
各种数学空格之一来代替\text{ }
。
您可能能够编写另一个解决方案,使用array
一个单独的大左花括号代替cases
。 尝试以下愚蠢的例子来了解我的意思:
$\left\{
\begin{array}{@{} r l @{}}
x &= 1 \\
\mathit{plop} &= 2
\end{array}
\right.$
不过我现在没时间亲自做这件事。抱歉。
答案2
我会对齐符号=
,并将第三个方程拆分,以便\geq
运算符与上面的对齐=
。我还更改了几件事;外部分隔符更改为\bigl\{
和\bigr\}
,\cdots
更改为\dotsc
,这意味着逗号之间的点。
\documentclass[12pt,a4paper]{article}
\usepackage{amsmath}
\begin{document}
\[\begin{cases}
\begin{aligned}
W_n(\mathcal{O}_k) &=\bigl\{X^{(n)}=(x_0,x_1,\dotsc,x_{n-1})\in W_n(k): x_i\in \mathcal{O}_k,\, i \in{\{0,1,\dotsc, n-1\}}\bigr\}\\
W_n(m_k) &=\bigl\{X^{(n)}=(x_0,x_1,\dotsc,x_{n-1})\in W_n(k): x_i\in m_k,\, i\in{\{0,1,\dotsc, n-1\}}\bigr\} \\
W_n(m_k)^{(m)} &=\begin{aligned}[t]\bigl\{X^{(n)} &=(x_0,x_1,\dotsc,x_{n-1})\in W_n(k): \\
v(x_i) &\geq m/p^{n-1-i},\, i\in{\{0,1,\dotsc, n-1\}} \bigr\} \end{aligned}
\end{aligned}
\end{cases}\]
\end{document}
答案3
LaTeX 提供了很多可能性。这是另一种解决方案。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
\begin{cases}
W_n(\mathcal{O}_k) = \bigl\{ X^{(n)}= (x_0, x_1, \dotsc, x_{n-1}) \in
W_n(k) \mid x_i \in \mathcal{O}_k,\ 0 \le i \le n-1 \bigl\}\\
W_n(m_k) = \bigl\{ X^{(n)}= (x_0, x_1, \dotsc, x_{n-1}) \in W_n(k)
\mid x_i\in m_k,\ 0 \le i \le n-1 \bigl\}\\
W_n(m_k)^{(m)} = \bigl\{ X^{(n)} = (x_0, x_1, \dotsc, x_{n-1}) \in
W_n(k) \mid {}\\[-2pt]
\hfill v(x_i)\geq m/p^{n-1-i},\ 0 \le i\le n-1 \bigl\}
\end{cases}
\]
\end{document}
答案4
我将使用一个matrix*[l]
环境或者empheq
包并稍微改变布局:
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{empheq}
\begin{document}
\[
\begin{cases}
W_n(\mathcal{O}_k) =\bigl\{X^{(n)}=(x_0,x_1,\cdots,x_{n-1})\in W_n(k): x_i\in \mathcal{O}_k,\text{ } i\in \{0,1,\cdots, n-1\}\bigr \}\\[1ex]
W_n(m_k)=\bigl\{X^{(n)}=(x_0,x_1,\cdots,x_{n-1})\in W_n(k) :x_i\in m_k,\text{ } i\in \{0,1,\cdots, n-1\} \bigr\} \\[1ex]
W_n(m_k)^{(m)}=
\biggl\{X^{(n)}=(x_0,x_1,\cdots,x_{n-1})\in W_n(k): \:\Bigm\vert
\begin{matrix*}[l]v(x_i)\geq m/p^{n-1-i},\text{ }\\[-0.5ex] i\in\{0,1,\cdots, n-1\}\end{matrix*}\biggr \}
\end{cases}\]
\begin{empheq}[left=\empheqlbrace\,, right ={\qquad( i\in \{0,1,\cdots, n-1\})} ]{align*}
& W_n(\mathcal{O}_k) =\bigl\{X^{(n)}=(x_0,x_1,\cdots,x_{n-1})\in W_n(k): x_i\in \mathcal{O}_k \}\bigr \}\\[1ex]
& W_n(m_k)=\bigl\{X^{(n)}=(x_0,x_1,\cdots,x_{n-1})\in W_n(k) :x_i\in m_k \bigr\} \\[1ex]
& W_n(m_k)^{(m)} = \Bigl\{X^{(n)}=(x_0,x_1,\cdots,x_{n-1})\in W_n(k): v(x_i)\geq m/p^{n-1-i} \Bigr \}
\end{empheq}
\end{document}