MathML[Import] - MathML 表現を Maple 数式に変換する
MathML[ImportContent] - content-only MathML で表現したものを Maple 数式に変換する
使い方
Import( mmlstring )
ImportContent( mmlstring )
パラメータ
mmstring - Maple 文字列による形式で書かれた MathML テキスト
|
説明
|
|
•
|
MathML をインポートすると、MathML によりテキストで表されている数式から、それに対応する Maple 数式が生成されます。MathML 形式のテキストを、Maple 文字列による形式にして Maple に渡す必要が有ります。
|
•
|
MathML パッケージがサポートしている、 Import などで利用できる MathML 形式は次の二つです。
|
|
1. Paralell MathML 形式 (MathML 並記形式) で符号化したもの。数式の具体的な表示方法と具体的な意味を表現する木状のデータ構造を組にしたもの、 および
|
|
2. Content-only MathML 形式 (MathML 意味形式) で符号化したもの。
|
•
|
MathML 形式で書かれたテキストによる数式の表現を Maple にインポートするには、Import (MathML 並記形式のインポート) または ImportContent (MathML 意味形式のインポート) を用います。
|
|
このいずれのルーチンも、MathML 形式のテキストを含む 1 つの Maple 文字列を引数として受け付けます (文字列は MathML として正しく書かれていることが前提になります)。MathML から MathML に変換することが可能な場合には、対応する Maple 数式が返されます。可能でない場合には、エラーが返されます。
|
•
|
MathML[ImportContent] による MathML 意味形式のインポートは、それなりに速く、正確な操作です。
|
•
|
MathML 表示形式 (Presentation-only MathML 形式) は表示用の形式で、Maple のような計算ツール用に設計されているものではありません。そのため、かなり曖昧な部分も有り、正確に変換されないこともしばしばです。そのため、 MathML 表示形式が正しくても、Maple の MathML[Import] ルーチンが時々何も返してこないことが有ります。詳細な情報については worksheet, managing, exportMathML を参照してください。
|
|
注意: 発見的前処理、発見的構文解析および簡単な AI 的技法が、 MathML 表示形式から Maple への変換を試みるために利用されています。1つの変換に対して複数の可能性がある場合には、選択を行わなければなりません。たとえば、以下に示す MathML 表現の場合、a(b+c) (関数呼び出し) とも a*(b+c) (掛け算) とも解釈できてしまいます。
|
<math>
<mrow>
<mi>a</mi>
<mrow>
<mi>b</mi>
<mo>+</mo>
<mi>c</mi>
<mrow/>
<mrow/>
</math>
|
また、MathML を用いて、Maple にとって意味のない表現をすることも可能です (たとえば、C 言語ならば 「a + ++b」 という表現には正しい意味がありますが、 Maple なら誤りです)。
|
•
|
この関数は MathML パッケージに含まれているので、with(MathML) というコマンドを実行した後であれば、Import(..) という形で利用することができます。しかし、MathML[Import](..) のようにコマンドの長い形によりいつでも利用することができます。
|
|
|
例
|
|
>
|
MathML[Export]( a + 2 * b );
|
| (2.1) |
| (2.2) |
>
|
MathML[ExportContent]( Int( sin( x ) - cos( x ), x = 0 .. Pi/2 ) );
|
| (2.3) |
>
|
MathML[ImportContent]( % );
|
| (2.4) |
>
|
ode := diff(y(x),x)-y(x)^2+y(x)*sin(x)-cos(x);
|
| (2.5) |
>
|
MathML[ExportContent]( ode );
|
| (2.6) |
>
|
MathML[ImportContent]( % );
|
| (2.7) |
>
|
mml := MathML[Export]( ode ):
MathML[Import]( mml );
|
| (2.8) |
|
|
参照
|
|
codegen[eqn], codegen[MathML], latex, MathML, MathML[Export], MathML[ExportContent], XMLTools, worksheet, expressions, pasteMathML, worksheet, managing, exportMathML
|
|
Download Help Document
Was this information helpful?