
프로그래밍 언어론
Automata Theory오토마타 이론
오토마타 이론(Automata Theory)은 추상 계산 기계의 수학적 모델을 연구하는 이론 컴퓨터 과학의 핵심 분야다. 계산 가능성과 형식 언어의 기초를 이룬다.
오토마타 계층구조
| 오토마타 | 메모리 | 인식 언어 | 예시 |
|---|---|---|---|
| 유한 오토마타(FA) | 상태만 | 정규 언어 | 어휘 분석기 |
| 푸시다운 오토마타(PDA) | 스택 | 문맥자유 언어 | 파서 |
| 선형 한정 오토마타(LBA) | 테이프(입력 크기) | 문맥의존 언어 | - |
| 튜링 기계(TM) | 무한 테이프 | 귀납적 열거 언어 | 범용 컴퓨터 |
결정론적 유한 오토마타(DFA)
DFA는 5-tuple M = (Q, Σ, δ, q₀, F)로 정의된다.
비결정론적 유한 오토마타(NFA)
NFA는 동일 입력에 여러 전이가 가능하며, ε-전이(입력 없이 전이)를 허용한다. DFA와 인식 능력은 동일하지만 표현이 더 간결하다.
푸시다운 오토마타(PDA)
스택을 추가해 문맥자유 언어를 인식한다.
튜링 기계
가장 강력한 계산 모델로, 무한 테이프 위에서 읽기/쓰기/이동이 가능하다. 처치-튜링 명제에 따르면 직관적으로 계산 가능한 모든 함수는 튜링 기계로 계산 가능하다.
관련 개념
- •형식 언어
- •P vs NP 문제
- •복잡도 클래스
- •파서 컴비네이터