数値フィールドの因数分解の複雑さ


25

一般的な数値フィールドの整数の因数分解の計算の複雑さについて知られていることは何ですか?すなわち:

  1. 整数上では、バイナリ展開を介して整数を表します。一般的な数値フィールドの整数の類似表現は何ですか?
  2. 数体上の原数がPまたはBPPにあることはわかっていますか?
  3. 数値フィールドを因数分解するための最もよく知られているアルゴリズムは何ですか?(および(明らかに)EXPN 1 / 3アルゴリズムから延びるZ?)ここで、ファクタリングは数いくつかの表現を見つけることを意味する(で表されるn個の素数の積として)ビット。exp⁡nexp⁡n1/3Zn
  4. 数値フィールドで整数のすべての因数分解を見つけることの複雑さは何ですか?いくつの異なる因数分解があるかを数えますか?
  5. 上のことが知られている所定数の区間の要因を持っているかどうかを決定する〔、B ]Z[a,b] NP困難です。数値フィールド内の整数のリング上で、ノルムが特定の間隔内にある素因数があるかどうかを見つけることは、すでにNP困難である可能性がありますか?
  6. BQPの数値フィールドを因数分解していますか?

発言、動機、および更新。

もちろん、因数分解は数値フィールド上で一意ではないという事実はここで重要です。この質問(特にパート5)は、GLLに関するこのブログ投稿(この発言を参照)と、以前のTCSexchangeの質問によるものです。Lior Silverman が徹底的な答えを提示した私のブログでもそれを提示しました。


例を挙げていただけますか?フィールドdefnの素因数分解は、整数の素因数分解とどう違うのですか?
— -vzn

2
(0)の場合:私は通常番号フィールド推測として表されるQを [ ξ ] / ⟨ φ ⟩ここでφは、既約多項式です。次に、の要素Kは、ペアのタプル((nは0、D 0)、(N 1、D 1)、... 、(N δ - 1、Dのδ - 1KQ[ξ]/⟨φ⟩φKここで、 δ = ゜((n0,d0),(n1,d1),…,(nδ−1,dδ−1))。あなたの要素があることをこれは意味のn 0 / D 0 + nは1 ξ / D 1 + ⋯ + N δ - 1 ξ δ - 1 / D δ - 1。δ=deg⁡(φ)n0/d0+n1ξ/d1+⋯+nδ−1ξδ−1/dδ−1
— ブルーノ

2
@Gilこの本を見たことがありますか? springer.com/mathematics/numbers/book/978-3-540-55640-4 現時点ではコピーにアクセスできません(数日後にまた確認しますが)。(i)代数的数値フィールド、または(ii)クラス番号> 1のDedekindドメインに、因数分解について書かれたものがあるかどうかを確認します。
— ダニエルAPON

4
@vzn:ギルの口に言葉を入れずに、彼は有理数の有限の拡張を意味すると確信しています(正確にはあなたがリンクしたもの)。彼が「そのようなフィールドの因数分解」と言うとき、彼はそのようなフィールドの整数の環を因数分解することを意味すると確信しています。リンクした同じウィキペディアのページには、代数的数値フィールドに整数のリングに関するセクションがあります。
— ジョシュアグロチョウ

1
@vzn数値フィールドふるいは、数値フィールドを使用して整数を因数分解します。
— ユヴァルフィルマス

回答:


14

次の回答は、元々Gilのブログのコメントとして投稿されたものです

(1)レッツ我々が想定番号フィールド、であるαがモニック最小多項式有するF ∈ Z [ X ]を。その後、整数O Kの環の要素をαの多項式として、または積分基底で表すことができます。2つは同等です。K=Q(α)αf∈Z[x]OKα

今固定(1)のように上の問題から多項式時間の減少がありますKにおける問題のQは。計算(たとえば、理想とZの交差または多項式mod pの因数分解)が多項式時間で実行できることを確認するには、前の回答で言及したCohenの本を参照してください。KKQZp

αの判別式(fの判別式)を分割する各有理数素数事前計算として、pの上にあるO Kのすべての素数を見つけます。pαfOKp

理想所与素数判定のために(2)、せたp ∈ Zは、ようなもので∩ Z = P Z(これは多項式時間で計算することができるとのビット数pが入力多項式です)。pが素数かどうかを多項式時間でチェックします。そうでない場合、aは素数ではありません。はいの場合、事前計算またはf mod pを因数分解することにより、pの上にあるO Kの素数を見つけます。いずれにしても、aが素数である場合、それらの素数の1つでなければなりません。a◃OKp∈Za∩Z=pZppaOKpfpa

素数に因数分解について(3A)、(6A)は、理想的所与◃ O Kがそのノルム見つけるY = N K Q()= [ O K:A ]を。繰り返しますが、これは多項式時間で見つけることができ、結果として大きすぎません。因子YにおけるZ(いずれかの古典的またはショアのアルゴリズムを使用して、あなたが望む削減によって異なります)。これはyを分割する有理数素数のリストを与えるため、2のようにyを分割するO Kの素数のリストを見つけることができます。以来| ya◃OKy=NQK(a)=[OK:a]yZyOKyこれは aを分割する素数のリストを与えます。最後に、素数が与えられた理想を除算する指数を決定するのは簡単です。a|yOKa

(3b)、(6b)しかし、ギルは素数ではなく既約への因数分解を望んでいます。それはの素因数分解所与ことが判明、効率的に構築することが可能である1つの因数分解X線の既約元にO K。このため、h Kをクラス番号とし、与えられた理想の理想クラスを効率的に計算できることに注意してください。ここでxの既約除数を見つけるためにh Kを選択しますxOKxOKhKxhKの因数分解から(おそらく繰り返しで)プライム理想をx。ハト穴の原理により、これらのサブセットの一部はクラスグループのアイデンティティに乗算されます。そのような最小限のサブセットを見つけます。その積は、既約要素によって生成される主要な理想です。除算、この要素によって、分解と繰り返しから、関連する理想を削除します。因数分解の要素がh K未満の場合、すべての因子の最小サブセットを取得します。xhK

(4)因数分解を既約に数えることは可能だと思いますが、これは少し余分な組み合わせ論です。それを解決する時間をください。一方、それらのすべてを決定することは、一般に指数関数的に多くのそのような因数分解があるため、準指数的因数分解アルゴリズムのコンテキストでは興味深いものではありません。

(5)わからない。


5

ダニエルが述べたように、計算代数的数論のコースA Course(リンク)で。

特に、数値フィールドの要素を表す方法はいくつかあります。LET 有すること番号フィールドφ A学位Nのモニック既約多項式Z [ ξ ]。してみましょうθは、任意のルートでφ。いわゆる標準表現要素のα ∈ Kは、タプル(0、... 、N - 1、D )K=Q[ξ]/⟨φ⟩φnZ[ξ]θφα∈K(a0,…,an−1,d)、 D > 0および GCD (0、... 、N - 1、D )= 1、ように α = 1ai∈Zd>0gcd(a0,…,an−1,d)=1

α=1d∑i=0n−1aiθi.
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.