amsmath의 alignat* 환경을 사용하면 등호를 정렬하고 각 단계 옆의 별도 열에 설명을 배치할 수 있습니다. 이 가이드에서는 Mac에서 편집할 수 있는 완전한 문서를 보여 준 다음, 번호 매기기, 간격, 긴 주석을 변경하는 방법을 설명합니다.
주석이 포함된 완전한 유도식으로 시작하기
작동하는 LaTeX 설치와 일반 텍스트 .tex 파일을 저장하는 편집기가 필요합니다. macOS의 경우 LaTeX Project는 TeX 시스템과 편집기가 포함된 MacTeX를 안내합니다. 이미 LaTeX 문서를 성공적으로 컴파일하고 있다면 기존 설정을 사용하세요. LaTeX 가져오기
derivation.tex이라는 파일을 만들고 다음 완전한 문서를 붙여 넣으세요. 이 예제에서는 환의 추상 원소를 사용합니다. 즉, 곱셈은 덧셈에 대해 분배되고, 덧셈은 결합적이며, 곱셈은 교환적일 필요가 없습니다.
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Let $a,b,c,d$ be elements of a ring.
\begin{alignat*}{2}
a(b+c)+ad
&= (ab+ac)+ad
&\qquad& \text{distributivity} \\
&= ab+(ac+ad)
&& \text{associativity of addition} \\
&= ab+a(c+d)
&& \text{distributivity}
\end{alignat*}
\end{document}
편집기의 LaTeX-PDF 워크플로를 사용해 파일을 컴파일하세요. 결과로 표시되는 수식에서 세 등호는 같은 세로 위치에, 세 설명은 또 다른 같은 위치에 있어야 합니다. 두 번째와 세 번째 줄에서는 원래 좌변을 의도적으로 생략했습니다.
amsmath 사용자 가이드에는 줄별 주석과 간격을 제어하는 alignat 변형이 명시적으로 소개되어 있습니다. 또한 수식 안에 단어를 넣는 \text을 제공하는 amstext도 불러옵니다. amsmath 패키지 사용자 가이드, §3.6, CTAN: amsmath
이 예제들은 문서와 대조해 확인했지만, 이 환경에는 LaTeX 실행 파일이 없어 여기서 컴파일하지는 않았습니다.
정렬 마커는 어떻게 설명 열을 만드나요?
각 행을 네 개의 셀로 읽으세요. 좌변, 관계 기호와 우변, 간격 셀, 설명입니다. {2} 인수는 오른쪽 정렬 열과 왼쪽 정렬 열로 이루어진 두 쌍을 지정합니다. 첫 번째 &는 등호 앞에 둡니다. amsmath 패키지 사용자 가이드, §§3.1 및 3.6
완전한 문서에서 가져온 첫 번째 행의 일부를 레이블과 함께 표시하면 다음과 같습니다.
a(b+c)+ad % cell 1: original expression
&= (ab+ac)+ad % cell 2: relation and next expression
&\qquad % cell 3: explicit gap
& \text{distributivity} % cell 4: explanation
이어지는 행은 첫 번째 셀이 비어 있으므로 &=로 시작합니다. 대수식 뒤의 &&는 간격 셀을 비워 두고 설명 셀로 이동합니다. 세 행 모두 같은 네 셀 구조를 따릅니다.
이 예제에서 첫 번째 행의 \qquad은 공유 간격 열의 간격을 설정합니다. 따라서 대수식의 길이가 서로 달라도 설명이 정렬됩니다. 이 때문에 원본 텍스트에 공백을 추가할 필요가 없습니다. 열 구조가 레이아웃을 결정합니다.
다음 대안 조각을 살펴보세요.
&= ab+(ac+ad) \qquad \text{associativity of addition}
여기서는 설명이 표현식 셀에 남아 있습니다. 위치가 해당 표현식의 너비를 따르므로 공유 설명 열을 만들지 않습니다. 뒤따르는 텍스트처럼 보이게 하려는 경우에만 이 배치를 사용하세요.
자신의 유도식에 적용할 때는 모든 정렬 마커를 유지하면서 먼저 대수식을 바꾸세요. 그런 다음 설명 문구를 바꾸세요. 결과 PDF를 확인한 뒤 마지막으로 간격을 조정하세요. 이 순서를 따르면 문제가 수식에서 비롯되었는지, 열 구조에서 비롯되었는지, 사용 가능한 너비에서 비롯되었는지 더 쉽게 파악할 수 있습니다.
어떤 환경을 선택해야 하나요?
필요한 번호 매기기와 간격에 따라 레이아웃을 선택하세요. 다음 안내 표에는 문서에 설명된 환경의 차이와 이 작업에 실용적인 권장 사항이 함께 정리되어 있습니다. amsmath 패키지 사용자 가이드, §§3.6–3.7
| 원하는 결과 | 환경 | 패키지 |
|---|---|---|
| 열 쌍 사이에 자동 간격이 적용된 정렬 단계와 설명 | align 또는 align* |
amsmath |
| 설명 앞 간격을 직접 제어 | alignat 또는 alignat* |
amsmath |
| 주석이 포함된 유도식 전체에 하나의 방정식 번호 | equation 안에 alignedat 포함 |
amsmath |
| 자동 쌍 간격을 사용하는 간결한 내부 정렬 | 수학 환경 안의 aligned |
amsmath |
| 단계 사이에 짧은 설명 문장 삽입 | 적절한 정렬 환경 안의 \shortintertext |
mathtools |
앞의 예제에서는 간격이 원본에서 눈에 보이고 수식에 번호가 필요하지 않으므로 alignat*가 유용한 시작점입니다. 자동 간격을 선호한다면 align*를 사용하세요. 이때 변경하면서 {2}를 제거하세요. 현재 구현 문서에서는 이 환경들을 서로 구분하고 별표가 붙은 형식도 각각 정의합니다. amsmath 패키지, §17.6
유도식 전체에 번호 하나 부여하기
전체 논증을 하나의 참조 대상으로 만들려면 다음 완전한 문서를 사용하세요. 바깥의 equation이 번호를 제공하고, 안쪽의 alignedat가 열을 제공합니다.
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Let $a,b,c,d$ be elements of a ring.
\begin{equation}
\label{eq:regroup}
\begin{alignedat}{2}
a(b+c)+ad
&= (ab+ac)+ad
&\qquad& \text{distributivity} \\
&= ab+(ac+ad)
&& \text{associativity of addition} \\
&= ab+a(c+d)
&& \text{distributivity}
\end{alignedat}
\end{equation}
The regrouping is shown in \eqref{eq:regroup}.
\end{document}
이 래퍼 안에서는 alignedat을 사용하세요. 최상위 alignat 환경을 equation 안에 중첩하는 것은 잘못된 방정식 구조입니다. 구현 문서에는 내부 환경과 잘못된 중첩에서 복구하는 방법이 모두 설명되어 있습니다. amsmath 패키지, §§17.4 및 17.6
대신 개별 단계에 번호가 필요하다면 별표가 없는 alignat 환경을 사용하세요. 참조할 각 행에 별도의 \label을 배치하고, 원치 않는 행 번호는 \notag으로 표시하지 않도록 하세요. amsmath 패키지 사용자 가이드, §§3.1 및 3.11
설명이 너무 길면 어떻게 해야 하나요?
측면 열에는 “분배법칙”이나 “정의”처럼 짧은 이유를 넣으세요. 설명이 문장으로 길어지면 편집상 유용한 방법은 단계 사이로 옮기는 것입니다. 그러면 설명 공간이 확보되고 대수식을 훑어보기 쉬워집니다.
mathtools 패키지는 amsmath를 불러오고 \intertext보다 세로 간격을 좁게 하여 정렬을 끊는 \shortintertext을 제공합니다. 두 명령 모두 산문이 들어간 부분을 지나도 정렬을 유지합니다. mathtools 패키지, §§2 및 3.5
\documentclass{article}
\usepackage{mathtools}
\begin{document}
Let $a,b,c,d$ be elements of a ring.
\begin{align*}
a(b+c)+ad &= (ab+ac)+ad \\
\shortintertext{Regroup the sum before factoring the last two terms.}
&= ab+(ac+ad) \\
&= ab+a(c+d)
\end{align*}
\end{document}
이 대안은 표현 방식을 의도적으로 바꿉니다. 한 문장이 행 사이의 전환을 설명하면서도 등호 정렬은 유지됩니다. 더 긴 산문을 넣으려면 amsmath을 통해 \intertext을 사용할 수 있습니다. 위에 표시된 간결한 명령에는 mathtools가 필요합니다. mathtools 패키지, §3.5
정렬이 어긋난 결과는 어떻게 진단하나요?
간격을 조정하기 전에 문서를 가장 작고 완전한 예제와 비교하세요. 다음 점검 항목은 여기서 사용한 구조를 대상으로 합니다. 구현 문서에는 열 개수 오류와 잘못된 중첩이 설명되어 있습니다. amsmath 패키지, §17
- 구분자 개수를 세세요. 앞의 예제에서 각 대수 행에는
&마커가 세 개 있으며{2}을 사용합니다. - 설명 셀을 확인하세요. 이어지는 행에서도
&&를 유지해 설명이 네 번째 셀에 들어가도록 하세요. - 행 끝을 확인하세요. 완전한 예제에 나온 것처럼 단계 사이에
\\을 유지하세요. - 래퍼를 확인하세요. 독립적인
alignat*을 사용하거나equation안에서alignedat을 사용하세요. - 가장 긴 행을 검토하세요. 페이지가 비좁다면 간격을 줄이기 전에 설명을 짧게 하거나 문장을 단계 사이로 옮겨 보세요.
표시된 대수식과 설명을 하나의 레이아웃으로 다루세요. 네 셀 패턴으로 시작하고, 독자가 유도식을 어떻게 참조할지에 따라 번호 매기기를 선택한 다음, 측면 열에는 간결한 이유만 넣으세요. 긴 설명은 수학적 순서를 흐리지 않으면서 단계 사이로 옮길 수 있습니다.
출처
- LaTeX 가져오기 — LaTeX Project.
- Amsmath — LaTeX용 AMS 수학 기능 — CTAN.
- amsmath 패키지 사용자 가이드 — CTAN을 통한 American Mathematical Society 및 The LaTeX Project.
- amsmath 패키지 — CTAN을 통한 The LaTeX Project.
- mathtools 패키지 — CTAN을 통한 Morten Høgholm, Lars Madsen 및 The LaTeX3 Project.