第2版 形式言語とオートマトン2012 ー第8日目ー 東京工科大学 コンピュータサイエンス学部 亀田弘之 今日の内容 1. 練習・練習また練習 2. Pumping定理とその応用 3. Myhill-Nerodeの定理 2 第1部 練習 3 練習問題 • まず練習問題をやってみよう。 所要時間は10分。 提出は不要ですが、試験対策になるので、 各自自力で解いてみてください。 4 問題 最簡形DFAを求めよ。 5 解法手順 1. 状態遷移表を作ってみる。 2. 到達不能状態を除去する。 3. 状態遷移表を見て、決定性か非決定性かを 確認する。 4. (以下、省略) 6 第2部 理論編 8 ポンピングの補題 • 言語LはDFA M により受理されるとする。この ときある定整数nが存在して、z∊L, |z| ≧n なる zは、z=uvw, |uv| ≦n, |v|≧1 のように分解され 、かつ、uviw ∊ L となる。 (この補題は様々な証明等で役立つ。大学院 へ進みたい人はしっかり押さえましょう!) 9 ポンピングの補題適用例 • 次の言語が正規言語でないことを示せ。 L {a b | n 1} n n 10 注意事項 • ポンピングの補題は、言語Lが正規言語であ るための必要条件であり、必要十分条件では n m m ない。例えば、言語L’={ c a b }は、ポンピン グの補題を満たすが、正規言語ではない。 n i (c c)c (a b ) L i m m 11 MyHill-Nerodeの定理 • 次の3つの命題は同値である。 1. 言語 L * は正規言語である。 2. L は、指数が有限かつ右不変な * 上の 同値関係 R による同値類の和として表わされる。 3. 任意の z * に対して、 xz L yz L のとき x L y と定義すると、 *上の2項関係 L は指数が有限な同値関係である。 12 証明のための準備 • • • • 同値関係 * * 関数 (q, x ) ( (q, x), ) 同値類 同値関係の指数 13 関係 • 集合 X と Y の直積 X Y に対して、 その部分集合 R X Y を2項関係、 あるいは、単に関係という。 • ( x, y) R のとき、x と yは「 R の関係にある」と いい、 xRy と書く。 • R X X のとき、RはX上の関係と呼ぶ。 14 関係の例 • (板書します) 15 同値関係 • A上の関係Rが以下の条件を満たすとき、 関係Rのことを特に同値関係と呼ぶ。 1. xRx for any x∈A. 2. xRy yRx for any x, y ∈A. 3. xRy かつyRz ⇒ xRz for any x, y, z ∈A. 16 同値関係の例 • X=Z(整数全体の集合)とする。 このとき、x,y∊Zに対して、 x-y が5の倍数 xRy と書くことにすると、RはZ上の1つの同値関係 である。 • Zは同値関係Rにより、5つの類に分割される。 • 同値関係の指数とは、同値類の個数のことで ある。従って、今の場合Rの指数は5である。 17 同値関係Rが右不変 • xRyのとき、xzRyzが成り立つこと。 18 例 • xRy δ*(q0, x) = δ*(q0, y) のとき、 xRy ⇒ δ*(q0, x) = δ*(q0, y) ⇒ δ*(δ*(q0, x),z) = δ*(δ*(q0, y),z) ⇒ δ*(q0, xz) = δ*(q0, yz) ⇒ xzRyz for z∊Σ* 関係Rは右不変 19 問題 1. 2. 3. 4. 関係の例を2つ以上挙げよ。 同値関係の例を2つ以上挙げよ。 modulo n の同値類は全部で何個あるか? 内部状態がm個のDFAは、入力文字列を幾 つの同値類に分割するか? 20
© Copyright 2024 ExpyDoc