数学マークアップ言語は、数学表記法に基づいて数式を表現するためのコンピュータ表記法です。コンピュータは通常、線形テキストと限定された文字セットを扱うため(ただし、Unicodeのサポートが拡大するにつれて、非常に単純な用途は時代遅れになりつつあります)、専用のマークアップ言語が必要になります。正式に標準化された構文により、コンピュータは曖昧なコンテンツを解釈し、レンダリングや評価を行うことも可能になります。コンピュータが解釈可能な構文としては、TeX / LaTeX、MathML(数学マークアップ言語)、OpenMath、OMDocなどが一般的です。
人間による入力のための表記
人間が入力しコンピュータが解釈する一般的な言語としては、TeX [1] / LaTeX [2]やeqn [3]などがある。
Macsyma、Mathematica ( Wolfram Language )、Maple、MATLABなどのコンピュータ代数システムには、それぞれ独自の構文があります。
人間同士の非公式なコミュニケーションが目的の場合、構文はアドホックであることが多く、「ASCII 数学記法」と呼ばれることもあります。 研究者は、論文執筆で慣れているため、TeX ベースの構文を使用することがあります。プログラミング言語に慣れている人は、 に「!」などの省略形を使用することもあります。 Web ページでは、 の上付き文字など、限られた量のHTMLを使用して小さなサブセットをマークアップすることもあります。[4] アドホック構文では、あいまいな構文を解釈するためにコンテキストが必要です。たとえば、「<=" は「〜によって暗示される」または「〜以下」を意味する可能性があり、「dy/dx」は導関数を表す可能性がありますが、厳密に言えば有限量dyをdxで割った値を意味する場合もあります。
UnicodeはASCIIのみに比べて数学のサポートが改善されています。[5] [6]
例
テックス 式 アドホックASCII アドホックユニコード 式 $a^2$スーパー2 a^2 a² $\sum_{k=1}^N k^2 ${ k = 1 } から N { k sup 2 } までの合計 合計_{k=1}^N k^2 Σ_{k=1}^N k² $\neg (a > 2) \Rightarrow a \le 2$負(a > 2)ドロー a <= 2 !(a > 2) => a <= 2 ¬(a > 2) ⇒ a ≤ 2
コンピュータ交換のためのマークアップ言語
コンピュータ間の通信に最適化されたマークアップ言語には、MathML、[7]、 OpenMath、OMDocなどがあります。これらは、明瞭性、解析性、そして曖昧さの最小化を目的として設計されていますが、冗長性が犠牲になっています。しかし、冗長性ゆえに、人間が直接入力するには扱いにくいという欠点があります。[7]
変換
多くの入力、レンダリング、変換ツールが存在します。
Microsoft Wordには2007年まで、MathTypeの機能限定版である数式エディタが含まれていました。これにより、グラフィカルユーザーインターフェースを使用して数式を入力し、MathMLなどの標準マークアップ言語に変換することができます。MicrosoftはMicrosoft Office 2007とOffice Open XMLファイル形式のリリースに伴い、新しい形式である「Office Math Markup Language」(OMML)を使用する新しい数式エディタを導入しました。この互換性の欠如により、一部の著名な科学雑誌はMicrosoft Office 2007を使用して作成された論文の掲載を拒否しました。[8] [9]
SciWriterはMathMLとLaTeXを生成できる別のGUIです。[10]
JavaScriptプログラムであるASCIIMathMLは、アドホックASCII表記をMathMLに変換することができます。[11]
参照
参考文献
- ^ ドナルド・E・クヌース著『 The TeXbook(コンピュータとタイプセッティング、第A巻)』マサチューセッツ州レディング:アディソン・ウェスレー、1984年。ISBN 0-201-13448-9。
- ^ Lamport. LaTeX: 文書作成システム、第2版 ユーザーズガイドおよびリファレンスマニュアル。
- ^ Brian W. KernighanとLorinda L. Cherry.数学の組版システム, Communications of the ACM 18 (1975), 151–157.
- ^ ドレクセル大学 (2007). 「インターネットのための数学タイプセッティング」2007年4月16日閲覧。
- ^ 数学におけるUnicodeサポート
- ^ UnicodeMath、数学をほぼプレーンテキストでエンコード
- ^ ab Buswell, Stephen; Devitt, Stan; Diaz, Angel; et al. (1999年7月7日). 「数学マークアップ言語 (MathML) 1.01 仕様 (概要)」. 2007年4月13日閲覧。MathML
は人間が読める形式ですが、ごく単純なケースを除いて、著者は数式エディタ、変換プログラム、その他の専用ソフトウェアツールを使用してMathMLを生成することが予想されます。
- ^ 「Science and NatureがMicrosoft Officeを否定」ZDNet、2007年6月18日。 2012年10月27日閲覧。
- ^ 「Science and Nature、Word 2007の数学に困難を抱える - Murray Sargent: Officeの数学 - サイトホーム - MSDNブログ」2007年6月4日。 2012年10月27日閲覧。
- ^ “SciWriter”. 2007年1月22日時点のオリジナルよりアーカイブ。2007年4月13日閲覧。
- ^ Peter Jipsen (2005年8月). 「ASCIIMathML」. 2007年4月13日閲覧。
外部リンク
- MathML公式サイト