
このスレッドが他の多くのスレッドと似ているようでしたら申し訳ありませんが、私は自分の問題に対するよい解決策を見つけることができませんでした。基本的には、いくつかの方程式を整列させたいのですが、これらの方程式を複数の行に分割し、次のようにさまざまなポイントを使用してインデントしたいとも思っています (たとえば、2 つのブレーク ポイントがある方程式 4 を参照してください)。
主な問題は、 の場合alignat
、 は&
「この点をこの点に揃える」という単純なマークではなく、&
実際に列を区切るものであるということです。そのため、その前または後の 1 行が長すぎると、同じ列にある他のすべての要素が長くなります。
今のところ、私は\nonumber
(つまり、(2)
行数が偶数の場合、 のような方程式の数字は方程式の中央に配置されません)と を\hspace{<find the good space in 5 tries>}
あらゆる場所に配置する方法で問題を解決していますが、これは実際には実用的でもエレガントでもありません。
もっと良い解決策はありますか? ここに、冒頭に私の「理想的な構文」を記載した MWE があります:
\documentclass{article}
\usepackage{mathtools}
\begin{document}
My ideal syntax:
% \begin{align}
% 2\times(1+\dots+10) &= 2 \times (1+2+3+4+5+6+7+8+9+10)\\
% &=
% \begin{split}
% 2 \times (&1+2+3+4\\
% &+5+6+7+8+9+10)\\
% \end{split}
% &=
% \begin{split}
% (1+1) \times (&3+7\\
% &+11+7+8+19)
% \end{split}
% &=
% \begin{split}
% (1+1) \times (&1+2+&(3
% & &+4)\\
% &+ 11+7+8+19)
% \end{split}
% \end{align}
My more or less ideal result:
\begin{align}
2\times(1+\dots+10) &= 2 \times (1+2+3+4+5+6+7+8+9+10)\\
&= 2 \times (1+2+3+4\\
&\hspace{10mm} +5+6+7+8+9+10)\nonumber\\
&= (1+1) \times (3+7\\
&\hspace{20mm}+ 11+7+8+19)\nonumber\\
&= (1+1) \times (1+2+(3\nonumber\\
&\hspace{33mm}+ 4)\\
&\hspace{20mm}+ 11+7+8+19)\nonumber
\end{align}
\end{document}
- 編集 -
提案された解決策は素晴らしいのですが、括弧を挿入するマクロを使用する場合は問題があります。たとえば、次の画像について考えてみましょう。最初の行の右側にある括弧は、2 行目にあると予想します。改行を追加すると、3 行目に単独で表示されますが、これは予想どおりではありません。 の後に何かを追加した場合も同じ問題が発生します。マクロ内に\pr
を挿入せずにこのコードを動作させることは可能ですかalignedat
? (環境があるとインデントが自動で行われるため、環境を使用するのが好きですが、 の環境コマンドを生成する方法が見つかりませんpr
...
\documentclass{article}
\usepackage{mathtools}
\usepackage{etoolbox}
\newcommand*{\pr}[2][]{\Pr_{\substack{#1}}[\,#2\,]}
\begin{document}
\begin{align}
&\pr[a \leftarrow \{0,1\}]{
\begin{alignedat}[t]{2}
&\forall x\\
& \pr[b \leftarrow \{0,1\}]{b = a} \geq \delta
\end{alignedat}}+\alpha\\
&\geq \eta
\end{align}
\end{document}
ありがとう!
答え1
環境をネストすることができますalignedat
。
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{alignat}{2}
2\times(1+\dots+10) &= 2 \times (1+2+3+4+5+6+7+8+9+10)\\
&=
\begin{alignedat}[t]{2}
2 \times (&1+2+3+4\\
&+5+6+7+8+9+10)
\end{alignedat}\\
&=
\begin{alignedat}[t]{2}
(1+1) \times (&3+7\\
&+11+7+8+19)
\end{alignedat}\\
&=
\begin{alignedat}[t]{2}
(1+1) \times (&1+2+
\begin{alignedat}[t]{2}
&(3\\
&+4)
\end{alignedat}\\
&+ 11+7+8+19)
\end{alignedat}
\end{alignat}
\end{document}