amsmath의 alignat 환경을 사용하면 연속된 단순화 단계에서 대응하는 항을 같은 정렬 열에 배치할 수 있습니다. 이 안내에서는 항이 사라지는 단계를 포함해 Mac의 LaTeX 문서에서 이러한 레이아웃을 만드는 방법을 보여 줍니다.
유도 과정에 필요한 정렬 선택하기
먼저 독자가 세로 방향으로 무엇을 따라가야 하는지 결정하세요. 등호, 대응하는 항의 시작점, 또는 개별 연산자 중 하나입니다. 이들은 서로 다른 레이아웃 선택지입니다. 아래 예제에서는 식을 단순화하는 동안 이차항, 일차항, 상수항을 세 개의 고정된 위치에 유지하는 것이 목표입니다.
LaTeX Project는 수학 조판을 위해 amsmath 패키지 사용자 안내서를 참고하도록 안내합니다. 문서화된 환경은 다음과 같은 선택지를 제공합니다. LaTeX 핵심 문서, amsmath 사용자 안내서, 3.3–3.7절.
| 원하는 레이아웃 | 환경 | 사용할 위치 |
|---|---|---|
| 단순한 연쇄식을 등호에 맞춰 정렬 | align 또는 align* |
문서 본문에 직접 |
| 대응하는 여러 항 그룹을 명시적 간격으로 정렬 | alignat 또는 alignat* |
문서 본문에 직접 |
| 항을 정렬한 유도식을 하나의 식 번호 아래에 표시 | alignedat을 equation 안에 사용 |
바깥쪽 수학 환경 안 |
| 하나의 정렬 위치를 기준으로 식을 줄바꿈 | split을 equation 안에 사용 |
바깥쪽 디스플레이 안 |
| 대응하는 항을 정렬하지 않고 긴 식을 줄바꿈 | multline |
문서 본문에 직접 |
이 작업에서는 alignat*부터 시작하세요. 이 환경의 열 쌍을 사용하면 그룹 사이의 간격을 제어할 수 있습니다. 반면 align은 별도의 식 그룹 사이에 간격을 두므로 항별 유도식이 필요 이상으로 넓게 펼쳐질 수 있습니다. 별표는 식 번호를 표시하지 않습니다. amsmath 사용자 안내서, 3.6절, Learn LaTeX: 수학.
항을 정렬한 단순화 과정 완성하기
다음의 가상 예제에서는 x의 동류 거듭제곱 항을 모은 다음 계수를 축약 표기합니다. 모든 문자는 일반적인 교환 스칼라량을 나타냅니다. A=a+b, B=c+d, C=e+f를 정의하세요. 마지막 행은 항을 모은 뒤 표기법을 바꾼 것입니다.
이 완전한 문서를 term-alignment.tex로 저장하세요. 필요한 패키지는 \begin{document}보다 앞서 불러옵니다.
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Let $A=a+b$, $B=c+d$, and $C=e+f$.
Then
\begin{alignat*}{3}
P(x)&=a x^2+b x^2 &&{}+c x+d x &&{}+e+f\\
&=(a+b)x^2 &&{}+(c+d)x &&{}+e+f\\
&=A x^2 &&{}+B x &&{}+C
\end{alignat*}
\end{document}
레이아웃은 세 개의 세로 그룹으로 읽습니다. 첫 번째에는 등호와 이차항이 들어갑니다. 두 번째는 일차항 앞의 더하기 기호로 시작합니다. 세 번째는 상수항 앞의 더하기 기호로 시작합니다. 계수를 모으면 각 그룹의 너비가 달라지지만, 지정된 정렬 위치는 모든 행에서 공유됩니다.
이는 대수적으로 일치하는 항을 자동으로 인식하는 기능이 아니라, 문서화된 열 메커니즘을 적용한 것입니다. 각 식을 해당 열에 직접 배치하면 정렬 환경이 열을 정렬합니다. 구현에는 오른쪽 정렬 필드와 왼쪽 정렬 필드를 번갈아 사용합니다. amsmath 패키지, 17절.
편집하기 전에 앰퍼샌드 이해하기
alignat*에서 인수 {3}는 세 쌍의 열을 선언합니다. 따라서 필드를 모두 지정한 행에는 여섯 개의 필드와 다섯 개의 & 구분자가 있습니다. 설명서의 계산 규칙에 따르면 행에서 앰퍼샌드가 가장 많이 쓰인 개수에 1을 더한 뒤 2로 나눕니다. amsmath 사용자 안내서, 3.6절.
첫 번째 행의 필드 배정은 다음과 같습니다.
| 필드 | 내용 | 이 예제에서의 용도 |
|---|---|---|
| 1 | P(x) |
오른쪽 정렬된 좌변 |
| 2 | =a x^2+b x^2 |
왼쪽 정렬된 등식 및 이차항 그룹 |
| 3 | 비어 있음 | 사용하지 않는 오른쪽 정렬 필드 |
| 4 | {}+c x+d x |
왼쪽 정렬된 일차항 그룹 |
| 5 | 비어 있음 | 사용하지 않는 오른쪽 정렬 필드 |
| 6 | {}+e+f |
왼쪽 정렬된 상수항 그룹 |
&& 시퀀스는 필드 3과 5를 비워 둡니다. 이후 행에서는 맨 앞의 &가 필드 1을 비워 두므로 유도식을 다른 등호로 이어갈 수 있습니다. \\ 명령은 행을 끝냅니다.
{}+의 빈 그룹은 필드 경계에서 이항 더하기 기호의 간격을 지정할 수 있도록 왼쪽 피연산자 역할을 합니다. 이 그룹은 어떤 문자도 출력하지 않습니다. 예제를 수정할 때 이 형식을 유지하세요. 패키지의 정렬 서문에서도 왼쪽 정렬 필드의 시작 부분에 빈 그룹을 사용합니다. amsmath 패키지, 정렬 서문.
일반적인 소스 코드의 공백은 코드를 읽기 쉽게 만들지만, 수학 모드에서 가로 위치를 지정하지는 않습니다. 정렬은 필드 구조에 의해 이루어집니다. Learn LaTeX: 수학.
Mac에서 예제 컴파일하기
컴파일하려면 먼저 작동하는 TeX 배포판이 필요합니다. TeXShop 설치 문서에서는 MacTeX 및 BasicTeX 설치 방법을 설명하며, 응용 프로그램이 활성 배포판의 프로그램을 찾는 공용 위치로 /Library/TeX/texbin을 안내합니다. TeXShop: TeX Live 설치.
직접 컴파일하려면 파일을 데스크탑에 일반 텍스트로 저장하고 Terminal을 연 다음, 다음 두 명령을 순서대로 실행하세요.
cd "$HOME/Desktop"
/Library/TeX/texbin/pdflatex -interaction=nonstopmode -halt-on-error term-alignment.tex
생성된 term-alignment.pdf를 열어 세 항 그룹을 확인하세요. 이 안내는 데스크탑이 $HOME/Desktop에 있고 파일 이름이 표시된 그대로라고 가정합니다. 컴파일이 중단되면 PDF를 살펴보기 전에 보고된 오류를 해결하세요. 이전에 성공적으로 실행했을 때 생성된 PDF가 남아 있을 수 있습니다.
항이 사라져도 열 유지하기
상쇄가 일어날 때 고정된 레이아웃은 특히 유용합니다. 일차 계수가 c-c이라고 가정해 보세요. 일차항 위치는 비워 두면서 마지막 상수항은 앞서 나온 상수항 아래에 유지하고 싶을 수 있습니다.
다음의 완전한 문서는 전체 과정에서 동일한 여섯 필드 구조를 유지합니다. 가운데 행에는 0 계수를 명시하고, 마지막 행에서는 상수항을 그 자리로 옮기지 않은 채 해당 항을 제거합니다.
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Cancelling the linear coefficient gives
\begin{equation}
\begin{alignedat}{3}
Q(x)&=(a+b)x^2 &&{}+(c-c)x &&{}+d\\
&=(a+b)x^2 &&{}+0x &&{}+d\\
&=(a+b)x^2 && &&{}+d
\end{alignedat}
\end{equation}
\end{document}
마지막 행에서는 이차식 뒤의 && 시퀀스를 모두 유지하세요. 두 시퀀스가 그 사이의 빈 필드를 보존합니다. 한 시퀀스를 제거하면 상수항이 앞선 그룹으로 이동해 세로 배치가 전달하는 의미가 달라집니다.
이 예제는 유도식 전체에 하나의 번호를 붙이는 지원 방식도 보여 줍니다. alignedat을 equation 안에 넣으세요. 내부 환경은 내용의 자연스러운 너비를 차지하며, 이를 둘러싸는 수학 환경이 필요합니다. amsmath 사용자 안내서, 3.7절.
독자가 상쇄를 따라가는 동안에는 빈 위치가 유용합니다. 문서의 다른 곳에 최종 식만 단독으로 표시할 때는 간결한 식 (a+b)x^2+d를 쓰세요. 현재 디스플레이의 목적이 대응 관계를 보여 주는 것인지, 완성된 결과를 제시하는 것인지 판단하세요.
간격 및 정렬 문제 진단하기
개별 간격을 조정하기 전에 구조를 확인하세요. 다음 순서는 위의 두 예제 레이아웃을 기준으로 합니다.
- 패키지가 불러와졌는지 확인하세요. 서문에
\usepackage{amsmath}를 두세요. - 바깥쪽 환경을 확인하세요. 문서 본문에서
alignat*을 직접 사용하세요.alignedat은equation또는 다른 적절한 수학 환경 안에 사용하세요. - 구분자 개수를 세세요. 각 예제 행에는
{3}에 맞게&문자가 다섯 개 있습니다. 새로 추가한 행도 이 패턴과 비교해 확인하세요. - 그룹 배정을 확인하세요. 항 하나만 옆으로 이동한다면 앞 행과 필드 위치를 비교하세요.
- 수학 내용을 살펴보세요. 열이 정렬되어 있어도 부호, 계수 또는 지수가 바뀌면 대수식이 달라진 것입니다.
정렬 구분자를 너무 많이 쓰면 패키지 오류 Extra & on this line이 발생할 수 있습니다. align 같은 디스플레이를 equation 안에 잘못 중첩해도 식 구조 오류가 발생합니다. 이때는 alignedat 같은 내부 구성 요소를 사용하세요. amsmath 패키지, 17절.
열 하나가 지나치게 넓어 보이면 그 안에서 가장 긴 식을 살펴보세요. 첫 번째 예제에서는 a x^2+b x^2가 A x^2보다 더 큰 너비를 차지합니다. 이 추가 너비는 의도된 대응 관계를 뒷받침합니다. 이를 줄이기 전에 세 그룹에 각각 별도의 정렬 위치가 여전히 필요한지 생각해 보세요.
또한 정확히 무엇이 어긋나 보이는지 파악하세요. 이 예제에서는 앞에 오는 더하기 기호를 포함해 항 그룹의 시작점을 정렬합니다. 각 그룹 안의 모든 계수, 변수, 지수를 따로 정렬하지는 않습니다. 독자가 연속된 등식만 따라가면 된다면 기준점 하나만 사용하는 더 단순한 레이아웃이 읽기 쉬울 수 있습니다.
유도식을 다시 만들지 않고 설명 추가하기
변환에 설명 문장이 필요할 때 mathtools은 \shortintertext을 제공하며, 정렬 지점을 유지하면서 정렬 행 사이에 텍스트를 삽입합니다. 이 명령은 amsmath를 불러오므로 서문을 \usepackage{mathtools}로 바꾸세요. mathtools 패키지, 2절 및 3.5절.
예를 들어 해당 패키지 변경을 적용한 뒤, 아래의 레이블이 붙은 조각으로 첫 번째 완전한 문서의 정렬 블록을 바꿀 수 있습니다.
\begin{alignat*}{3}
P(x)&=a x^2+b x^2 &&{}+c x+d x &&{}+e+f\\
\shortintertext{Collect coefficients of matching powers of $x$.}
&=(a+b)x^2 &&{}+(c+d)x &&{}+e+f
\end{alignat*}
독자가 주목해야 할 연산을 문장으로 설명하세요. 여기서는 공유 열이 각 그룹의 위치를 이미 보여 주며, 삽입된 텍스트가 그룹의 형태가 바뀌는 이유를 설명합니다.
자신의 유도식에서는 먼저 의도한 항 그룹을 간단히 그려 보고, 각 그룹에 고정 필드를 배정한 다음 상쇄 과정에서도 해당 필드를 유지하세요. 새로운 변환을 추가할 때마다 컴파일하세요. 이 작업 순서를 따르면 대응 관계를 명확히 할 수 있고, 나중에 다시 편집할 때도 소스 코드를 쉽게 이해할 수 있습니다.
출처
- LaTeX 문서 — LaTeX Project.
- amsmath 패키지 사용자 안내서 — American Mathematical Society 및 LaTeX Project.
- amsmath 패키지 — LaTeX Project.
- 수학 — Learn LaTeX.
- TeX Live 설치 — TeXShop.
- mathtools 패키지 — Morten Høgholm, Lars Madsen 및 LaTeX3 Project.