第7章 数式の書き方
この章では、数式を「読者が推論を追える文」として書く方法を扱う。数式は、専門家だけに通じる飾りではない。何を定義し、何を仮定し、どこからどこへ推論したのかを外から見える形にする―それが数式を書くという仕事であり、第5章(ライティング)・第6章(論文の書き方)で述べた文章の原則を、記号の世界にそのまま持ち込んだものである。
ポイント:核は §3 の一行「数式は文の一部」に尽きる―数式も地の文と同じように文法と句読点に従い、文章として読み下せなければならない。記法の一貫性(§3.1)も、書体の規則(§3.2)も、配置や句読法(§3.4)も、すべてその言い換えだと思って読んでほしい。初学者がまず避けるべきは次の4つ―(1) 記号を定義せずに使う、(2) 同じ記号を複数の意味で使う、(3) 式を置くだけで文としてつなげない、(4) コード上の省略記法をそのまま式に持ち込む。§1 は定番書籍、§2 は国際規格、§3 は執筆の原則、§4 は数式とコードの対応づけ、§5 はツール、§6 は AI 時代の注意を扱う。
1. 定番書籍・スタイルガイド
数式執筆の定番が共通して説くのは、数式は文の一部である/記法は一貫させる/読者のことを考えるの3点に尽きる。まず結城浩で日本語の実践感覚をつかみ、工学系の実装寄りの注意は松井(2022)で補い、必要に応じて Halmos・Higham・AMS に進めばよい。
定番書籍・スタイルガイド
| 書籍 | 概要 |
|---|---|
| Halmos, P. R. (1970). How to write mathematics. L’Enseignement Mathématique, 16, 123–152. | 数学の書き方で最も引用されるエッセイ。「良い表記を選べ」「記号を乱用するな」。 |
| Knuth, D. E., Larrabee, T., & Roberts, P. M. (1989). Mathematical Writing. MAA Notes No. 14. | Knuth のスタンフォード講義録。数式を含む文章の実践的解説。 |
| Higham, N. J. (2020). Handbook of Writing for the Mathematical Sciences (3rd ed.). SIAM. | 応用数学・計算科学向け。論文・スライド・LaTeX 実務・英語表現。 |
| Krantz, S. G. (2017). A Primer of Mathematical Writing (2nd ed.). AMS. | 数学論文・教科書・グラント申請書の書き方を網羅。 |
| Knuth, D. E. (1984). The TeXbook. Addison-Wesley. | TeX 創始者による公式マニュアル。数式組版の原理と美学。 |
| 結城浩(2013)『数学文章作法 基礎編』筑摩書房 | 「読者のことを考える」を一貫原則に、文の流れ・順序・階層を解説。 |
| 松井孝浩(2022)「工学系の卒論生のための数式記述入門」 | 定義域の明示、ベクトル・行列の書体、NumPy 由来の省略記法を式に持ち込まない注意など、実装寄りの要点。 |
| 奥村晴彦・黒木裕介(2020)『[改訂第8版]LaTeX2ε美文書作成入門』技術評論社 | LaTeX の日本語圏標準入門書。pLaTeX・LuaLaTeX 対応。 |
2. 国際規格と記法の標準
数値・単位・記号の表記には、ISO 80000、SI Brochure、IUPAC/IUPAP という標準がある。記号や単位の表記が規格からずれると、他者が数値や手続きを正確に復元できない。規格準拠は再現性(第3章)の前提であり、規格は具体的な書体ルール(§3.2)の根拠でもある。
主要な国際規格
| 規格 | 概要 |
|---|---|
| ISO 80000-2:2019 | 数学で使う記号・符号を規定。集合・数・関数・演算子・幾何・論理を標準化。 |
| ISO 80000-1:2022 | 量と単位の一般原則。物理量・数値・単位の表記法。 |
| SI Brochure (9th ed., 2019) | 国際単位系(SI)の公式文書(BIPM)。単位記号・数値表記・接頭語。AIST 日本語訳。 |
| IUPAC Green Book (3rd ed., 2007) | 物理化学の量・単位・記号の推奨表記。 |
| IUPAP Red Book (1987) | 物理学の記号・単位・命名法の推奨。 |
| JIS Z 8201:2000 | 数学記号(日本産業規格)。ISO に対応する国内規格。 |
3. 数式執筆の原則 ── 数式は文の一部である
数式は孤立した図形ではなく、文法的に文へ組み込まれる文の構成要素である。Halmos (1970) が説き、Krantz・Higham が繰り返す、この章で唯一覚えるべき原則だ。「以下の式を考える」で終わる文の後に式を置くのではなく、英語なら “We define the loss function as”、和文なら「損失関数を次式で定義する」のように、式を文の述語や目的語として導入する。“where”・“so that”・“and thus” など前後の接続を省略しない。以下の §3.1–3.5 は、この一点を記法・書体・表記・配置・番号づけの面で具体化したものである。
3.1 記法の一貫性
同じ概念に違う記号を使う、違う概念に同じ記号を使う―これが読者の混乱と再現性低下の最大原因である(第3章参照)。
- 1概念1記号/1記号1意味:入力ベクトルを一方で \(\mathbf{x}\)、他方で \(\mathbf{z}\) と書かない。\(T\) を温度と転置の両方に使わない。
- 分野の慣例に従う:独自の記法を発明せず、読者が知っている記法で認知負荷を下げる。
- 記号は初出時に定義する:\(n\), \(T\) のような一般的な文字でも論文での意味を明記する。読者に推測させない。記号が多ければ冒頭に記号表(Notation Table)を設ける。
- 最初に定義域を書く:初出で \(\mathbf{x} \in \mathbb{R}^D\) のように定義域や配列の形状(shape、各次元のサイズ)まで示すと、読み手にも、あとで実装する自分にも有益(松井 2022)。
- 記法の寿命を意識する:いま手元のコードで通じる略記でなく、数年後に読み返して意味が復元できる記法を選ぶ。研究は時間をまたぐ共同作業である。
- LaTeX マクロで管理:記号をハードコードせず
\newcommand{\vx}{\mathbf{x}}のように定義し、プリアンブルに集約する。後から一括変更でき、不統一を防ぐ。
研究室実務では「字体も意味の一部である」という感覚を加える。記号は「意味」だけでなく「書体」まで仕様だと考え、ベクトル・行列・集合・演算子の書体ルールを先に決めて論文・図・補足で統一する。とくに下付きは最も事故が多い箇所だ。変数下付き(\(i, j, t\))はイタリック、説明下付き(temporal, spectral, train/test)はローマンと、毎回判定して統一する。転置の \(T\) は通常の変数 \(T\) と衝突しない \mathsf{T} か \top で書く。記法の不統一は「雑な仕事」という印象を査読者に与える。
3.2 記号の書体規則
書体の大枠は ISO 80000・SI Brochure・IUPAC/IUPAP が規定する。ただしベクトル・行列の太字は、規格が太字イタリックを定める一方、工学・機械学習では立体太字(\mathbf)が広く使われる。本書は分野の慣習に従い立体太字を用いる(ギリシャ文字のベクトルは \boldsymbol で太字にする)。下の表に従えばよい。
| 要素 | 書体 | LaTeX | 例 |
|---|---|---|---|
| スカラー変数 | イタリック | $x$, $\alpha$ |
x, α |
| ベクトル | 太字(ラテン文字は立体) | $\mathbf{x}$, $\boldsymbol{\mu}$ |
x, μ |
| 行列 | 太字大文字 | $\mathbf{A}$ |
A |
| テンソル | カリグラフィ/サンセリフ | $\mathcal{T}$ |
𝒯 |
| 集合 | イタリック大文字/カリグラフィ | $S$, $\mathcal{S}$ |
S, 𝒮 |
| 数体(実数等) | 黒板太字 | $\mathbb{R}$ |
ℝ |
| 演算子・関数名 | ローマン | $\operatorname{tr}$, $\log$ |
tr, log |
| 単位 | ローマン | $\mathrm{kg}$ / \si{kg} |
kg, m/s |
| 微分の d・虚数単位 | ローマン | $\mathrm{d}x$, $\mathrm{i}$ |
dx, i |
| 転置 | サンセリフ立体 | $\mathsf{T}$, $^\top$ |
Aᵀ |
| 期待値 | ローマン/黒板太字 | $\mathbb{E}[\cdot]$ |
𝔼[·] |
| 説明下付き | ローマン | $T_\mathrm{max}$ |
Tmax |
3.3 数値・単位・範囲の表記
書体と並んで初学者が事故りやすいのが、数値・単位・範囲の表記である。これも書体と同じく、先に規約を決めて統一する対象なので、ここでまとめて扱う。
- 数値と単位の間は半角スペース(9.8 m/s²。ただし角度記号 ° は例外でスペースを空けず 45°)。
- 範囲は en-dash(0–4 s)で書き、ハイフン(-)・マイナス(−)と区別する。
- 数値と単位が名詞を修飾するとき(複合形容詞)はハイフンでつなぐ。範囲そのものは en-dash だが、それが後ろの名詞を修飾する形容詞句になると
0–4-s windowのようにハイフンを補う。 - グラフ軸は「物理量 / 単位」形式(T / K)で書く。軸に並ぶ目盛りの数値は「物理量を単位で割った無次元の値」だからである。
- 図中の軸ラベル・単位も本文と同じ規約で管理する(「図だけ例外」だと読者がそこで止まる)。
LaTeX では siunitx パッケージを使うと、スペーシング・桁区切り・不確かさを自動で統一できる。
3.4 配置と句読法
- インライン vs ディスプレイ:読者が立ち止まって意味を考える式・後で参照する式はディスプレイ、文の流れを止めず読める式はインライン。分数・総和・積分など行の高さを乱すものはディスプレイにする。
- 数式にも句読点を打つ:式の後に文が続けばコンマ、文が終わればピリオド。“where” で記号を定義する場合は式の後にコンマを打ち “where” は小文字で始める(“…defined as \(L(\theta) = -\sum_i y_i \log f(x_i; \theta),\) where \(\theta\) denotes …”)。
- 長い式の改行:演算子・関係子(
=,+,−)の前で切り、align環境で演算子の位置を揃える(AMS スタイル)。 - 冗長な括弧を減らす:優先順位が明らかなら不要な括弧は省く。ただし曖昧なら明示する。
- 声に出して読む:書いた式を音読し、自然な文として成立するか確かめる(Knuth 1989)。
3.5 数式番号
参照する式にのみ番号をつける流儀と全式につける流儀があり、ジャーナル規定に従う。本文中の参照は “Eq. (1)”(文頭は “Equation (1)”)。LaTeX では番号をハードコードせず \label と \eqref(または cleveref の \cref)で自動管理し、参照ミスを防ぐ。
4. 数式とコードの対応
論文の数式は「何を計算するか」を宣言的に(結果の定義として)示し、コードは「どう計算するか」を手続き的に(実行の手順として)記述する。同じ計算の別言語表現だが、その翻訳は驚くほど難しい。数式には暗黙の情報が多く、コードには冗長な実装の詳細が多いからである。神谷研では、この数式とコードを自在に往復する力を基礎体力とみなす。
数式からコードへ。\(\mathbf{y} = \mathbf{W}\mathbf{x} + \mathbf{b}\) を実装するとき、\(\mathbf{W}\) が \((M \times D)\)、\(\mathbf{x}\) が \((D \times 1)\)、\(\mathbf{b}\) が \((M \times 1)\) という形状は式に書かれていないが不可欠だ。式に「隠れた情報」(形状・定義域・スカラーかベクトルかテンソルか)を明示してから、はじめてコードに変換できる。
コードから数式へ。逆に動くコードを式に起こすのも一筋縄ではいかない。前処理・エッジケース・実装上の工夫を捨象し、計算の本質だけを残す。さらに、自分が日常的に使っている概念の切り分け方が、初見の読者にとって自然とは限らないので、理解しやすい形へ「再概念化」する姿勢が要る。
NumPy や PyTorch の broadcasting に依存したコード上の省略を、そのまま数学的に正しい式だと思い込まないこと。コードでは動いても、論文としては定義域や演算の向きが曖昧なまま、ということがよくある。
整合性を検証する実践が Shape算(Shape Arithmetic)である。物理学の次元解析に着想を得て、式中の行列・テンソルの形状を追跡し、隣接する次元が一致するかを確かめる。\(\mathbf{A} \in \mathbb{R}^{M \times K}\) と \(\mathbf{B} \in \mathbb{R}^{K \times N}\) の積は \((M \times \underline{K}) \cdot (\underline{K} \times N) = (M \times N)\)。内側の \(K\) が一致しなければ、数式かコードのどちらかにバグがある。物理学者が両辺の次元(メートル・秒)を確かめるように、形状を確かめることで論文とコード両方の誤りを早期に発見できる。
定義域を明示する習慣(\(f: \mathbb{R}^D \times \mathbb{R}^D \to \mathbb{R}\))をつけ、行列表記(\(\mathbf{Y} = \mathbf{X}\mathbf{W}^\top\))と要素表記(\(y_{ij} = \sum_k x_{ik} w_{jk}\))を自在に行き来できるようにする。きれいに式で書けないなら、無理に曖昧な式を置くより文章や図で補う。中谷秀洋「数式をnumpyに落としこむコツ」、松井(2022)が実践的な参考になる。
5. ツール
ツール選びで重要なのは多機能さより「記法の一貫性を崩さないこと」である。下書きは軽い環境でよいが、最終稿に近づくほど本文・図・数式・参照をまとめて管理できる環境に寄せると事故が少ない。提出・共有用の PDF(LaTeX)と、推敲・コメント用テキスト(Word/Google Docs、数式が多少崩れてもよい)を分ける二系統運用にすると、論理や文体の推敲が速い。
数式執筆の主要ツール
LaTeX パッケージ:amsmath(align/gather 等の標準数式環境)、amssymb(追加記号)、mathtools(\coloneqq 等の拡張)、siunitx(数値・単位の統一組版)、physics(微分・括弧・行列の簡潔記法)、bm(太字数学記号)、unicode-math(LuaLaTeX/XeLaTeX)、algorithm2e / algorithmicx(擬似コード)、cleveref(参照プレフィックスの自動化)。
オンライン環境:Overleaf(ブラウザ共同編集)、Cloud LaTeX(日本語フォント良好)。
ウェブ数式表示:MathJax、KaTeX(高速・対応コマンドはやや少ない)。
記号検索・OCR:Detexify(手書き→LaTeX)、The Comprehensive LaTeX Symbol List(texdoc symbols-a4)、Mathpix Snip(画像・PDF の数式を LaTeX に OCR)。
次世代組版・AI 統合:Typst(高速組版。「Typst で下書き → LaTeX で最終提出」が広まりつつある)、VS Code + LaTeX Workshop + AI(Claude/Copilot)の構成。
Markdown 数式:GitHub($...$/$$...$$ ネイティブ、2022〜)、Quarto、Marp、Obsidian、Jupyter Notebook が LaTeX 風記法に対応。
チェック・検証:chktex / lacheck(LaTeX 文法)、Wolfram Alpha・SymPy(恒等式・数値計算による検算)。
6. AI 時代の数式執筆
AI の全般的な活用・倫理・開示は付録「研究における AI 活用ガイド」を参照。ここでは数式固有の注意に絞る。LLM は標準的な LaTeX 構文の生成に一定の能力を持つが、数式には固有の落とし穴がある。
- 数学的正しさは保証されない:複雑な式は次元解析・特殊ケースの代入・記号計算ソフト(SymPy, Wolfram Alpha)で必ず検算する。最終責任は著者にある。
- 存在しない定理・公式を生成しうる(ハルシネーション):原著での出典確認を怠らない(付録参照)。
- 記法の一貫性が苦手:書体・添字規則・マクロとの整合が崩れやすいので、生成結果を自分のマクロ体系に合わせて修正する。逆に「転置を
^Tと^\topの両方で書いた箇所を列挙して」のような不統一の検出には使える。 - 下書きと自然言語化に使う:複雑な行列・場合分け・整列式の LaTeX を下書きさせて手動修正する、数式の直感的意味を説明する文章の下書きに使う、Mathpix で OCR した式を LLM で整形する。
まとめ:この章の幹
- 数式は文の一部。文法的に文へ組み込み、前後の接続と句読点を省略しない。記法の一貫性も配置も、この一点の言い換え。
- 1概念1記号/1記号1意味。マクロで管理し、初出時に定義し、定義域・形状(shape)まで明示する。記法の寿命(数年後に復元できるか)を意識する。
- 字体も意味の仕様。書体ルールを先に決めて統一する。最も事故るのは下付き(変数はイタリック、説明はローマン)と転置(
\mathsf{T}/\top)。数値と単位の間にスペース、範囲は en-dash。 - 数式とコードを往復する力が基礎体力。式に隠れた情報を明示してから実装し、コードの省略(broadcasting 等)を式に持ち込まない。Shape算で次元を追って早期にバグを発見する。
- 表記の規約は図とツール運用にまで及ばせる。図の軸・単位も本文と同じ規約で。提出用 PDF と推敲用テキストの二系統運用。
- AI 生成の数式は必ず検算。数学的正しさの最終責任は著者にある。
参考文献
英語文献
- Gillman, L. (1987). Writing Mathematics Well: A Manual for Authors. MAA.
- Halmos, P. R. (1970). How to write mathematics. L’Enseignement Mathématique, 16, 123–152.
- Higham, N. J. (2020). Handbook of Writing for the Mathematical Sciences (3rd ed.). SIAM. ISBN 978-1-61197-609-0.
- Knuth, D. E. (1979). Mathematical typography. Bulletin of the AMS (N.S.), 1(2), 337–372.
- Knuth, D. E. (1984). The TeXbook. Addison-Wesley. ISBN 978-0-201-13448-3.
- Knuth, D. E., Larrabee, T., & Roberts, P. M. (1989). Mathematical Writing. MAA Notes No. 14. ISBN 978-0-88385-063-3.
- Krantz, S. G. (2017). A Primer of Mathematical Writing (2nd ed.). AMS. ISBN 978-1-4704-3658-2.
- Steenrod, N. E., Halmos, P. R., Schiffer, M. M., & Dieudonné, J. A. (1973). How to Write Mathematics. AMS. ISBN 978-0-8218-0055-3.
- Swanson, E., O’Sean, A., & Schleyer, A. (1999). Mathematics into Type (Updated ed.). AMS. PDF
- Thompson, A., & Taylor, B. N. (2008). Guide for the Use of the International System of Units (SI). NIST SP 811.
- Trzeciak, J. (2012). Writing Mathematical Papers in English (2nd ed.). EMS.
日本語文献
- 結城浩(2013)『数学文章作法 基礎編』筑摩書房.
- 結城浩(2014)『数学文章作法 推敲編』筑摩書房.
- 佐藤文広(2014)『これだけは知っておきたい 数学ビギナーズマニュアル』第2版,日本評論社.
- 中谷秀洋(shuyo)「数式をnumpyに落としこむコツ」shuyo.hatenablog.com.
- 松井孝浩(2022)「工学系の卒論生のための数式記述入門」GitHub.
- 奥村晴彦・黒木裕介(2020)『[改訂第8版]LaTeX2ε美文書作成入門』技術評論社.
- 水谷正大(2020)『LaTeX超入門 ゼロからはじめる理系の文書作成術』講談社ブルーバックス.
国際規格・標準
- ISO 80000-2:2019. Mathematics ― Mathematical signs and symbols to be used in the natural sciences and technology.
- ISO 80000-1:2022. General ― Quantities and units.
- SI Brochure (9th ed., 2019). BIPM. bipm.org/en/publications/si-brochure
- IUPAC (2007). Quantities, Units and Symbols in Physical Chemistry (Green Book, 3rd ed.). RSC Publishing.
- IUPAP (1987). Symbols, Units, Nomenclature and Fundamental Constants in Physics (Red Book).
- JIS Z 8201:2000. 数学記号.
AMS 公式資料・オンライン資料
- AMS Author Handbook. ams.org/arc/resources/author-handbook.pdf
- Detexify: detexify.kirelabs.org/Mathpix Snip: mathpix.com/Overleaf: overleaf.com/Cloud LaTeX: cloudlatex.io/Typst: typst.app
- MathJax: mathjax.org/KaTeX: katex.org/Quarto: quarto.org/Wolfram Alpha: wolframalpha.com/SymPy: sympy.org