기타 기호

1655년, 옥스퍼드의 수학자 존 월리스는 원뿔곡선을 다룬 책에 그때까지 아무도 쓰지 않던 옆으로 누운 8을 적었습니다. 무한대 ∞의 탄생입니다. 이 페이지에서 다루는 「기타 기호」, 곧 LaTeX의 \infty, \partial, \nabla, \ell, \hbar, \dagger처럼 그리스 문자에도 연산자에도 관계 기호에도 화살표에도 속하지 않는 기호들은 거의 모두 이런 식으로 생겼습니다. 누군가 한 번 만들었고, 그대로 눌러앉은 것입니다. 아래에서는 실제로 자주 입력하는 기호를 유래와 용도별로 따라가면서, 어떤 것이 LaTeX 표준이고 어떤 것에 amssymb 패키지가 필요한지, 그리고 \ell과 알파벳 l, \prime과 아포스트로피 같은 대표적인 혼동을 어떻게 피하는지까지 살펴봅니다.

본문에 \infty를 쓰면 ! Missing $ inserted가 나는 이유

이 장의 기호가 거의 모두 수식 모드 전용 명령이기 때문입니다. 본문에 \infty를 그대로 치면 LaTeX은 ! Missing $ inserted라고 알리고 $를 대신 채워 넣으려 합니다. TeX에게 ∞는 그림이 아니라 보통 기호(ordinary) 로 분류된 원자이며, 그 분류에서 나오는 좌우 간격이 수식 모드 밖에서는 아예 정의되어 있지 않습니다. 그래서 $\infty$처럼 감싸서 씁니다. 예외는 애초에 본문용으로 만들어진 기호들로, 절 기호 \S(§), 단락 기호 \P(¶), \copyright(©), 그리고 칼표 \dag\ddag는 텍스트 모드에서 그대로 쓸 수 있습니다.

document.tex
\usepackage{amssymb}   % needed for \varnothing, \square, \measuredangle, \circledR
% ...
The volume $V$ diverges to $\infty$, and the gradient is $\nabla f$.
\[
  \frac{\partial f}{\partial x}, \qquad \angle ABC = 90^\circ, \qquad \hbar\omega
\]

또 하나의 갈림길은 패키지 규칙입니다. \infty, \partial, \nabla, \angle, \ell, \hbar, \Re, \Im, \wp, \aleph, \surd, \prime, \dagger, \ddagger, \forall, \exists, \neg, \top, \bot, \emptyset, \flat, \sharp, \natural모두 LaTeX 표준이라 추가 패키지가 필요 없습니다. 반면 \varnothing(∅의 둥근 이체자), \square(□), \measuredangle(∡), \circledR(®), 히브리 문자 \beth(ℶ) 등은 AMS가 더한 것이어서, 프리앰블에 \usepackage{amssymb}를 빠뜨리면 ! Undefined control sequence로 멈춥니다. 이 오류가 보이면 철자보다 패키지를 먼저 의심하면 됩니다.

∞・∂・∇・∠ 는 어디에서 왔는가

모두 한 사람이 들여오고 다음 세대가 받아들인 기호입니다. \infty(∞)는 월리스가 1655년 『De sectionibus conicis』에서 처음 썼고, 왜 그 모양을 골랐는지는 본인이 설명을 남기지 않았습니다. \partial(∂), 곧 둥근 d는 1786년 르장드르가 편미분 표기로 사용했으나 뒤에 스스로 접었고, 1841년 야코비가 되살리면서 자리를 잡았습니다. 가장 재미있는 것은 \nabla(∇)입니다. 이 모양에 "나블라"라는 이름을 붙인 사람은 백과사전 편찬자 윌리엄 로버트슨 스미스로, 1870년 피터 거스리 테이트에게 보낸 편지에서 거꾸로 된 델타가 페니키아의 하프(그리스어 νάβλα)를 닮았다고 적었습니다. 테이트와 맥스웰은 사신에서 반쯤 농담처럼 이 별명을 계속 썼고, 그대로 전 세계 교과서에 실리게 되었습니다.

실무에서는 이 넷 모두 비슷하게 생긴 다른 기호와의 혼동이 그대로 오식이 됩니다. \nabla(∇)와 대문자 델타 \Delta(Δ)는 위아래만 뒤집힌 관계라, 기울기를 쓴다고 하면서 Δ를 쳐도 조판은 아무 말도 하지 않습니다. \partial은 반드시 명령으로 쓰고 이탤릭 d로 대신하지 마십시오. 그러면 독자가 전미분과 편미분을 구별할 수 없게 됩니다. \infty는 단독으로 쓰이기보다 \lim_{n \to \infty}\int_0^{\infty}처럼 첨자 안에서 쓰이는 경우가 훨씬 많고, 그 자리에서는 자동으로 작게 조판됩니다. \surd(√)는 근호의 갈고리 부분만이어서 가로줄이 늘어나지 않습니다. 실제로 제곱근을 조판하려면 인수를 받는 \sqrt{x}를 쓰십시오. \angle(∠)은 표준이지만 측정각 \measuredangle(∡)와 구면각 \sphericalangle(∢)에는 amssymb가 필요합니다.

명령글리프의미 / 용도
\infty무한대; 표준; \lim_{n \to \infty}에서 자주 씀
\partial편미분의 둥근 d; 표준; d로 대신하지 않음
\nabla나블라 / 델(grad, div, curl); 표준; \Delta와 혼동 금지
\angle각; 표준; \measuredangle ∡ 는 amssymb 필요
\surd근호의 갈고리 부분만; 표준; 제곱근에는 \sqrt{x}
\prime프라임; 표준; 보통 f'로 씀

문자가 기호로 승격될 때: ℓ・ℏ・ℜ・℘・ℵ

이들은 본래 문자였다가 서체를 바꾸거나 획을 하나 더하면서 독립된 뜻을 떠맡게 된 기호입니다. \ell(ℓ)은 필기체 소문자 l로 길이, 직선, 수열의 첨자 등에 쓰입니다. \hbar(ℏ)는 h에 가로줄을 그은 모양으로 환산 플랑크 상수 h/2π를 뜻합니다. 획 하나를 더해 다른 상수가 되는, 물리학다운 명명법의 전형입니다. \wp(℘)는 장식체 p로 바이어슈트라스 타원함수를, \aleph(ℵ)는 히브리 문자 알레프로 무한 기수를 나타냅니다. \Re\Im은 복소수의 실수부와 허수부를 주는데, 출력은 로만체 R・I가 아니라 프락투어체 ℜ・ℑ입니다. 모두 LaTeX 표준이며 amssymb는 필요 없습니다.

여기서 실무적인 판단이 두 가지 나옵니다. 첫째, 프락투어체 ℜ・ℑ는 요즘 지면에서는 다소 예스럽게 보이고, 독자가 R이나 I로 잘못 읽는 일도 실제로 있습니다. 정체의 "Re"・"Im"을 연산자로 조판하려면 amsmath\operatorname{Re}\operatorname{Im}을 쓰는 것이 지금의 정석이며, 앞뒤 간격도 연산자에 맞게 잡힙니다. 둘째, \aleph는 표준이지만 알레프 다음에 오는 히브리 문자 베트 ℶ・기멜 ℷ・달레트 ℸ(\beth, \gimel, \daleth)에는 amssymb가 필요합니다. 집합론 논문에서 ℶ를 치고 ! Undefined control sequence가 나오는 이유는 거의 항상 이것입니다.

명령글리프의미 / 용도
\ell필기체 소문자 l(길이, 직선); 표준
\hbar환산 플랑크 상수 h/2π; 표준
\Re실수부; 프락투어체; 정체는 \operatorname{Re}
\Im허수부; 프락투어체; 정체는 \operatorname{Im}
\wp바이어슈트라스 p(타원함수); 표준
\aleph알레프(무한 기수); 표준
\beth베트(기수); amssymb 필요

한정 기호, 부정, ⊤/⊥ 그리고 공집합

논리에 쓰는 기호 \forall(∀), \exists(∃), \neg(¬, 별칭 \lnot), \top(⊤), \bot(⊥)은 모두 LaTeX 표준입니다. ∀는 "all"의 A를 뒤집은 모양, ∃는 "exists"의 E를 뒤집은 모양으로, 생김새가 곧 유래를 말해 줍니다. 하나 알아 두면 이득인 구별이 \bot\perp입니다. 글리프는 둘 다 ⊥이지만 \bot은 보통 기호(ordinary), \perp는 관계 기호(relation) 로 등록되어 있어 앞뒤에 들어가는 간격이 다릅니다. 거짓이나 최소원의 뜻이면 \bot을, 수직이라는 관계를 쓸 때는 AB \perp CD처럼 \perp를 고르십시오. 같은 이치로 \top은 참이나 최대원에 씁니다. 부정 존재 한정 기호 \nexists(∄)만은 amssymb가 필요합니다.

공집합에는 두 가지 표기가 있습니다. 표준인 \emptyset은 빗금을 그은 타원이라 Computer Modern에서는 납작한 0처럼 보이기도 합니다. amssymb\varnothing은 빗금 그은 정원이며, 한눈에 "0이 아니다"라고 읽히기 때문에 이쪽을 선호하는 저자가 많습니다. 어느 쪽을 골라도 좋지만 한 문서 안에서 섞어 쓰지는 마십시오. 섞으면 심사에서 반드시 지적됩니다. \varnothing을 쓴다면 \usepackage{amssymb}를 잊지 마십시오. 잊으면 ! Undefined control sequence가 납니다. 한정 기호와 집합 연산의 전체 그림은 집합・논리 기호 페이지에서 다룹니다.

명령글리프의미 / 용도
\forall전칭 한정 기호 "모든"; 표준
\exists존재 한정 기호 "존재한다"; 표준
\neg¬부정; \lnot과 동일; 표준
\top참 / 최대원; 보통 기호; 표준
\bot거짓 / 최소원; 보통 기호; 수직에는 \perp
\emptyset공집합(빗금 그은 타원); 표준
\varnothing공집합(둥근 이체자); amssymb 필요

칼표 † ‡ 와 증명을 닫는 ∎

칼표 \dagger(†)와 겹칼표 \ddagger(‡)는 모두 LaTeX 표준이며 수식 모드 기호입니다. 본문에서 각주 기호로 쓰려면 텍스트 모드용 \dag\ddag가 있습니다. 다만 수식 안에서 †가 맡는 역할은 각주가 아니라 수반(에르미트 켤레) 이며, A^{\dagger}는 "A 대거"라고 읽습니다. 양자역학의 생성 연산자 a^{\dagger}도 같은 것입니다. 거의 언제나 위 첨자로 놓이므로 \dagger를 단독으로 치는 일은 드뭅니다.

증명 끝에 놓는 속 빈 사각형 ∎은 "묘비(tombstone)" 또는 "홀모스 기호"라고 불립니다. 화살표 페이지에서는 이것을 수학에 들여온 사람이 폴 홀모스라는 이야기를 짧게 언급했는데, 뒷이야기가 조금 더 있습니다. 홀모스는 회고록 『I Want to Be a Mathematician』에서, 이 기호는 자기 발명이 전혀 아니며 수학과 무관한 대중 잡지에서 기사 끝을 표시하는 데 쓰이던 것을 보고 빌려 왔다고 적었습니다. 그가 수학 문맥에서 처음 쓴 것은 1950년입니다. LaTeX에서는 amssymb\square(□)나 \blacksquare(■)로 조판할 수 있지만, 실무에서는 amsthmproof 환경이 끝에 자동으로 붙여 줍니다. 위치를 직접 정하려면 \qedhere를, 기호 자체를 바꾸려면 \renewcommand{\qedsymbol}{...}를 씁니다.

명령글리프의미 / 용도
\dagger수식 모드; 수반 A^{\dagger}; 표준
\ddagger수식 모드의 겹칼표; 표준
\dag텍스트 모드; 각주 기호용; 표준
\square흰 사각형 / QED 기호; amssymb 필요
\blacksquare검은 사각형; amssymb 필요

♭ ♯ ♮ 조판하기 — \sharp#은 전혀 다릅니다

임시표 셋, 플랫 \flat(♭)・샤프 \sharp(♯)・제자리표 \natural(♮)은 모두 LaTeX 표준 수식 기호입니다. 본문에서 음이름을 적을 때도 수식 모드로 들어가 B$\flat$ 또는 $B\flat$처럼 씁니다. 여기서 사고가 나기 쉬운 것이 #입니다. TeX에서 #은 매크로 인수를 가리키는 특수 문자라 본문에 그대로 쓰면 오류가 나고, 기호로 찍으려면 \#으로 이스케이프해야 합니다. 그리고 \#이 찍는 것은 번호 기호이지 음악의 샤프 ♯가 아닙니다. 둘은 글자 모양도 기울기도 다른 별개의 문자입니다. 음이름은 $C\sharp$, 프로그래밍 언어는 C\#으로 구분해 쓰십시오. 악보 자체를 조판하는 것은 별개의 문제로, 그때는 전용 조판 시스템을 씁니다.

명령글리프의미 / 용도
\flat플랫(내림표); 수식 모드; 표준
\sharp샤프(올림표); \#과 다름; 표준
\natural제자리표; 수식 모드; 표준

헷갈리는 세 쌍 — \ell과 l, \prime', \Re와 R

먼저 \ell(ℓ)과 수식 이탤릭 l입니다. 많은 수식 서체에서 이탤릭 소문자 l은 숫자 1이나 세로줄 |과 거의 구별되지 않으며, 필기체 ℓ은 바로 그것을 피하려고 마련된 글자입니다. 길이, 직선, 첨자처럼 "l"로 읽히기를 바라는 양에는 \ell을 고르는 편이 안전합니다. 다만 한 문서에서 \elll을 서로 다른 두 양으로 나눠 쓰는 것은 최악의 선택이며, 독자는 반드시 혼동합니다. 둘 중 하나로 정하십시오. 같은 이유로 i・j 위에 악센트를 얹을 때는 점 없는 \imath(ı)・\jmath(ȷ)를 바탕으로 씁니다. \hat{i}는 점과 모자가 겹치므로 \hat{\imath}라고 씁니다.

다음은 \prime(′)과 아포스트로피입니다. 수식 모드의 '^{\prime}의 축약형이므로 f'f^{\prime}은 완전히 같은 것을 출력합니다. \prime을 맨몸으로 쓰면 위 첨자 크기의 글리프가 기준선에 놓여 보기 흉하므로 단독으로 쓰는 일은 거의 없습니다. TeX은 이어지는 프라임과 바로 뒤에 오는 ^를 한꺼번에 처리하므로 x'^2는 문제없이 조판됩니다. 깨지는 것은 순서를 뒤집었을 때로, x^2'x^2^{\prime}으로 해석되어 ! Double superscript. 로 멈춥니다. 이때는 {x^2}'x^{2\prime}처럼 의도를 분명히 적으십시오. 참고로 본문의 '는 오른쪽 작은따옴표이지 프라임이 아닙니다.

세 번째는 \Re와 R입니다. \Re가 조판하는 것은 프락투어체 ℜ이며, 실수 전체의 집합 (amssymbamsfonts\mathbb{R})과는 전혀 다른 기호입니다. "복소수 z의 실수부"는 \Re z 또는 \operatorname{Re} z, "z는 실수"는 z \in \mathbb{R}입니다. 이 둘을 섞으면 독자는 몇 줄에 걸쳐 뜻을 잘못 읽게 됩니다. \Im\mathbb{I}도 마찬가지입니다.

latex
% x'^2 is fine; x^2' raises ! Double superscript.
\[ f'(x), \quad f''(x), \quad x'^2, \quad {x^2}' \]
% real part vs the set of real numbers
\[ \Re z, \qquad \operatorname{Re} z, \qquad z \in \mathbb{R} \]
% dotless bases keep the accent clear
\[ \hat{\imath}, \quad \hat{\jmath}, \quad \ell = 2\pi r \]

이 페이지에 없는 기호로 막혔다면 최종 답은 Scott Pakin의 The Comprehensive LaTeX Symbol List(ctan.org/pkg/comprehensive)입니다. 2만 개가 넘는 기호(TeX Live 2024 동봉판 기준 20,323개)를, 그것을 내는 명령과 패키지와 함께 정리해 둔 자료라 "이 글자 모양을 어떻게 치는가"라는 물음은 대개 여기서 끝납니다.