Next: , Previous:   [Contents][Index]

24 Affine


24.1 Introduction to Affine

affineは多項式の群を扱うパッケージです。


24.2 Functions and Variables for Affine

関数: fast_linsolve ([expr_1, ..., expr_m], [x_1, ..., x_n])

変数x_1, ..., x_nに関する連立線形方程式expr_1, ..., expr_m を解きます。 expr_iそれぞれは、等式か一般式を取り得ます; もし一般式として与えられたら、 形式expr_i = 0の等式として扱われます。

戻り値は、 形式[x_1 = a_1, ..., x_n = a_n] の等式のリストです。 ここで、a_1, ..., a_nはすべてx_1, ..., x_nを含みません。

fast_linsolveは、 粗な方程式系に対してlinsolveより速いです。

load("affine")はこの関数をロードします。

関数: grobner_basis ([expr_1, ..., expr_m])

等式expr_1, ..., expr_mのグレブナー基底を返します。 等式に関係する他の関数を整理するためには、 その後、関数polysimpを使うことができます。

grobner_basis ([3*x^2+1, y*x])$

polysimp (y^2*x + x^3*9 + 2) ==> -3*x + 2

polysimp(f)は、 fexpr_1, ..., expr_mによって生成されたイデアルに含まれるときだけ、 すなわち、fexpr_1, ..., expr_mの要素の多項式結合の時だけ、 0をもたらします。

load("affine")はこの関数をロードします。

関数: set_up_dot_simplifications (eqns, check_through_degree)
関数: set_up_dot_simplifications (eqns)

The eqnsは、非可換変数を含む多項式方程式です current_variablesの値は、次数を計算するために使われる変数のリストです。 手続きが終了するためには、方程式は斉次でなければいけません。

もし fの次数上のdot_simplificationsに関する重複整理をチェックしたら、 以下は真です: fが方程式によって生成されたイデアルに含まれる時だけ、 すなわち、fが方程式の要素の多項式結合の時だけ、 dotsimp (f)は、0をもたらします。

次数はnc_degreeで返されるものです。 これは、さらに、個々の変数の重みに影響されます。

load("affine")はこの関数をロードします。

関数: declare_weights (x_1, w_1, ..., x_n, w_n)

重み w_1, ..., w_n それぞれをx_1, ..., x_nに割り当てます。 これらは、nc_degreeを計算する時に使われる重みです。

load("affine")はこの関数をロードします。

関数: nc_degree (p)

非可換多項式pの次数を返します。 declare_weightsを参照してください。

load("affine")はこの関数をロードします。

関数: dotsimp (f)

fが方程式によって生成されたイデアルに含まれる時だけ、 すなわち、fが方程式の要素の多項式結合の時だけ、 0を返します。

load("affine")はこの関数をロードします。

関数: fast_central_elements ([x_1, ..., x_n], n)

もしset_up_dot_simplificationsが以前に実行されていたら、 与えられた次数nでの変数x_1, ..., x_nに関する中心多項式 を見つけます。

例えば:

set_up_dot_simplifications ([y.x + x.y], 3);
fast_central_elements ([x, y], 2);
[y.y, x.x];

load("affine") loads this function.

関数: check_overlaps (n, add_to_simps)

次数nまでの重複をチェックします。 すなわち、dotsimpが正しく機能するように、 それぞれの次数で十分な整理規則を持つことを確認します。 もしあらかじめ単項式の空間次元が何か知っているなら、 このプロセスは、スピードアップできます。 もし有限グローバル次元なら、 hilbertが使われるべきです。 もし単項式次元を知らないなら、 rank_functionを指定しないでください。 オプションの三番目の引数resetは、 falseは、物事の再設定についてわざわざ問い合わせないように言います。

load("affine")はこの関数をロードします。

関数: mono ([x_1, ..., x_n], n)

次数nの変数x_1, ..., x_nに関する現在のドット整理に関係した 独立な単項式のリストを返します。

load("affine") loads this function.

関数: monomial_dimensions (n)

カレント代数に関する次数nまでのヒルベルト級数を計算します。

load("affine")はこの関数をロードします。

関数: extract_linear_equations ([p_1, ..., p_n], [m_1, ..., m_n])

非可換単項式m_1, ..., m_nの 非可換多項式p_1, ..., p_n の係数のリストを作ります。 係数はスカラーでなければいけません。 単項式のリストを組み立てるには、list_nc_monomialsを使ってください。

load("affine")はこの関数をロードします。

関数: list_nc_monomials ([p_1, ..., p_n])
関数: list_nc_monomials (p)

多項式pまたは多項式のリストp_1, ..., p_n の中に現れる非可換単項式のリストを返します。

load("affine")はこの関数をロードします。

オプション変数: all_dotsimp_denoms

デフォルト値: false

all_dotsimp_denomsがリストの時、 dotsimpが出会う分母がリストに追加されます。 all_dotsimp_denomsは、 dotsimpをコールする前に 空のリスト[]に初期化されるかもしれません。

デフォルトでは、dotsimpは分母を集めません。


Next: , Previous:   [Contents][Index]