クリーネ代数
From Wikipedia, the free encyclopedia
クリーネ代数(クリーネだいすう、英: Kleene algebra)は、冪等半環に反復を表す単項演算 を付加した代数的構造であり、正規表現・正則言語・有限オートマトン・二項関係・プログラム意味論に現れる反復的現象を統一的に記述する。現代的定式化では、和 により誘導される自然半順序のもとで、星演算が特定の帰納法公理を満たす冪等半環として定義される。正則言語の代数はその標準的モデルであり、コーゼンの完全性定理によれば、抽象的クリーネ代数の等式理論は正規表現の意味論と一致する。[1][2]
この概念の起源はクリーネの正規事象の理論にあり、サロマーが正規表現の変形体系を公理化し、コンウェイが正則代数の観点から体系化したのち、コーゼンが抽象的クリーネ代数に対する有限公理系と完全性定理を与えた。以後、クリーネ代数は形式言語論のみならず、関係意味論、動的論理、プログラム検証、Kleene algebra with tests などの研究領域へ拡張された。[3][4][2][5]
定義
自然半順序
星演算と最小前不動点
クリーネ代数における星演算の重要な解釈の一つは、最小前不動点としての解釈である。任意の に対し、写像
を考えると、左帰納法公理は
を主張する。さらに から
が従うため、 自身が の前不動点である。したがって は、 の前不動点全体の中で最小のものになる。右側についても同様に、 は写像 の最小前不動点である。[2]
この見方は、星演算を単なる記号的反復ではなく、線形不等式
または
の最小解として理解するものであり、関係意味論やプログラム意味論に直結する。たとえば関係モデルでは、 は遷移関係 を有限回たどって初期集合 から到達可能な全状態の集合を表す。[2][5]
順序がさらに完備であり、積が適切な連続性を満たす場合には、
という表示が成り立つ。すなわち、最小前不動点は有限反復列
の上限として具体化される。一般のクリーネ代数ではこの上限表示は定義の一部ではないが、星連続クリーネ代数ではこれが成立する。[2][5]
基本性質
標準的モデル
正則言語
有限アルファベット に対し、正則言語全体の集合は、和を和集合、積を言語の連接、 を空言語、 を空語のみからなる言語、星を通常のクリーネ閉包として定めることでクリーネ代数をなす。これは最も基本的なモデルであり、クリーネの定理の意味論的基盤を与える。[1][2]
二項関係
集合 上の二項関係全体は、和を和集合、積を関係の合成、 を空関係、 を恒等関係、星を反射推移閉包として定めることでクリーネ代数になる。ここで は、0回以上の 遷移による到達可能性を表す。[2][4]
行列
任意のクリーネ代数 に対し、 上の正方行列全体は、成分ごとの和と通常の行列積により再びクリーネ代数をなす。これは有限オートマトンの遷移行列表示と直結し、完全性定理の証明でも中心的役割を果たす。[2][4]