Wolfram Research製品ご購入サービスとリソース会社概要その他のWolframサイト
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.

Documentation / Mathematica / アドオンとリンク / 標準パッケージ / NumberTheory /

NumberTheory`AlgebraicNumberFields`

このパッケージを使うと,有理数を有限代数に拡大した計算を行う関数が利用できるようになる.使用されている概念とアルゴリズムについての詳細は,H. Cohen著「A Course In Computational Algebraic Number Theory」(Springer-Verlag出版,1993)等を参照されたい.

Mathematica では代数的数をRootオブジェクトとして表現することができる.Rootオブジェクトは代数的数の最小多項式と根番号(Rootオブジェクトが最小多項式のどの根を表しているのかを示す整数)を含んでいる.これにより,任意の複素代数的数の表現が一意的となる.一方で,この表現での演算操作はコストが高いという問題もある.そのため,Mathematica では演算式の簡約化のために追加の関数RootReduceを使用することが必要となる.固定の有理数の有限代数的拡大体DoubleStruckCapitalQ(Theta)での計算に限定する場合は,DoubleStruckCapitalQ(Theta)の要素のより便利な表現,つまりTheta の多項式を使用することができる.

有理数の有限拡大体の要素としての代数的数の表現

パッケージをロードする.

In[1]:=

f が次数l で整数係数かつ最高次の係数が1である既約多項式関数であり,またが有理数なら,は不活性数値オブジェクトである.

In[2]:=

Out[2]=

Nを使うと,Algebraicオブジェクトの数値的近似が求められる.

In[3]:=

Out[3]=

Theta = Root[f, k]を評価すると代数的数になるすべてのfkおよびすべての有理数のリストについても,は評価すると,Xi = Root[g, n]であるとなる.ここでdTheta の最小多項式の主係数でり,Xi は代数的整数,mg の次数で,以下が成り立つ.

Algebraicは最高次の係数が1で係数リストの長さが拡大体の次数と等しい拡大体を定義する多項式を自動的に作成する.

In[4]:=

Out[4]=

Algebraicで指定されている多項式f が還元可能なら,根がRoot[f, k]であるf の還元不可能な因子で指定される拡大体が得られる.

In[5]:=

Out[5]=

有理数を表すAlgebraicオブジェクトは自動的に数値に還元される.

In[6]:=

Out[6]=

明らかに同じ体に存在する(つまり第1,第3要素が等しい)オブジェクトの加算または乗算,有理数とAlgebraicオブジェクトの加算または乗算,あるいはAlgebraicオブジェクトの整数乗を行うと,Algebraicオブジェクトが得られる.

In[7]:=

Out[9]=

RootReduceAlgebraicオブジェクトをRootオブジェクトに変換する.

In[10]:=

Out[10]=

任意の代数的数を代数体の要素として表すための関数

ToCommonFieldを使うと,指定の代数的数を含む有理数の共通の有限拡大体を求めることができる.

In[11]:=

Out[11]=

次の式はRoot[4]により生成された体の要素として表す.

In[12]:=

Out[12]=

有理数の固定の有限拡大体内での計算は,複素代数的数すべての体の中での計算より格段に速い.

{x, y, z}が代数的数{a, b, c}で置き換えられた有理関数f の値を求めるとする.

In[13]:=

{a, b, c}におけるf の値をRootReduceを使って直接計算すると,多少時間がかかる.

In[15]:=

Out[15]=

これをより速く行う別の方法として,{a, b, c}を含む共通の代数体で計算を行うというものがある.

In[16]:=

Out[16]=

共通の数体の中での計算は格段に速い.

In[17]:=

Out[17]=

結果のAlgebraicオブジェクトをRootオブジェクトに変換するのも速い.

In[18]:=

Out[18]=

ToCommonFieldのオプション.

デフォルトのオプション設定SmallestField -> False ToCommonFieldでは,入力の中のAlgebraicオブジェクトが数体を生成し,それによって可能な最小のものではない共通体を求めることができるかどうかを確認しない.

1つ目のオブジェクトはに等しいため,これが示す第4次体DoubleStruckCapitalQ(Root[4])を生成しない.しかし,ToCommonFieldが求めた共通体には体すべてDoubleStruckCapitalQ(Root[4])が含まれる.

In[19]:=

Out[19]=

SmallestField -> Trueと設定すると,ToCommonFieldは可能な最小の体を求める.

In[20]:=

Out[20]=

代数的数の特性を求める関数

代数的数a の最小多項式は,整数係数を持ち,f(a) Equal 0のなる最小の正の主係数を持つ最低次の多項式f である.

次の式は純関数として表されたの最小多項式を返す.

In[21]:=

Out[21]=

次はx の多項式として表されたの最小多項式を返す.

In[22]:=

Out[22]=

代数的数はその最高次の係数が1のとき,かつそのときに限り,代数的整数である.

が代数的整数であることを示す.

In[23]:=

Out[23]=

が代数的整数ではないことを示す.

In[24]:=

Out[24]=

nが代数的整数となる最小の正の整数n を求める.

In[25]:=

Out[25]=

代数的数a のトレースはMinimalPolynomial[a]のすべての根の和である.

のトレース.

In[26]:=

Out[26]=

代数的数a のノルムはMinimalPolynomial[a]のすべての根の積である.

のノルム.

In[27]:=

Out[27]=

a と1/a の両方が代数的整数,あるいは同様にAlgebraicNumberNorm[a]が1または-1の場合かつその場合に限り,代数的数は代数的単数となる.

GoldenRatioが代数的単数であることを示す.

In[28]:=

Out[28]=

は代数的単数ではない.

In[29]:=

Out[29]=

代数的数a は整数n についてである場合,かつその場合に限り,1のベキ根である.

は1のベキ根である.

In[30]:=

Out[30]=

代数体の要素の特性を計算する関数

aAlgebraic[f, coeffs, k]であるとすると,NumberFieldCharacteristicPolynomial[a, x]に等しい.ここで,dDoubleStruckCapitalQ(Root[f, k])/DoubleStruckCapitalQ(a)の拡大次数である.

NumberFieldCharacteristicPolynomialは次数4の有理数の拡大体の要素として表されるが,これはMinimalPolynomialの2乗である.

In[31]:=

Out[31]=

NumberFieldTrace[a]NumberFieldCharacteristicPolynomial[a]のすべての根の和である.aAlgebraic[f, coeffs, k]ならば,NumberFieldTrace[a]と等しくなる.ここでdDoubleStruckCapitalQ(Root[f, k])/DoubleStruckCapitalQ(a)の拡大次数である.

NumberFieldTraceは次数4の有理数の拡大体の要素として表されるが,これはAlgebraicNumberTraceの2倍である.

In[32]:=

Out[32]=

In[33]:=

Out[33]=

NumberFieldNorm[a]NumberFieldCharacteristicPolynomial[a]のすべての根の積である.aAlgebraic[f, coeffs, k]なら,NumberFieldNorm[a]に等しい.ここでdDoubleStruckCapitalQ(Root[f, k])/DoubleStruckCapitalQ(a)の拡大次数である.

NumberFieldNormは,次数4の有理数の拡大体の要素として表されるが,これはAlgebraicNumberNormの2乗に等しい.

In[34]:=

Out[34]=

In[35]:=

Out[35]=

代数体の特性を計算する関数

代数体K の整数底は,K の代数的整数のDoubleStruckCapitalZ-加群の底を形成する代数的数のリストである. EpsilonK が代数的整数であり,すべての代数的整数z EpsilonK が次のように一意的に表せるとき,かつその場合に限り,は代数体K の整数底である.

ここでは整数係数である.

の1次の根により生成された数体の整数底.

In[36]:=

Out[36]=

)の整数底.

In[37]:=

Out[37]=

の4次の根により生成された数体の1のベキ根.

In[38]:=

Out[38]=

数体)のすべての1のベキ根.

In[39]:=

Out[39]=

EpsilonK が代数的単数であり,すべての代数的単数u EpsilonK が次のように一意的に表される場合,かつその場合に限り,は代数体K の基本単数である.

ここで,Xi は1のベキ根,は整数ベキ指数である.

の3次の根により生成された体の基本単数一式.

In[40]:=

Out[40]=

2次体)の基本単数.

In[41]:=

Out[41]=

の1次の根により生成された体のノルム9の要素の類の代表値一式.

In[42]:=

Out[42]=

)のノルム2の要素の類の代表値一式.

In[43]:=

Out[43]=

多項式が実根1つと,2つの共役複素根のペアを持つことを示す.

In[44]:=

Out[44]=

)が12個の実embeddingと6個の複素embeddingのペアを持つことを示す.

In[45]:=

Out[45]=

数体K の判別式はK の整数底の判別式,つまり要素がである行列の判別式である.判別式の値は,整数底の値に依存しない.

)の判別式.

In[46]:=

Out[46]=

多項式の根により生成された体の判別式を求める.判別式の値はどの根を用いるかに因らない.

In[47]:=

Out[47]=

数体K の単数基準は,次の対数embeddingにおいてK の単数のグループの像の格子容積である.

ここでDoubleStruckCapitalCにおけるK の実embedding,DoubleStruckCapitalCにおけるK の複素embeddingの共役ペアの1つである.

)の単数基準.

In[48]:=

Out[48]=

多項式の根により生成された体の単数基準を求める.単数基準の値は根の選択に因らない.

In[49]:=

Out[49]=



Any questions about topics on this page? Click here to get an individual response.Buy NowMore Information


 © 2008 Wolfram Research, Inc.  Terms of Use  Privacy Policy | [en] |
ニュースレターのご登録