クラスで私たちの教授は私たちに非規則性を証明するための3つの方法を示しました:
- Myhill–Nerodeの定理
- 通常言語用の補題のポンピング
- コルモゴロフの複雑さに基づく非規則性の証明
さて、最初の2つであるMyhill-Nerodeの定理とPumping補題はよく理解でき、最初の2つの方法の演習も行うことができました。しかし、私は3番目のものを理解しませんでした。3番目の方法の定義は次のとおりです。
してみましょうL ⊆ (ΣのB O O L)*は正規言語であること。ましょL X = { yは∈ (ΣのB O O L)* | X 、Y ∈ L }すべてのためのx ∈ (ΣのB O O L)*。定存在Cのすべてのためのように、X 、Y ∈ (ΣのBのoは
もしyが言語のn番目の単語であり、LのX。
この定理を使用して言語が正規でないことを証明する方法がわかりません。実際にはコンセプトがわかりません。以前は、オブジェクトの最短のコンピュータープログラムの長さを決定するために、コルモゴロフの複雑さを使用しました。この定理で非規則性を証明するにはどうすればよいですか?そして、その背後にある考えは何ですか?
どうもありがとう!