数学において、クリーネ代数(クリーネだいすう、 スティーブン・コール・クリーネにちなんで名付けられた)は、閉包演算子を備えた冪等な(したがって部分的に順序付けられた)半環である。[1]これは、正規表現で知られている演算を一般化したものである。
意味
クリーネ代数と関連構造の様々な非同値な定義が文献で与えられている。[2]ここでは、現在最も一般的と思われる定義を与える。
クリーネ代数は、集合 Aと、2 つの二項演算+ : A × A → Aと · : A × A → A、および 1 つの関数* : A → A (それぞれa + b、ab 、 a *と表記) を組み合わせたもので、次の公理が満たされます。
- + と · の結合法則: A内のすべてのa、b、cについて、 a + ( b + c ) = ( a + b ) + cかつa ( bc ) = ( ab ) cです。
- + の交換法則: Aの任意のa、bに対してa + b = b + a
- 分配法則: Aのすべてのa、b、cについて、 a ( b + c ) = ( ab ) + ( ac ) かつ ( b + c ) a = ( ba ) + ( ca )
- + と · の単位元: Aには元 0 が存在し、 Aのすべてのaに対して、a + 0 = 0 + a = aが成り立ちます。A には元 1 が存在し、A のすべての a に対して、a 1 = 1 a = aが成り立ちます。
- 0 による消滅: A内のすべてのaについて、 a 0 = 0 a = 0 です。
上記の公理は半環を定義します。さらに以下が必要です。
- +はべき等です: Aのすべてのaに対してa + a = aです。
これで、a ≤ bがa + b = b のときのみ(または同等に、a ≤ b がAにa + x = bとなるx が存在するときのみ。いかなる定義でも、a ≤ b ≤ aであればa = bとなる) と設定することで、 A上の半順序≤ を定義することが可能になった。この順序で、演算*に関する最後の 4 つの公理を定式化できる。
- Aの すべてのaについて、 1 + a ( a * ) ≤ a *です。
- Aのすべてのa について、1 + ( a * ) a ≤ a *。
- aとx がAに含まれ、ax ≤ xである場合、a * x ≤ x
- もしaとxがAに含まれ、 xa ≤ xならば、x ( a * ) ≤ x [3]
直感的には、 a + b をaとbの「和集合」または「最小上限」と考え、abをa ≤ bならばax ≤ bxであるという意味で単調な乗算と考えるべきです。スター演算子の背後にある考え方は、a * = 1 + a + aa + aaa + ... です。プログラミング言語理論の観点からは、 + を「選択」、 · を「順序付け」、 *を「反復」と解釈することもできます。
例
Σ を有限集合 (「アルファベット」) とし、A をΣ 上のすべての正規表現の集合とします。2 つの正規表現が同じ言語を記述する場合、それらは等しいとみなされます。この場合、 A はKleene 代数を形成します。実際、これは、正規表現間の任意の方程式が Kleene 代数の公理に従うという意味で 自由Kleene 代数であり、したがってすべての Kleene 代数で有効です。
再び、 Σ をアルファベットとします。A をΣ 上のすべての正規言語の集合(または Σ 上のすべての文脈自由言語の集合、または Σ 上のすべての再帰言語の集合、またはΣ 上のすべての言語の集合)とします。すると、Aの 2 つの要素の和集合(+ と表記)と連結(· と表記)は再びAに属し、Aの任意の要素に適用されたKleene スター演算も A に属します。0 が空集合で、1 が空文字列のみを含む集合であるKleene 代数Aが得られます。
M を単位元eを持つモノイドとし、A をMのすべての部分集合の集合とする。そのような 2 つの部分集合SとTについて、S + T をSとTの和集合とし、ST = { st : s in S and t in T } と設定する。S *は、 Sによって生成されるMのサブモノイドとして定義され、 { e } ∪ S ∪ SS ∪ SSS ∪ ...と記述できる。すると、 A は、 0 が空集合で 1 が { e } であるクリーネ代数を形成する。任意の小さなカテゴリに対して、同様の構成を実行できる。
体上の単位代数の線型部分空間はクリーネ代数を形成します。線型部分空間VとW が与えられたとき、V + W を2 つの部分空間の和、 0 を自明な部分空間 {0} と定義します。V · W = span {v · w | v ∈ V, w ∈ W} を、それぞれVとWからのベクトルの積の線型範囲と定義します。1 = span {I} を、代数の単位の範囲と定義します。Vの閉包は、 Vのすべてのべき乗の直和です。
Mが集合であり、A がM上のすべての二項関係の集合であるとします。 + を和集合、 · を合成集合、* を反射推移閉包とすると、クリーネ代数が得られます。
および の演算を含むすべてのブール代数は、+ に対して を、· に対して を使用し、すべてのaに対してa * = 1を設定すると、クリーネ代数になります。
まったく異なるクリーネ代数を使用して、クリーネのアルゴリズムによって重み付き有向グラフのすべての2つの頂点について最短経路の長さを計算するフロイド-ワーシャル アルゴリズムを実装することができます。これは、決定性有限オートマトンのすべての2つの状態について正規表現を計算するものです。拡張された実数直線を使用して、a + b をaとbの最小値とし、ab をaとbの通常の和(+∞ と −∞ の合計は +∞ と定義されます)とします。a *は、非負のaの場合は実数ゼロ、負のaの場合は −∞ と定義されます。これは、ゼロ要素 +∞ と 1 つの要素が実数ゼロであるクリーネ代数です。重み付き有向グラフは、各遷移に重みのラベルが付けられた決定性有限オートマトンと見なすことができます。任意の2つのグラフノード(オートマトン状態)について、クリーネのアルゴリズムから計算された正規表現は、この特定のクリーネ代数では、ノード間の最短経路長に評価されます。[4]
プロパティ
ゼロは最小の要素です: A内のすべてのaに対して0 ≤ aです。
和a + b はaとbの最小の上限です。つまり、 a ≤ a + bかつb ≤ a + bであり、x がa ≤ xかつb ≤ x を満たすAの要素である場合、a + b ≤ xです。同様に、a 1 + ... + a n は要素a 1、 ...、a nの最小の上限です。
乗算と加算は単調である。a ≤ bならば、
- a + x ≤ b + x、
- ax ≤ bxであり、
- xa≤xbである。
A内のすべてのxについて。
スターオペレーションに関しては、
- 0 * = 1 かつ 1 * = 1、
- a ≤ b はa * ≤ b *を意味する(単調性)、
- 任意の自然数nに対してa n ≤ a *であり、a n はaのn倍として定義される。
- ( a * )( a * ) = a *、
- ( a * ) * = a *、
- 1 + a ( a * ) = a * = 1 + ( a * ) a、
- ax = xb は( a * ) x = x ( b * ) を意味します。
- (( ab ) * ) a = a (( ba ) * )、
- ( a + b ) * = a * ( b ( a * )) *であり、
- pq = 1 = qpはq ( a * ) p = ( qap ) *を意味します。[5]
Aがクリーネ代数でnが自然数の場合、 Aに要素を持つすべてのn行n列の行列からなる集合 M n ( A ) を考えることができます。行列の加算と乗算の通常の概念を使用して、 M n ( A ) がクリーネ代数になる ように一意の*演算を定義できます。
歴史
クリーネは正規表現を導入し、その代数法則のいくつかを与えた。[6] [7] 彼はクリーネ代数を定義しなかったが、正規表現の同値性の決定手順を求めた。[8]レドコは、等式公理の有限集合では正規言語の代数を特徴づけることができない ことを証明した。 [9] サロマはこの代数の完全な公理化を与えたが、問題のある推論規則に依存していた。[10] 正規表現間のすべての等式の導出を可能にする公理の完全な集合を提供する問題は、ジョン・ホートン・コンウェイによって正規代数の名の下で集中的に研究されたが、[11]彼の扱いの大部分は無限であった。1981年、コーゼンは正規言語の代数のための完全な無限等式演繹システムを与えた。[12] 1994年に彼は上記の有限公理系を与えた。これは無条件等式と条件付き等式(a ≤ bをa + b = bの略記とみなす)を使用し、正規言語の代数に対して等式的に完全である。つまり、2つの正規表現aとbは、上記の公理からa = bが従う場合にのみ同じ言語を表す。[13]
一般化(または他の構造との関係)
クリーネ代数は、閉半環の特殊なケースであり、準正則半環またはレーマン半環とも呼ばれ、すべての要素が少なくとも1つの準逆方程式a * = aa * + 1 = a * a + 1を満たす半環です。この準逆は必ずしも一意ではありません。[14] [15]クリーネ代数では、a * は不動点方程式X = aX + 1およびX = Xa + 1の最小解です。[15]
閉じた半環とクリーネ代数は、最短経路問題の一般化である代数的経路問題に現れる。[15]
参照
参考文献
- ^ Marc Pouly、Jürg Kohlas (2011)。Generic Inference: A Unifying Theory for Automated Reasoning。John Wiley & Sons。p. 246。ISBN 978-1-118-01086-0。
- ^ 概要については、Kozen, Dexter (1990)「クリーネ代数と閉半環について」(PDF)を参照してください。Rovan, Branislav (ed.) 「コンピュータサイエンスの数学的基礎」、Proc. 15th Symp.、MFCS '90、Banská Bystrica/チェコ語。1990。Lecture Notes Computer Science。Vol. 452。Springer -Verlag。pp . 26–47。Zbl 0732.03047 。
- ^ コーゼン(1990)、第2.1節、3ページ
- ^ グロス、ジョナサン L.、イエレン、ジェイ (2003)、グラフ理論ハンドブック、離散数学とその応用、CRC プレス、p. 65、ISBN 9780203490204。
- ^ Kozen (1990)、section.2.1.2、p.5
- ^ SC Kleene (1951 年 12 月)。神経網と有限オートマトンにおけるイベントの表現(PDF) (技術レポート)。米国空軍 / RAND コーポレーション。p. 98。RM-704。ここ: セクション7.2、p.52
- ^ Kleene, Stephen C. (1956). 「神経網と有限オートマトンにおけるイベントの表現」(PDF) .オートマトン研究、数学研究年報。34 .プリンストン大学出版局。ここ: セクション7.2、p.26-27
- ^ クリーネ(1956)、35ページ
- ^ VN レッドコ (1964)。 「規則的な出来事の代数のための関係の定義について」(PDF)。ウクライナスキー・マテマチェスキー・ジュルナル。16 (1): 120-126。(ロシア語)
- ^ Arto Salomaa (1966 年 1 月). 「正規イベントの代数のための 2 つの完全な公理系」(PDF) . Journal of the ACM . 13 (1): 158–169. doi :10.1145/321312.321326. S2CID 8445404.
- ^ Conway, JH (1971).正規代数と有限マシン. ロンドン: Chapman and Hall. ISBN 0-412-10620-5.ZBL 0231.94041 . 第4章
- ^ Dexter Kozen (1981)。「帰納法と*-連続性について」(PDF)。Dexter Kozen (編)。Proc . Workshop Logics of Programs。Lect . Notes in Comput. Sci. Vol. 131。Springer。pp. 167–176。
- ^ Dexter Kozen (1994 年 5 月). 「クリーネ代数と正規事象代数の完全性定理」(PDF) .情報と計算. 110 (2): 366–390. doi :10.1006/inco.1994.1037.— 以前のバージョンは次のように出版されています: Dexter Kozen (1990 年 5 月)。クリーネ代数と正規イベント代数の完全性定理 (技術レポート)。コーネル大学。p. 27。TR90-1123。
- ^ Jonathan S. Golan (2003年6月30日). 半環とその上のアフィン方程式. Springer Science & Business Media. pp. 157–159. ISBN 978-1-4020-1358-4。
- ^ abc Marc Pouly; Jürg Kohlas (2011). Generic Inference: A Unifying Theory for Automated Reasoning . John Wiley & Sons. pp. 232 and 248. ISBN 978-1-118-01086-0。
さらに読む
- コーゼン、デクスター。 「CS786 04年春 クリーン代数入門」。
- ピーター・ヘフナー (2009)。ハイブリッドシステムのための代数計算。BoD – オンデマンドブックス。pp. 10–13。ISBN 978-3-8391-2510-6。この本の序文では、上記の記事では説明されていない、過去 20 年間のクリーネ代数の分野での進歩について概説しています。
