FormedTextにおける数式記述
著者:梅谷 武
語句:TeX
FormedTextにおける数式記述の書式について定める。
作成:2006-02-27
更新:2011-03-10
TeXにおいては複雑な数式がテキストとして簡単に入力できるように工夫されています。FormedTextでは、このTeXにおける数式記述方法をHTMLで実装できる程度に縮小し、さらに一部の命令をUNICODE(UTF-8)符号で置き換えられるようにしています。
FormedTextには次の5種類の数式タグがあります。
- qt → 本文内に数式を埋め込む(TeXのテキスト用数式モード'$'に
対応)
- qd → 本文とは別に表示領域を確保する(ディスプレイ用数式モード
'\['に対応)
- qdarray → 複数行の数式をそろえて表示する(eqnarray*環境に対応)
- eqn → qdに数式番号を付ける(equation環境に対応)
- eqnarray → qdarrayに数式番号を付ける(eqnarray環境に対応)
TeXは
D.E.Knuthが
"The Art of Computer Programming"の組版のために開発した数式を美しく描くことができる組版システムです。オープンソースのフリーソフトウェアとして公開されていて、研究者が論文を書くツールとして広く普及しているだけでなく、商業出版にも使われています。
XML構文の制約から半角の不等号の代わりに全角の
不等号を使います。つまり、<の代わりに<を、>の代わり
に>を使用します。&は数式タグ中では使用できません。
<qt>x_i, x_下, x_{i+1}</qt>
xi, x下, xi+1
<qt>x^i, x^上, x^{i+1}</qt>
xi, x上, xi+1
TeXにおける\mathbf命令に対応しています。
<qt>R^n, \bm{R}^n, \bm{R^n}, \bm{実}数</qt>
Rn, Rn, Rn, 実数
平方根、立方根、4乗根が表現できます。√は\sqrtで置き換えることができます。
<qt>√2, √{x^2 + y^2}, √{x_0 + y_0}, ∛2, ∜2</qt>
√2, √x2 + y2, √x0 + y0, ∛2, ∜2
"\"はTeXと同様に制御文字として機能します。他の数式タグ
においてはこれに命令文字列を続けて命令として働かせることができますが、qtタグにおいてはsqrt, underline, overline, det, normと関数名だけが有効です。
<qt>\ , \{, \}, \%, \$, \# \\
\sin(x) < y, y > \log(x)</qt>
, {, }, %, $, \#
sin(x) < y, y > log(x)
<qt>\sqrt{x + y}, \underline{x + y}, \overline{x + y}}, \det{a}, \norm{`A}</qt>
√x + y, x + y, x + y, a, `A
数式タグにおいて" "はTeXと同様に明示的な空白指定として機能します。HTML形式においては半角スペースに置き換わり、" "は全角スペースに置き換わります。
a b cdef
√, ∛, ∜によって平方根、立方根、4乗根が表現できます。√は\sqrtで置き換えることができます。テキスト用です。
<qd>\sqrt{2}, √{2}, ∛2, ∜2</qd>
\underlineは下線を、øverlineは上線を引きます。テキスト用です。
<qd>\underline{x + y}, \overline{x + y}</qd>
\detは絶対値あるいは行列式、\normはノルムを表わします。
<qd>\det{\frac{1}{\sum_{i=0}^{n}{x^i}} \ \norm{\frac{df}{dx}}</qd>
∑は∑(#x2211)、∏は∏(#x220f)で置き換えることができます。これはギリシャ大文字のΣ、Πとは異なります。
<qd>\sum_{i=0}^{n}{x^i} \ \prod_{i=0}^{n}{x^i}</qd>
<qd>\bigcap_{i=0}^{n}{S_i} \ \bigcup_{i=0}^{n}{T_i}</qd>
<qd>\inf_{i=0,…,n}{x_i} \ \lim_{i→∞}{x_i}</qd>
¥intは∫(#x222b)、¥int2は∬(#x222c)、¥int3は∭(#x222d)、¥ointは∮(#x222e)で置き換えることができます。
<qd>∫_0^1{f(x)dx} \ ∬_D{f(x,y)dxdy}
\ ∭_V{f(x,y,z)dxdydz} \ ∮_C{f(x,y)dC}</qd>
\fracは分数を表現する命令です。
<qd>\frac{1}{\sum_{i=0}^{n}{x^i} \ \frac{df}{dx}</qd>
<qd>\frac{c_1}{b_1 + \frac{c_2}{b_2 + \frac{c_3}{b_3}}}</qd>
\stir1, \stir2, \gauss, \jacobi
¥binomは2項係数、¥stir1は第1種スターリング数、¥stir2は第2種スターリング数、¥gaussはガウス記号、¥jacobiは平方剰余記号を表現します。
<qd>\binom{n}{k} \ \stir1{n}{k} \ \stir2{n}{k}
\ \gauss{n}{k} \ \jacobi{n}{k}</qd>
¥array命令で行列を表現します。引数文字列においては
';'で行間区切りを、スペースで項目区切りを表わします。列の揃え方
は中央揃えですが、この命令の後にc,l,rという文字を付け加えること
によって(¥arrayc, ¥arrayl, ¥arrayr)、列の揃え方を指定することが
できます。引数の_命令で左括弧文字を、^命令で右括弧文字を
指定できます。
<qd>\array_{\lb96}^{\rb96}{
a_{11} … a_{1n} ;
: : : ;
a_{m1} … a_{mn} ;
}
\det{\array{
a_{11} … a_{1n} ;
: : : ;
a_{m1} … a_{mn} ;
}}
</qd>
<qd>\array_{\lb192}^{\lb192}{
\frac{∂g_1}{∂x_1} … \frac{∂g_1}{∂x_n} ;
: : : ;
\frac{∂g_n}{∂x_1} … \frac{∂g_n}{∂x_n} ;
}
\det{\array{
\frac{∂g_1}{∂x_1} … \frac{∂g_1}{∂x_n} ;
: : : ;
\frac{∂g_n}{∂x_1} … \frac{∂g_n}{∂x_n} ;
}}
</qd>
<qd>
δ_{ij} = \array_{\lc48}{
0, i≠j;
1, i=j;
}
</qd>
δij = | | | |
|
\up命令は行列の添え字のための命令です。
<qd>\up{t}\array_{\lb96}^{\rb96}{
a b c ;
d e f ;
g h i ;
}\up{-1} =
\array_{\lb96}^{\rb96}{
A B C ;
D E F ;
G H I ;
}
</qd>
<qd>\sin x,\ \sin(x+y),\ 3≡1(\mod~2)</qd>
sin x, sin(x+y), 3≡1(mod 2) |
<qd>`R \longrightarrow `C, i \longmapsto `z</qd>
`R `C, i `z |
先頭の英文字列はフォント名、続く数字はフォントの高さ[ピクセル]を表わします。
<qd>\lb36 \rb36 \lb48 \rb48 \lb72 \rb72
\lb96 \rb96 \lb144 \rb144 \lb192 \rb192 \lb288 \rb288</qd>
<qd>\lc36 \rc36 \lc48 \rc48 \lc72 \rc72
\lc96 \rc96 \lc144 \rc144 \lc192 \rc192 \lc288 \rc288</qd>
qdarrayタグは複数行の数式を縦方向に揃えてレイアウトします。一行の数式は、
の三つのブロックから成ります。ブロックとはで囲まれたqdタグの数式です。これを続けることで任意の行数の数式を表現することができます。行間は改行"\"で検出します。関係子は記号や記号列からなるブロックで、これを基準にして数式を縦に揃えます。
<qdarray>
{F^{-1}・F(f)(ζ^r)} =
{n^{-1}\sum_{t=0}^{n-1}{F(f)(ζ^t)ζ^{-tr}}} \\
{} = {n^{-1}\sum_{t=0}^{n-1}{(\sum_{s=0}^{n-1}{f(ζ^s)ζ^{st}})ζ^{-tr}}} \\
{} = {n^{-1}\sum_{s=0}^{n-1}{f(ζ^s)(\sum_{t=0}^{n-1}{ζ^{t(s-r)}})}}\\
{} = {n^{-1}f(ζ^r)(\sum_{t=0}^{n-1}{ζ^0)}}\\
{} = f(ζ^r)
</qdarray>
eqnタグはqdタグと同機能で、さらに自動的に数式番号が付き、"eqn"+"数式番号"というアンカーが埋め込まれます。
<eqn>S = √{s(s - a)(s - b)(s - c)}</eqn>
(1) | S = √s(s - a)(s - b)(s - c) |
|
eqnarrayタグはqdarrayタグと同機能で、さらに自動的に数式番号が付き、"eqn"+"数式番号"というアンカーが埋め込まれます。数式番号は左辺ブロックがある行にだけ付けられます。
<eqnarray>
{\sin α + \sin β} = {2\sin \frac{α + β}{2} \cos \frac{α - β}{2} } \\
{\sin α - \sin β} = {2\sin \frac{α - β}{2} \cos \frac{α + β}{2} } \\
{\cos α + \cos β} = {2\cos \frac{α + β}{2} \cos \frac{α - β}{2} } \\
{\cos α - \cos β} = {-2\sin \frac{α + β}{2} \sin \frac{α - β}{2} }
</eqnarray>
<eqnarray>
{F^{-1}・F(f)(ζ^r)} =
{n^{-1}\sum_{t=0}^{n-1}{F(f)(ζ^t)ζ^{-tr}}} \\
{} = {n^{-1}\sum_{t=0}^{n-1}{(\sum_{s=0}^{n-1}{f(ζ^s)ζ^{st}})ζ^{-tr}}} \\
{} = {n^{-1}\sum_{s=0}^{n-1}{f(ζ^s)(\sum_{t=0}^{n-1}{ζ^{t(s-r)}})}}\\
{} = {n^{-1}f(ζ^r)(\sum_{t=0}^{n-1}{ζ^0)}}\\
{} = f(ζ^r)
</eqnarray>
箇条書きに自由に見出しを付けたいときに使います。left属性は見出しの長さが全体に占める割合を
<qdlist left='15' align='center'>
(見出し1):\frac{√{s(s - a)(s - b)(s - c)}}{S} = 1
(見出し2):δ_{ij} = \array_{\lc48}{ 0, i≠j; 1, i=j; }
</qdlist>
(見出し1)
| |
(見出し2)
| δij = | | | | |
|
alpha | Α | α |
beta | Β | β |
gamma | Γ | γ |
delta | Δ | δ |
epsilon | Ε | ε |
zeta | Ζ | ζ |
eta | Η | η |
theta | Θ | θ |
iota | Ι | ι |
kappa | Κ | κ |
lambda | Λ | λ |
mu | Μ | μ |
nu | Ν | ν |
xi | Ξ | ξ |
omicron | Ο | ο |
pi | Π | π |
rho | Ρ | ρ |
sigma | Σ | σ |
tau | Τ | τ |
upsilon | Υ | υ |
phi | Φ | φ |
chi | Χ | χ |
psi | Ψ | ψ |
omega | Ω | ω |
epsilon | ℇ |
theta | ϑ |
pi | ϖ |
rho | ϱ |
sigma | ς |
phi | ϕ |
stigma | Ϛ |
digamma | Ϝ |
sampi | Ϡ |
qoppa | Ϟ |
00 |
01 |
02 |
03 |
04 |
05 |
06 |
07 |
08 |
09 |
0a |
0b |
0c |
0d |
0e |
0f |
℀ | ℁ | ℂ | ℃ | ℄ | ℅ | ℆ | ℇ |
℈ | ℉ | ℊ | ℋ | ℌ | ℍ | ℎ | ℏ |
ℐ | ℑ | ℒ | ℓ | ℔ | ℕ | № | ℗ |
℘ | ℙ | ℚ | ℛ | ℜ | ℝ | ℞ | ℟ |
℠ | ℡ | ™ | ℣ | ℤ | ℥ | Ω | ℧ |
ℨ | ℩ | K | Å | ℬ | ℭ | ℮ | ℯ |
ℰ | ℱ | Ⅎ | ℳ | ℴ | ℵ | ℶ | ℷ |
ℸ | | | | | | | |
00 |
01 |
02 |
03 |
04 |
05 |
06 |
07 |
08 |
09 |
0a |
0b |
0c |
0d |
0e |
0f |
| | | ⅓ | ⅔ | ⅕ | ⅖ | ⅗ |
⅘ | ⅙ | ⅚ | ⅛ | ⅜ | ⅝ | ⅞ | ⅟ |
Ⅰ | Ⅱ | Ⅲ | Ⅳ | Ⅴ | Ⅵ | Ⅶ | Ⅷ |
Ⅸ | Ⅹ | Ⅺ | Ⅻ | Ⅼ | Ⅽ | Ⅾ | Ⅿ |
ⅰ | ⅱ | ⅲ | ⅳ | ⅴ | ⅵ | ⅶ | ⅷ |
ⅸ | ⅹ | ⅺ | ⅻ | ⅼ | ⅽ | ⅾ | ⅿ |
ↀ | ↁ | ↂ | | | | | |
| | | | | | | |
00 |
01 |
02 |
03 |
04 |
05 |
06 |
07 |
08 |
09 |
0a |
0b |
0c |
0d |
0e |
0f |
← | ↑ | → | ↓ | ↔ | ↕ | ↖ | ↗ |
↘ | ↙ | ↚ | ↛ | ↜ | ↝ | ↞ | ↟ |
↠ | ↡ | ↢ | ↣ | ↤ | ↥ | ↦ | ↧ |
↨ | ↩ | ↪ | ↫ | ↬ | ↭ | ↮ | ↯ |
↰ | ↱ | ↲ | ↳ | ↴ | ↵ | ↶ | ↷ |
↸ | ↹ | ↺ | ↻ | ↼ | ↽ | ↾ | ↿ |
⇀ | ⇁ | ⇂ | ⇃ | ⇄ | ⇅ | ⇆ | ⇇ |
⇈ | ⇉ | ⇊ | ⇋ | ⇌ | ⇍ | ⇎ | ⇏ |
⇐ | ⇑ | ⇒ | ⇓ | ⇔ | ⇕ | ⇖ | ⇗ |
⇘ | ⇙ | ⇚ | ⇛ | ⇜ | ⇝ | ⇞ | ⇟ |
⇠ | ⇡ | ⇢ | ⇣ | ⇤ | ⇥ | ⇦ | ⇧ |
⇨ | ⇩ | ⇪ | | | | | |
00 |
01 |
02 |
03 |
04 |
05 |
06 |
07 |
08 |
09 |
0a |
0b |
0c |
0d |
0e |
0f |
∀ | ∁ | ∂ | ∃ | ∄ | ∅ | ∆ | ∇ |
∈ | ∉ | ∊ | ∋ | ∌ | ∍ | ∎ | ∏ |
∐ | ∑ | − | ∓ | ∔ | ∕ | ∖ | ∗ |
∘ | ∙ | √ | ∛ | ∜ | ∝ | ∞ | ∟ |
∠ | ∡ | ∢ | ∣ | ∤ | ∥ | ∦ | ∧ |
∨ | ∩ | ∪ | ∫ | ∬ | ∭ | ∮ | ∯ |
∰ | ∱ | ∲ | ∳ | ∴ | ∵ | ∶ | ∷ |
∸ | ∹ | ∺ | ∻ | ∼ | ∽ | ∾ | ∿ |
≀ | ≁ | ≂ | ≃ | ≄ | ≅ | ≆ | ≇ |
≈ | ≉ | ≊ | ≋ | ≌ | ≍ | ≎ | ≏ |
≐ | ≑ | ≒ | ≓ | ≔ | ≕ | ≖ | ≗ |
≘ | ≙ | ≚ | ≛ | ≜ | ≝ | ≞ | ≟ |
≠ | ≡ | ≢ | ≣ | ≤ | ≥ | ≦ | ≧ |
≨ | ≩ | ≪ | ≫ | ≬ | ≭ | ≮ | ≯ |
≰ | ≱ | ≲ | ≳ | ≴ | ≵ | ≶ | ≷ |
≸ | ≹ | ≺ | ≻ | ≼ | ≽ | ≾ | ≿ |
⊀ | ⊁ | ⊂ | ⊃ | ⊄ | ⊅ | ⊆ | ⊇ |
⊈ | ⊉ | ⊊ | ⊋ | ⊌ | ⊍ | ⊎ | ⊏ |
⊐ | ⊑ | ⊒ | ⊓ | ⊔ | ⊕ | ⊖ | ⊗ |
⊘ | ⊙ | ⊚ | ⊛ | ⊜ | ⊝ | ⊞ | ⊟ |
⊠ | ⊡ | ⊢ | ⊣ | ⊤ | ⊥ | ⊦ | ⊧ |
⊨ | ⊩ | ⊪ | ⊫ | ⊬ | ⊭ | ⊮ | ⊯ |
⊰ | ⊱ | ⊲ | ⊳ | ⊴ | ⊵ | ⊶ | ⊷ |
⊸ | ⊹ | ⊺ | ⊻ | ⊼ | ⊽ | ⊾ | ⊿ |
⋀ | ⋁ | ⋂ | ⋃ | ⋄ | ⋅ | ⋆ | ⋇ |
⋈ | ⋉ | ⋊ | ⋋ | ⋌ | ⋍ | ⋎ | ⋏ |
⋐ | ⋑ | ⋒ | ⋓ | ⋔ | ⋕ | ⋖ | ⋗ |
⋘ | ⋙ | ⋚ | ⋛ | ⋜ | ⋝ | ⋞ | ⋟ |
⋠ | ⋡ | ⋢ | ⋣ | ⋤ | ⋥ | ⋦ | ⋧ |
⋨ | ⋩ | ⋪ | ⋫ | ⋬ | ⋭ | ⋮ | ⋯ |
⋰ | ⋱ | | | | | | |
| | | | | | | |