コンピュータサイエンスにおいて、直線プログラムとは、非公式には、ループやテストを含まず、以前に計算された要素に各操作を適用する一連のステップによって形成されるプログラムです。
この記事は、許可される演算が群の演算、つまり乗算と逆演算である場合について取り上げます。より具体的には、有限群G = ⟨ S ⟩ の直線計画( SLP ) は、 Gの要素の有限シーケンスLであり、 Lのすべての要素はSに属するか、前の要素の逆であるか、または 2 つの前の要素の積です。 SLP L は、 g がSとその逆のワードでエンコードされている場合、 g ∈ Lであれば、群の要素g ∈ Gを計算すると言われています。
直感的には、何らかのg ∈ Gを計算する SLP は、g をS上のグループワードとして格納する効率的な方法です。 g がiステップで構築される場合、 gのワード長はiについて指数関数的である可能性がありますが、対応する SLP の長さは iについて線形であることに注意してください。 これは、 SLP を使用してグループ要素を特定の生成セット上のワードとして効率的にエンコードすることにより、 計算群論で重要な用途があります。
直線計画法は、1984年にババイとセメレディによって、特定の行列群の特性の計算の複雑さを研究するためのツールとして導入されました[1] 。ババイとセメレディは、有限群Gのすべての要素には、すべての生成集合において長さO (log 2 | G |)の直線計画法があることを証明しました。
構成的帰属問題に対する効率的な解法は、多くの群論的アルゴリズムにとって重要です。これは、SLP の観点から次のように述べることができます。有限群G = ⟨ S ⟩ およびg ∈ Gが与えられたとき、 S上で g を計算する直線プログラムを見つけます。構成的帰属問題は、ブラックボックス群の設定でよく研究されます。要素は、固定長のビット文字列によってエンコードされます。乗算、反転、および恒等式との等価性のチェックという群論的機能に対して、3 つのオラクルが提供されます。ブラックボックス アルゴリズムは、これらのオラクルのみを使用するアルゴリズムです。したがって、ブラックボックス群の直線プログラムはブラックボックス アルゴリズムです。
オンラインのATLAS of Finite Groupsでは、豊富な有限単純群に対する明示的な直線プログラムが提供されています。
意味
非公式の定義
Gを有限群、S をGのサブセットとします。Gの要素のシーケンスL = ( g 1 ,..., g m ) は、各g i が次の 3 つの規則のいずれかによって取得できる 場合、 S上の直線プログラムです。
- g i ∈ S
- g i = g j g k(あるjに対して、k < i)
- g i = g−1
秒あるj < iに対して。
要素g ∈ Gの直線コスト c ( g | S ) は、 gを計算するS上の最短直線プログラムの長さです。 gがSによって生成されるサブグループにない場合、コストは無限大です。
直線プログラムは述語論理における導出に似ています。S の要素は公理に対応し、グループ演算は推論規則に対応します。
正式な定義
Gを有限群、S をGのサブセットとします。あるg ∈ Gを計算するS上の長さmの直線プログラムは、各iに対してw iがSの何らかの要素の記号であるか、あるj < i に対してw i = ( w j ,-1) であるか、あるj、k < iに対してw i = ( w j、w k ) であるか、Gで明白な方法で評価されるとw mが値gをとるような一連の式( w 1 、... 、 w m )です。
[2]に出てくる元の定義では、G =⟨ S ⟩であることが要求されます。上記の定義は、これを一般化したものです。
計算の観点から見ると、直線プログラムの正式な定義にはいくつかの利点があります。まず、抽象表現のシーケンスは、生成セット上の項よりもメモリが少なくて済みます。次に、直線プログラムをGの 1 つの表現で構築し、別の表現で評価することができます。これは、いくつかのアルゴリズムの重要な機能です。[2]
例
二面体群D 12は六角形の対称性の群です。これは 60 度回転 ρ と 1 回の反射 λ によって生成できます。次の左端の列は λρ 3の直線プログラムです。
6文字の順列群S 6では、α=(1 2 3 4 5 6)とβ=(1 2)を生成元として取ることができます。ここで左端の列は、(1 2 3)(4 5 6)を計算する直線プログラムの例です。
アプリケーション
有限群の短い記述。直線プログラムは、 一階述語論理による有限群の圧縮を研究するために使用できます。直線プログラムは、 G を記述する「短い」文(つまり、| G | よりもはるかに短い) を作成するためのツールを提供します。より詳細には、直線プログラムは、すべての有限単純群が長さO (log| G |)の一次記述を持ち、すべての有限群Gが長さO (log 3 | G |)の一次記述を持つことを証明するために使用されます。[3]
有限単純群の最大部分群の生成集合を計算する直線プログラム。オンラインATLAS of Finite Group Representations [4]は、多数の有限単純群の最大部分群の生成集合を計算するための抽象的な直線プログラムを提供している。
例:スズキ群の無限族に属する群 Sz(32) は、生成元aとbによって階数 2 を持ちます。ここで、aは位数 2、bは位数 4、abは位数 5、ab 2は位数 25、abab 2 ab 3は位数 25 です。以下は、最大部分群 E 32 ·E 32 ⋊C 31の生成集合を計算する直線プログラムです。この直線プログラムは、オンラインの有限群表現の ATLAS にあります。
到達可能性定理
到達可能性定理は、Sによって生成された有限群Gが与えられた場合、各g ∈ Gの最大コストは(1 + lg| G |) 2であると述べています。これは、生成元から群の要素を生成するのがどれだけ難しいかについての境界として理解できます。
ここで関数lg( x )は対数関数の整数値バージョンです。k ≥ 1の場合、lg ( k ) = max{ r : 2r≤k }とします。
証明の考え方は、新しい生成セットとして機能するセットZ = { z 1 ,..., z s } を構築することです ( s はプロセス中に定義されます)。これは通常Sよりも大きくなりますが、 Gの任意の要素はZ上の最大で長さ2| Z |の単語として表現できます。セットZ は、増加するセットのシーケンスK ( i ) を帰納的に定義することによって構築されます。
K ( i ) = { z 1 α 1 · z 2 α 2 ·...· z i α i : α j ∈ {0,1}} とします。ここで、z iはi番目のステップでZに追加されるグループ要素です。c ( i ) は、 Z ( i ) = { z 1 ,..., z i }を含む最短直線プログラムの長さを表します。K (0) = {1 G }、c (0)=0 とします。集合Z を再帰的に定義します。
- K ( i ) −1 K ( i ) = Gの場合、s が値iを取ることを宣言して停止します。
- それ以外の場合は、 「コスト増加」 c ( i +1)−c ( i )を最小化するzi + 1∈G \ K ( i ) −1K ( i ) (空でない)を選択します。
このプロセスにより、Z は任意のg ∈ G をK ( i ) −1 K ( i )の要素として記述できるように定義され、 Zから生成するのが実質的に容易になります。
ここで、プロセスが lg(| G |) ステップ以内に終了することを確認するために、次の主張を検証する必要があります。
主張1 — i < sの場合、| K ( i +1) | = 2| K ( i ) |です。
| K ( i +1) | ≤ 2| K ( i ) |であることは明らかです。ここで、矛盾として| K ( i +1) | < 2| K ( i ) |と仮定します。鳩の巣原理により、あるα j 、 β j ∈ {0,1} に対して、 k 1、k 2 ∈ K ( i +1)があり、k 1 = z 1 α 1 · z 2 α 2 ·...· z i +1 α i +1 = z 1 β 1 · z 2 β 2 · ...· z i +1 β i +1 = k 2となります。r をα r ≠ β rとなる最大の整数とします。 WLOGでαr =1と仮定します。すると、zr = zp − αp · zp - 1 − αp - 1 · ...· z1 − α1 · z1β1 · z2β2 · ...· zqβqとなり、 p 、q < rとなります。したがってzr∈K ( r − 1 ) −1K ( r − 1 )となり、矛盾 が 生じます。
次の主張は、すべてのグループ要素のコストが必要な境界内にあることを示すために使用されます。
主張2 — c ( i ) ≤ i 2 − i。
c (0)=0なので、c ( i +1) - c ( i ) ≤ 2 iであることを示すだけで十分です。Gのケーリーグラフは連結であり、i < s、K ( i ) −1 K ( i ) ≠ Gの場合、 g 1 ∈ K ( i ) −1 K ( i )かつg 2 ∈ Sである形式g 1 · g 2 ∈ G \ K ( i ) −1 K ( i )の元が存在します。
g 1 ∈ K ( i ) −1 K ( i ) を生成するには、最大で 2 iステップかかります。最大長の要素は恒等元なので、生成する意味はありません。したがって、 2 i −1ステップで十分です。g 1 · g 2 ∈ G \ K ( i ) −1 K ( i ) を生成するには、 2 iステップで十分です。
これで定理は完成です。K ( s ) −1 K ( s ) = Gなので、任意のg ∈ Gはkの形で表すことができます。−1
1· k 2とk−1
1, k 2 ∈ K ( s )。系2により、Z ( s ) = Zを生成するには最大でs 2 − sステップが必要であり、 Z ( s )からgを生成するには2 s − 1ステップ以下で済みます。
したがってc ( g | S ) ≤ s 2 + s − 1 ≤ lg 2 | G | + lg| G | − 1 ≤ (1 + lg| G |) 2 です。
参考文献
- ^ Babai、László、Endre Szemerédi。「行列群問題の複雑さについて I」コンピュータサイエンスの基礎、1984 年。コンピュータサイエンスの基礎に関する第 25 回年次シンポジウム。IEEE、1984 年
- ^ ab Ákos Seress. (2003). 順列群アルゴリズム. [オンライン]. Cambridge Tracts in Mathematics. (No. 152). ケンブリッジ: Cambridge University Press.
- ^ Nies, André; Tent, Katrin (2017). 「短い一階述語による有限群の記述」. Israel Journal of Mathematics . 221 : 85–115. arXiv : 1409.8390 . doi : 10.1007/s11856-017-1563-2 .
- ^ 「有限群表現のATLAS - V3」。
