RegularChains ライブラリを使用した多項式系の検証と求解
Changbo Chen, Francois Lemaire, Liyun Li, Xin Li, Marc Moreno Maza, Wei Pan, Bican Xia および Yuzhen Xie
2009年3月4日
|
1. はじめに
|
|
RegularChains ライブラリは多項式系を記号的に求解し、その解を検証するための多様なコマンドを提供します。入力する系には多項式 、多項不等式 、および多項不等式集合 または が含まれる場合があります。これらはすべて非線形の場合があります。系が与えられるときに入力される多項式の係数は、有理数、素数を法とする整数、多項式とパラメータに応じてさまざまです。RegularChains ライブラリで数値計算される解の集合は、構成要素のリストで表されます。これらの構成要素は、幾何学的には点 (または点の集合)、曲線 (または曲線の集合)、サーフェス (またはサーフェスの集合) などがあります。 数値上、構成要素は特殊な多項式系の一種として表現されますが、この系は、三角形の形状と他の代数的な特性を持っています。入力系は、その構成要素が方程式だけ、不等式だけで不等式の集合は含まない、または不等式の集合が含まれるといった性質により、構成要素を表す系は、レギュラーチェイン、レギュラー系、または レギュラー半代数系 とそれぞれ呼び名が異なります。「レギュラー」という用語は、これらの系が持つ特殊な代数的特性を表したものです。RegularChains ライブラリは、これらさまざまな種類の多項式系のための型を提供しており、以降はこの重要な特性について説明します。
もう一つの RegularChains ライブラリの設計上の特性は、7 種類のモジュールに分類された 121 個のコマンドで構成される組織体です。ライブラリの最上位に使用頻度のもっとも高いコマンドが配置され、特定のトピックごとに分類した 6 種類のサブモジュールがその下位に配置される構成になっています。サブモジュールの ChainTools、ConstructibleSetTools、および SemiAlgebraicSetTools はそれぞれ、レギュラーチェイン、レギュラー系、レギュラー半代数的集合の特殊な演算を扱います。サブモジュール MatrixTools では、零因子を持つ体における線形系の数値計算ができます。これは、レギュラーチェイン理論上不可欠なツールで、さまざまな分野への応用が期待されています。
サブモジュールの ParametricSystemTools は、主にパラメータを持つ系の解を求めます。以下に例を示すように、このような系の実根または複素根の分類を行います。 最後のサブモジュールの FastArithmeticTools は、最上位モジュールのコマンドに類似する一部のコマンドまたは ChainTools を使用して、基本的な演算をレギュラーチェインに実装するための高度な最適化を行います。ただし、このサブモジュールのコマンドは、一定の前提の下でのみ実施することができ、使用には注意と高度な知識が必要です。
| (1.1) |
|
|
2. 多項式系とレギュラーチェイン
|
|
このセクションでは、RegularChains ライブラリの最上位モジュールについて紹介します。レギュラーチェインの概念は、多項式の再帰と一変量的視点を基準にしていると考えることができます。以下に、この方法で多項式を扱うコマンドのいくつかを説明します。このライブラリで最もよく使われるコマンドは Triangularize で、例を数種類挙げて説明します。入力として多項式系を取り、解の集合の記述を返します。入力系を構成するのが方程式だけの場合、この記述はレギュラーチェインのリストになります。入力系が不等式を受け入れる場合は、Triangularize で計算するか、サブモジュール ConstructibleSetTools の GeneralConstruct コマンドがこれを扱います。不等式の集合の場合、モジュール ParametricSystemTools および SemiAlgebraicSetTools にある別のコマンドを使用することができますが、これらについては後述します。
|
2.1 多項式の一変量的視点
|
|
変数を という順序で指定した多項環 を定義します。有理数の体 がデフォルトの係数環です。
>
|
|
| (2.1.1) |
この多項環の内部表現は次のようにアクセスできます。
>
|
|
Variables : [x, y, z] Parameters : {} Characteristic : 0
| |
次の多項式について考えます。
>
|
|
| (2.1.2) |
の多項式として主変数の が次のように与えられます:
>
|
|
| (2.1.3) |
の初期 (または 主係数) は次のようになります:
>
|
|
| (2.1.4) |
主変数における次数 は次のように表されます:
>
|
|
| (2.1.5) |
の階数は、主次数 にレイズされる変数 で、次のように表されます:
>
|
|
| (2.1.6) |
の末尾は次のようになります。
>
|
|
| (2.1.7) |
の分離で、自身の主変数に対する の導関数です:
>
|
|
| (2.1.8) |
順序を に変更します:
Variables : [z, y, x] Parameters : {} Characteristic : 0
| |
| (2.1.9) |
という順序の多項環 について考えます。
|
|
|