正規表現の制限によってどの言語セットが生成されるのか疑問に思いました。すべての制限に、と連結の各要素に対する定数記号があると仮定します。次に、補集合/否定、変更/和集合、およびクリーネ星の有無によって、8つのクラスを形成できます。(はい、「通常の」正規表現にはC演算子がありませんが、ここでは便利です。)
交代を許可する表現と、補完ありまたはなしでのクリーネスター(友達の間の少しの指数関数的な爆発は何ですか?)は、通常の言語を生成します。Kleeneスターではなく代替と補完を許可する式は、スターフリー言語を生成します。代替を許さないが補完を許さない表現またはクリーネ星は有限言語を生成します。
しかし、言語の興味深いクラスを交互に生成することはできますか?3つの演算子がなければ、生成できるのは1つの単語だけです。ここでは、補数演算子はあまり役に立ちません。
Kleene starだけではクラスはやや興味深いです...それらが通常の言語よりも速く認識できるかどうかは明確ではありません。(これらについて重要なことは何ですか?)
Kleeneスターと補完物の両方で...何か面白いことはありますか?このクラスに名前はありますか?
この質問は、math.seの正規表現の質問に触発されました。