足し算や引き算を書く場合は, 3. MathMLの書き方で示したように以下のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>a</mi> <mo>+</mo> <mi>b</mi> <mo>-</mo> <mn>3</mn> </math>リスト4.1 足し算や引き算
一般に数学では, のようなかけ算をと表します. これをMathMLで表示するには, InvisibleTimesと言う実体参照とmoを利用して, 次のように書く必要があります.
<math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>a</mi> <mo>⁢</mo> <mi>b</mi> </math>リスト4.2 かけ算
<mi>ab</mi>や<mi>a</mi><mi>b</mi>と書いても, 図4.2と同様に表されるかもしれません. しかし, これらの書き方は, かけ算を意味しておらず, 場合によっては, 表示のされ方が異なります(上の例では, との間の広さが異なる可能性があります). ですから, <mo>⁢</mo>という実体参照を使うべきです.
分数を書くには, mfracを利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mfrac>
    <mn>1</mn>
    <mn>2</mn>
  </mfrac>
  <mo>+</mo>
  <mfrac>
    <mn>1</mn>
    <mi>x</mi>
  </mfrac>
  <mo>-</mo>
  <mfrac>
    <mi>x</mi>
    <mn>3</mn>
  </mfrac>
</math>
リスト4.3 分数
mfracの中には, 2つのタグを入れます. 1つめのタグが分子を表し, 2つめのタグが分母を表します. 分子や分母には, 上の例のようにmoやmiといったタグを入れることができます. この他にも, mrowやmsub,msup,mover,munder・・・など多様なタグを入れることができます.
式をかっこで囲む場合, moを利用して, 次のように書くことができます.
<math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>a</mi> <mo>+</mo> <mo>(</mo> <mi>b</mi> <mo>-</mo> <mn>3</mn> <mo>)</mo> </math>リスト4.4 式をかっこで囲む(
mo)
mo)の表示例
また, 式をかっこで囲む場合, mfencedとmrowを利用して, 次のように書くこともできます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mi>a</mi>
  <mo>+</mo>
  <mfenced>
    <mrow>
      <mi>b</mi>
      <mo>-</mo>
      <mn>3</mn>
    </mrow>
  </mfenced>
</math>
リスト4.5 式をかっこで囲む(mfenced)
mfenced)
mfencedの中のmrowは書く必要があります. 書かないと, mfencedの中身が, カンマ区切りで表示されます. 詳しくは, 4.23 ベクトルの成分を見てください
分数の分子や分母に式を入れるに場合, mrowを分子, または分母として記述し, その中に式を書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mfrac>
    <mrow>
      <mi>x</mi>
      <mo>-</mo>
      <mn>1</mn>
    </mrow>
    <mn>3</mn>
  </mfrac>
  <mo>+</mo>
  <mfrac>
    <mi>1</mi>
    <mrow>
      <mi>a</mi>
      <mo>+</mo>
      <mi>b</mi>
    </mrow>
  </mfrac>
  <mo>-</mo>
  <mfrac>
    <mrow>
      <mi>x</mi>
      <mo>+</mo>
      <mn>3</mn>
    </mrow>
    <mrow>
      <mi>x</mi>
      <mo>-</mo>
      <mi>c</mi>
    </mrow>
  </mfrac>
</math>
リスト4.6 分数の分子や分母に式を入れる
累乗を書く場合, msupを利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <msup>
    <mi>x</mi>
    <mn>2</mn>
  </msup>
  <mo>-</mo>
  <msup>
    <mn>3</mn>
    <mi>x</mi>
  </msup>
</math>
リスト4.7 累乗
msupの中には, 2つのタグを入れます. 1つめのタグが底を表し, 2つめのタグが指数を表します. 底や指数には, 上の例のようにmoやmiといったタグを入れることができます. この他にも, mrowやmfencedやmsub・・・などを入れることができます.
式の累乗を書く場合, msupの中の1つめのタグとしてmfencedを書き, その中にmrowを書き, その中に式を書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <msup>
    <mfenced>
      <mrow>
        <mi>x</mi>
        <mo>+</mo>
        <mn>3</mn>
      </mrow>
    </mfenced>
    <mn>3</mn>
  </msup>
</math>
リスト4.8 式の累乗
平方根を書くには, msqrtを利用して次のように書きます
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <msqrt>
    <mi>x</mi>
  </msqrt>
  <mo>+</mo>
  <msqrt>
    <mn>2</mn>
  </msqrt>
</math>
リスト4.9 平方根
msqrtの中には, 上の例のようにmiやmnといったタグを入れることができます. この他にも, mrowやmsubのようなタグを入れることができます.
式の平方根を書くには, msqrtを書き, その中にmrowを書き, その中に式を書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <msqrt>
    <mrow>
      <msup>
        <mi>x</mi>
        <mn>2</mn>
      </msup>
      <mo>+</mo>
      <mn>3</mn>
    </mrow>
  </msqrt>
</math>
等号や不等号を書くには, 全てmoを使います. ">"にはgt, "<"にはlt, "≥"にはge, "≤"にはleという実体参照をそれぞれ使います.
<math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>a</mi> <mo>=</mo> <mi>b</mi> </math> <br/> <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>a</mi> <mo>></mo> <mi>b</mi> </math> <br/> <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>a</mi> <mo>≥</mo> <mi>b</mi> </math> <br/> <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>a</mi> <mo><</mo> <mi>b</mi> </math> <br/> <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>a</mi> <mo>≤</mo> <mi>b</mi> </math>リスト4.11 等号や不等号
添字を書くには, msubを利用して次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <msub>
    <mi>x</mi>
    <mn>3</mn>
  </msub>
  <mo>⁢</mo>
  <msub>
    <mi>r</mi>
    <mi>x</mi>
  </msub>
</math>
リスト4.12 添字
msubの中には, 2つのタグを入れます. 2つめのタグが, 1つめのタグに付く添字になります. 添字には, 上の例のようにmoやmiといったタグを入れることができます. この他にも, mrowなどを入れることができます.
f(x)関数f(x)を表現するには, ApplyFunctionという実体参照とmoを利用して, 次のように書く必要があります.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mi>f</mi>
  <mo>⁡</mo>
  <mfenced>
    <mrow>
      <mi>x</mi>
    </mrow>
  </mfenced>
</math>
リスト4.13 関数f(x)
f(x)の表示例
関数名であるfはmiで囲みます. <mo>⁡</mo>は, moの前に書かれた関数をmoの後に書かれた数に適用するということを意味しています. また, mfencedという表現は, moを用いて次のように表すこともできます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mi>f</mi>
  <mo>⁡</mo>
  <mrow>
    <mo>(</mo>
    <mi>x</mi>
    <mo>)</mo>
  </mrow>
</math>
リスト4.14 moを用いた関数f(x)
moを用いた関数f(x)の表示例
指数に式を入れるには, msupの中の2つめのタグとしてmrowを書き, その中に式を書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <msup>
    <mi>x</mi>
    <mrow>
      <mi>y</mi>
      <mo>-</mo>
      <mfrac>
        <mn>1</mn>
        <mn>3</mn>
      </mfrac>
    </mrow>
  </msup>
</math>
リスト4.15 指数に式を入れる
累乗根を書くには, mrootを利用して次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mroot>
    <mi>x</mi>
    <mn>3</mn>
  </mroot>
  <mo>+</mo>
  <mroot>
    <mn>3</mn>
    <mi>a</mi>
  </mroot>
</math>
リスト4.16 累乗根
mrootの中には, 2つのタグを入れます. 1つめのタグが底を表し, 2つめのタグが指数を表します. 底や指数には, 上の例のように, moやmiといったタグを入れることができます. この他にもmrowなどを入れることができます.
三角関数を書くには, ApplyFunctionというう実体参照を使って次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mi>sin</mi>
  <mo>⁡</mo>
  <mfenced>
    <mrow>
      <mi>x</mi>
      <mo>+</mo>
      <mn>3</mn>
    </mrow>
  </mfenced>
</math>
リスト4.17 三角関数
他の三角関数を使用するには, sinのところを, cos, tan, sec, cosec, cotに変更します.
円周率πを表示するには, piという実体参照とmiを利用して次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>π</mi> </math>リスト4.18 円周率π
対数関数を書くには, 関数名のところにmsubを利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/MathMathML">
  <msub>
    <mi>log</mi>
    <mn>3</mn>
  </msub>
  <mo>⁡</mo>
  <mi>x</mi>
</math>
リスト4.19 対数関数
ネピアーの数eを書くには, ExponentialEという実体参照とmiを利用します. 例えば, 自然対数関数やネピアーの数を底とする指数関数は, 次のように書かれます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <msub>
    <mi>log</mi>
    <mi>ⅇ</mi>
  </msub>
  <mo>⁡</mo>
  <mi>x</mi>
  <mo>+</mo>
  <msup>
    <mi>ⅇ</mi>
    <mi>x</mi>
  </msup>
</math>
リスト4.20 ネピアーの数e
<mi>e</mi>と書いても, eと表示されますが, ネピアーの数であることを明示的に表すために, ExponentialEという実体参照を使うべきです.
逆三角関数を書くには, 関数名のところにmsupを利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <msup>
    <mi>sin</mi>
    <mn>-1</mn>
  </msup>
  <mo>⁡</mo>
  <mi>x</mi>
</math>
リスト4.21 逆三角関数
他の逆三角関数を使用するには, sinのところを, cos, tan, sec, cosec, cotに変更します.
和の記号∑を表すには, sumという実体参照と, munderoverを利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <munderover>
    <mi>∑</mi>
    <mrow>
      <mi>i</mi>
      <mo>=</mo>
      <mn>1</mn>
    </mrow>
    <mn>20</mn>
  </munderover>
  <msub>
    <mi>k</mi>
    <mi>i</mi>
  </msub>
</math>
リスト4.22 和の記号∑
munderoverには, 3つのタグを入れます. 1つめのタグがまん中, 2つめのタグが下側, 3つめのタグが上側に表示されます. munderoverの中には, 上の例のように, mi,mn,mrowなどのタグを入れることができます.
順列や組合せを書くには, mmultiscriptsを利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mmultiscripts>
    <mi>P</mi>
    <mi>r</mi>
    <none/>
    <mprescripts/>
    <mi>n</mi>
    <none/>
  </mmultiscripts>
</math>
<br/>
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mmultiscripts>
    <mi>C</mi>
    <mn>5</mn>
    <none/>
    <mprescripts/>
    <mn>2</mn>
    <none/>
  </mmultiscripts>
</math>
リスト4.23 順列, 組合せ
mmultiscriptsは, 左や右に上付や下付の文字を付けるためのタグです. 構文は, 複雑なので, ここでは説明しません. 詳しくは, MathMLの仕様書を見てください. 順列や組合せを書く場合に上のような構文を用いると考えてください.
ベクトルを書くには, RIghtArrorという実体参照とmo及びmoverを利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mover>
    <mi>v</mi>
    <mo>→</mo>
  </mover>
</math>
リスト4.24 ベクトル
moverには, 2つのタグを入れます. 1つめのタグ上側に, 2つめのタグが表示されます.
ベクトルの成分を書くには, mfencedを用いて次のように書くことができます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mfenced>
    <msub>
      <mi>a</mi>
      <mi>x</mi>
    </msub>
    <mrow>
      <msub>
        <mi>a</mi>
        <mi>y</mi>
      </msub>
      <mo>+</mo>
      <msub>
        <mi>b</mi>
        <mi>y</mi>
      </msub>
    </mrow>
  </mfenced>
</math>
リスト4.25 mfencedを用いたベクトルの成分
mfencedを用いたベクトルの成分の表示例
mfencedは, 4.4 式をかっこで囲むで使ったように, かっこで囲むためのタグですが, 上の例のように, 中に複数のタグを入れることで, それらをカンマ区切りで表示することが可能です. mfencedの中には, 上の例のようにmsubやmrowを入れることができます. またmiやmn・・・など多様なタグを入れることができます.
また, ベクトルの成分を書くには, moを利用して, 次のように書くこともできます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mo>(</mo>
  <msub>
    <mi>a</mi>
    <mi>x</mi>
  </msub>
  <mo>,</mo>
  <mrow>
    <msub>
      <mi>a</mi>
      <mi>y</mi>
    </msub>
    <mo>+</mo>
    <msub>
      <mi>b</mi>
      <mi>y</mi>
    </msub>
  </mrow>
  <mo>)</mo>
</math>
リスト4.26 moを用いたベクトルの成分
moを用いたベクトルの成分の表示例
行列を書くには, mfencedとmtableを用いて, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mfenced>
    <mtable>
      <mtr>
        <mtd>
          <mi>x</mi>
        </mtd>
        <mtd>
          <mn>3</mn>
        </mtd>
      </mtr>
      <mtr>
        <mtd>
          <mrow>
            <mo>-</mo>
            <mn>1</mn>
          </mrow>
        </mtd>
        <mtd>
          <mi>y</mi>
        </mtd>
      </mtr>
    </mtable>
  </mfenced>
</math>
リスト4.27 行列
mtableは, HTMLのtableに似たタグで, 中に, HTMLのtrにあたるmtr, その中に, HTMLのtdにあたるmtdをいれ, 表のように表示します. mtdの中には, 上の例のように, miやmnやmrowを入れることができます. この他にも, msubやmsup・・・などのタグを入れることができます.
行列式を書くには, mfencedのopen属性やclose属性を利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mfenced open="|" close="|">
    <mtable>
      <mtr>
        <mtd>
          <mn>2</mn>
        </mtd>
        <mtd>
          <mn>3</mn>
        </mtd>
      </mtr>
      <mtr>
        <mtd>
          <mn>4</mn>
        </mtd>
        <mtd>
          <mn>5</mn>
        </mtd>
      </mtr>
    </mtable>
  </mfenced>
</math>
リスト4.28 行列式
mfencedのopen属性は左側のかっこの形を表し, close属性は右側のかっこの形を表します.
微分記号dを書くには, DifferentialDという実体参照とmoを利用します. 例えば, yのxによる微分は, 次のように書かれます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mfrac>
    <mrow>
      <mo>ⅆ</mo>
      <mi>y</mi>
    </mrow>
    <mrow>
      <mo>ⅆ</mo>
      <mi>x</mi>
    </mrow>
  </mfrac>
</math>
リスト4.29 微分
積分記号∫を書くには, intという実体参照とmoを利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mo>∫</mo>
  <mrow>
    <mfenced>
      <mrow>
        <mi>x</mi>
        <mo>+</mo>
        <mn>1</mn>
      </mrow>
    </mfenced>
    <mo>⁢</mo>
    <mrow>
      <mo>ⅆ</mo>
      <mi>x</mi>
    </mrow>
  </mrow>
</math>
リスト4.30
定積分を書くには, msubsupを利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <msubsup>
    <mo>∫</mo>
    <mn>0</mn>
    <mi>π</mi>
  </msubsup>
  <mrow>
    <mi>cos</mi>
    <mo>⁡</mo>
    <mi>x</mi>
    <mo>⁢</mo>
    <mrow>
      <mo>ⅆ</mo>
      <mi>x</mi>
    </mrow>
  </mrow>
</math>
リスト4.31 定積分
msubsupは, 3つのタグを入れます. 1つめのタグに対して, 2つめのタグが上付, 3つのタグが下付で表示されます. msubsupの中のタグには, 上の例のように, moやmiやmnを入れることができます. この他にも, mrowやmfenced・・・など多様なタグを入れることができます.
無限大を書くには, infinという実体参照とmiを利用します. 例えば, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <msubsup>
    <mo>∫</mo>
    <mn>1</mn>
    <mi>∞</mi>
  </msubsup>
  <mfrac>
    <mrow>
      <mo>ⅆ</mo>
      <mi>x</mi>
    </mrow>
    <msup>
      <mi>x</mi>
      <mn>2</mn>
    </msup>
  </mfrac>
</math>
リスト4.32 無限大
絶対値を書くには, mfencedのopen属性やclose属性を利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mfenced open="|" close="|">
    <mrow>
      <mo>-</mo>
      <mi>a</mi>
    </mrow>
  </mfenced>
</math>
リスト4.33 mfencedを用いた絶対値
mfencedを用いた絶対値の表示例
mfencedのopen属性やclose属性については, 4.25 行列式を見て下さい. また, mfencedを使わずに, moを用いて次のように表すこともできます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mo>|</mo>
  <mrow>
    <mo>-</mo>
    <mi>a</mi>
  </mrow>
  <mo>|</mo>
</math>
リスト4.34 moを用いた絶対値
moを用いた絶対値の表示例
±といった複号を書く場合は, PlusMinusという実体参照とmoを利用して, また, ∓といった複合を書く場合は, MinusPlusという実体参照とmoを利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>x</mi> <mo>±</mo> <mi>y</mi> <mo>∓</mo> <mn>3</mn> </math>リスト4.35 複号
極限を書く場合には, munderを利用して次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <munder>
    <mi>lim</mi>
    <mrow>
      <mi>x</mi>
      <mo>→</mo>
      <mn>0</mn>
    </mrow>
  </munder>
  <mrow>
    <mi>sin</mi>
    <mo>⁡</mo>
    <mi>x</mi>
  </mrow>
</math>
リスト4.36
munderには, 2つのタグを入れます. 1つめのタグの下側に, 2つめのタグが表示されます.
虚数iを書くには, ImaginaryIという実体参照とmiを利用して, 次のように書きます.
<math xmlns="http://www.w3.org/1998/Math/MathML"> <mn>4</mn> <mo>+</mo> <mn>3</mn> <mo>⁢</mo> <mi>ⅈ</mi> </math>リスト4.37 虚数
<mi>i<mi>と書いても, iと表示されますが, 虚数ということを明確に表すため, ImaginaryIという実体参照を使うべきです.
偏微分記号∂を書くには, partという実体参照とmoを利用します. 例えば, zのxによる偏微分は, 次のように書かれます.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mfrac>
    <mrow>
      <mo>∂</mo>
      <mi>z</mi>
    </mrow>
    <mrow>
      <mo>∂</mo>
      <mi>x</mi>
    </mrow>
  </mfrac>
</math>
リスト4.38 偏微分
2階微分を書くには, DifferentialDという実体参照とmo,msupを利用します. 例えば, yのxによる2階微分は次のようになります.
<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mfrac>
    <mrow>
      <msup>
        <mo>ⅆ</mo>
        <mn>2</mn>
      </msup>
      <mi>y</mi>
    </mrow>
    <msup>
      <mrow>
        <mo>ⅆ</mo>
        <mi>x</mi>
      </mrow>
      <mn>2</mn>
    </msup>
  </mfrac>
</math>
リスト4.39 2階微分