Regular Languages

youngwiki
Pinkgo (토론 | 기여)님의 2025년 9월 16일 (화) 01:24 판 (새 문서: 분류:계산 이론 개론 분류:컴퓨터 공학 상위 문서: 계산 이론 개론 ==개요== 해당 문서에서는 유한 오토마타(FA)를 통해 검증 가능한 언어를 의미하는 정규 언어에 대해 다룬다. ==Definition of Regular Languages== 어떤 언어 R이 정규 언어(regular language) 라고 불리려면, 어떤 Finite...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)


상위 문서: 계산 이론 개론

개요

해당 문서에서는 유한 오토마타(FA)를 통해 검증 가능한 언어를 의미하는 정규 언어에 대해 다룬다.

Definition of Regular Languages

어떤 언어 R이 정규 언어(regular language) 라고 불리려면, 어떤 유한 오토마타(FA) M이 R을 인식해야 한다. 이는 아래와 같다:

M.M=FAMrecognizesR

이때 이를 증명하기 위해서는 아래와 같은 절차를 걸친다:

  1. 특정한 FA M=(Q,Σ,δ,q0,F)를 정의한다.
  2. M이 FA임을 보인다.(이는 M이 FA의 정의에 맞게 잘 구성되었는지를 확인하는 방식이다.)
  3. M이 언어 R을 인식(recognize)하는 것을 보인다. 즉,
    • a) 모든 문자열 wΣ*에 대해, wRMw를 수용(accept)
    • b) 모든 문자열 wΣ*에 대해, M이 w를 수용 wR
    • (a), (b)를 모두 만족해야 정확히 L(M)=R[1]임을 보일 수 있다.
Figure 1. Proof of 3(a)

Figure 1, 2는 각각 3(a), 3(b)를 증명하는 과정이다. 먼저, figure 1은 아래와 같은 과정을 설명하는 fitch-stlye 증명이다:

  1. 목표) wΣ*.(wRMacceptsw)
  2. wΣ*이고, wR이라고 가정.
    • 상태열 r0,r1,,rn을 정의:
      r0=q0
      ri+1=δ(ri,wi+1),i=0,1,,n1
    • 귀납법을 이용해 rnF임을 입증
  3. Figure 2. Proof of 3(b)
    따라서 M이 w를 수용한다.

Figure 2는 아래와 같은 과정을 설명하는 fitch-stlye 증명이다:

  1. 목표) wΣ*.(MacceptswwR)
  2. wΣ*와, Macceptsw를 가정.
    • 상태열 r0,r1,,rn을 얻는(obtain)다. 이때 상태열 r는 아래와 같다:
      r0=q0
      ri+1=δ(ri,wi+1),i=0,1,,n1
    • 이로부터 rnF임을 입증
  3. (귀납법을 통해) rnF일 때, 곧 wR임을 보인다.

귀납법을 이용해 rnF임을 입증

Example Problem

각주

  1. L(M)은 M이 인식하는 문자열의 집합을 의미한다.