\LaTeX の数式において,場合分けのかき方をまとめて紹介します。
基本的に amsmath, mathtools
パッケージの使用は前提とし,後半は empheq
パッケージを用いた方法も紹介します。
場合分けのコマンド一覧
主な環境をまとめました。すべて数式環境の中で用います。
& 以降数式モード | & 以降テキストモード | |
---|---|---|
\Bigl\{ テキストスタイル | cases | cases* |
\Bigl\{ ディスプレイスタイル | dcases | dcases* |
テキストスタイル \Bigr\} | rcases | rcases* |
ディスプレイスタイル \Bigr\} | drcases | drcases* |
cases
環境は amsmath
パッケージが必要で,それ以外の7つの環境は,追加で mathtools
パッケージも必要です。順番に紹介しましょう。
cases環境
cases
環境は最も基本的なものです。これは,&
の前に数式をかき,&
以降に場合分けの条件をかくことを想定しています。以下がその例です。
\begin{equation}
f(x)=
\begin{cases}
\int_0^x g(t)\,dt & \text{if $x>0$,} \\
0 & \text{if $x=0$,} \\
\frac{1}{x} & \text{if $x<0$.}
\end{cases}
\end{equation}
\begin{equation} f(x)=\begin{cases} \int_0^x g(x)\, dx & \text{if } x>0, \\ 0 & \text{if } x=0, \\ \frac{1}{x} & \text{if } x<0. \end{cases} \end{equation}
場合分けの中身の数式は,テキストスタイルになります(関連:【LaTeX】数式の4つのスタイル~ディスプレイ・テキストスタイル~)。また,数式番号は全体で一つです。各場合分けごとに番号を振りたい場合は,後半で解説する,empheq
パッケージを用います。
cases*環境
cases
環境とほぼ同じですが,&
以降はテキストモードになるため,上のように \text{}
をつける必要がなくなります。以下がその例です。
\begin{equation}
f(x)=
\begin{cases*}
\int_0^x g(t)\,dt & if $x>0$, \\
0 & if $x=0$, \\
\frac{1}{x} & if $x<0$.
\end{cases*}
\end{equation}
\begin{equation} f(x)=\begin{cases} \int_0^x g(x)\, dx & \text{if } x>0, \\ 0 & \text{if } x=0, \\ \frac{1}{x} & \text{if } x<0. \end{cases} \end{equation}
出力は先ほどと同じです。
dcases, dcases*環境
cases, cases*
環境と似ていますが,場合分けの中身の数式がディスプレイスタイルになります。
rcases, rcases*環境
cases, cases*
環境と類似ですが,場合分けの括弧が右につきます。
\begin{equation}
\begin{rcases}
\int_0^x g(t)\,dt & if $x>0$, \\
0 & if $x=0$, \\
\frac{1}{x} & if $x<0$.
\end{rcases}
=f(x)
\end{equation}
\begin{equation} \begin{rcases} \int_0^x g(x)\, dx & \text{if } x>0, \\ 0 & \text{if } x=0, \\ \frac{1}{x} & \text{if } x<0. \end{rcases}=f(x) \end{equation}
drcases, drcases*環境
rcases, rcases*
環境と類似ですが,中の数式がディスプレイスタイルになります。
より原始的なかき方
より原始的なかき方としては,\left{ ... \right.
を用いて,中に aligned
環境など,数式内で用いる環境を使う方法です。
これのメリットは,(aligned
や alignedat
環境の場合は) &
が複数使えて,より自由度が高いことです。以下の例を見てください。
\begin{equation}
\left\{
\begin{alignedat}{2}
10 & x+{} & 2 & y=0 \\
5 & x+{} & 37 & y=9
\end{alignedat}
\right.
\end{equation}
\begin{equation} \left\{ \begin{alignedat}{2} 10 & x+{} & 2 & y=0 \\ 5 & x+{} & 37 & y=9 \end{alignedat} \right. \end{equation}
&
を多く使うことで,変数 x,y の位置をそろえることに成功しています。ちなみに,+
の後の {}
は,+
を二項演算子と認識させるためのものです。
empheqパッケージを用いた場合分け
ここからは,empheq
パッケージを用いた場合分けをみます。上の例と異なり,各式に数式番号が打てるのがポイントです。\usepackage{empheq}
としてください。これを使うと,amsmath, mathtools
パッケージは暗黙的に読み込まれます。
empheq
パッケージは,emphasize equations の意味で,本来は数式を強調するためのパッケージです。これを場合分けとして用いるには,
\begin{empheq}[left={f(x)=\empheq<delim-name>}]{<AMS-env name>}
\end{empheq}
のようにします。たとえば,
\begin{empheq}[left={f(x)=\empheqlbrace}]{alignat=2}
& \int_0^x g(x)\,dx &\qquad &\text{if $x>0$,} \\
& 0 & &\text{if $x=0$,} \\
& \frac{1}{x} & &\text{if $x<0$}
\end{empheq}
のような感じです。数式番号が別々につきましたね。中身はディスプレイスタイルになります。
<AMS-env name>
には align
や alignat=2
や gather
といった,amsmath パッケージで定義された環境を入れ,環境内の数式はその形式でかきます(関連記事:【LaTeX】数式環境まとめ【amsmath】)。
\empheq<delim-name>
には,どの括弧を使うか指定します。選べるものは,以下の通りです。
括弧 | 自動サイズ調整の括弧 | より大きいサイズの括弧 |
---|---|---|
\{ | \empheqlbrace | \empheqbiglbrace |
\} | \empheqrbrace | \empheqbigrbrace |
[ | \empheqlbrack | \empheqbiglbrack |
] | \empheqrbrack | \empheqbigrbrack |
\langle | \empheqlangle | \empheqbiglangle |
\rangle | \empheqrangle | \empheqbigrangle |
( | \empheqlparen | \empheqbiglparen |
) | \empheqrparen | \empheqbigrparen |
\lvert | \empheqlvert | \empheqbiglvert |
\rvert | \empheqrvert | \empheqbigrvert |
\lVert | \empheqlVert | \empheqbiglVert |
\rVert | \empheqrVert | \empheqbigrVert |
\lfloor | \empheqlfloor | \empheqbiglfloor |
\rfloor | \empheqrfloor | \empheqbigrfloor |
\lceil | \empheqlceil | \empheqbiglceil |
\rceil | \empheqrceil | \empheqbigrceil |
オプションで,[left=...]
の代わりに [right=...]
とすれば,右に括弧をつけることも可能です。例をみましょう。
\begin{empheq}[left={f(x)=\empheqlbrace},right={\empheqrbrace\implies P}]{alignat=2}
& g(x) &\quad &\text{$x\ge 0$のとき} \\
& h(x) &\quad &\text{$x<0$のとき}
\end{empheq}