문맥인식 문법 (Context Sensitive Grammar)
Context Free Grammar 에서 '배'라는 단어는 언제나 똑같이 치환되며 표현력이 중간 수준 (대부분의 프로그래밍 언어) ..... Context Sensitive Grammar 에서 '배'라는 단어는 앞뒤 문맥에 따라 '먹는 배(과일)', '타는 배(선박)', '사람의 배(신체)'로 다르게 치환되며 표현력이 매우 높음 (인간의 자연어에 더 가까움)
제한적인 문맥자유 문법(CFG)과 일반적인 무제한 문법(Type-0) 사이에 위치하는 형식 문법으로, 비단말 기호가 치환될 때 좌우에 인접한 문맥(Context)의 조건을 엄격히 반영하는 고도의 생성 체계입니다. 튜링 기계의 계산 공간을 입력 길이에 비례하도록 제한한 선형 한계 오토마타(Linear Bounded Automata, LBA)에 의해 정확히 인식됩니다.
1. Context Sensitive Grammar 의 수학적 정의와 규칙
형식 언어학에서 문맥-인식 문법(Context Sensitive Grammar, CSG)은 4개의 요소로 구성된 순서쌍(4-tuple)으로 정의됩니다.
- V (또는 VN): 비단말 기호들의 유한 집합 (Non-terminal symbols, 예: S, A, B, C)
- T (또는 Σ): 단말 기호들의 유한 집합 (Terminal symbols, 어휘 토큰, 예: a, b, c). 단, V ∩ T = ∅
- S ∈ V: 생성의 출발점이 되는 시작 기호 (Start symbol)
- P: 문자열 변환을 관장하는 생성규칙(Production Rules)의 유한 집합
비축소 / 단조 문법 (Non-contracting Form)
모든 생성규칙 x → y 에 대하여:
규칙 해설: 좌변 문자열의 길이 |x|가 우변 문자열의 길이 |y|보다 작거나 같아야 합니다. 즉, 문자열이 치환될 때 길이가 절대로 줄어들지 않습니다. 빈 문자열(ε)로 소멸하는 규칙(x → ε)이 금지되므로, 탐색 과정에서 무한한 소멸 루프가 방지되어 유한한 테이프 공간 내에서 검증이 가능해집니다.
좌우 문맥 제약형 (Strict Context Form)
모든 생성규칙이 다음과 같은 엄격한 문맥 조건으로 구성됩니다:
규칙 해설: 비단말 기호 A는 혼자서 임의로 바뀔 수 없습니다. 반드시 왼쪽에 문맥 α가 존재하고, 오른쪽에 문맥 β가 함께 인접해 있을 때에만 γ로 전이될 수 있습니다 (단, γ ≠ ε). 바로 이 좌우 문맥의 엄격한 검사 때문에 "문맥-인식(Context-Sensitive)"이라는 이름이 부여되었습니다.
💡 정리: 비축소 문법(Non-contracting Grammar)과 표준 문맥인식 문법(Canonical CSG)은 생성할 수 있는 언어의 집합이 수학적으로 완전히 동일합니다(Weak Generative Equivalence). 따라서 두 정의는 형식 언어학에서 상호 교환적으로 사용됩니다.
2. 대표적인 문맥인식 언어 유도 예시: L = {aⁿbⁿcⁿ | n ≥ 1}
문맥자유 문법(CFG)의 푸시다운 오토마타(PDA)는 단 하나의 스택만 가지므로 두 개의 개수 일치(예: anbn)는 셀 수 있지만, 세 기호의 개수가 모두 일치해야 하는 언어 L = {anbncn | n ≥ 1}은 펌핑 보조정리(Pumping Lemma)에 의해 절대로 생성할 수 없습니다. 오직 문맥인식 문법(CSG)부터 이 언어를 완벽하게 생성할 수 있습니다.
【 L = {aⁿbⁿcⁿ} 생성을 위한 CSG 규칙 세트 P 】
【 n = 2 일 때, 문자열 "aabbcc" 유도 과정 (Derivation Steps) 】
이처럼 CB → BC와 같이 인접한 두 기호의 좌우 문맥을 서로 확인하여 자리를 바꾸는 규칙은 오직 좌변의 길이가 2 이상인 문맥인식 문법에서만 가능하며, 이를 통해 기호들의 카운트를 뒤섞이지 않고 정확히 맞춰낼 수 있습니다.
3. 문맥인식 문법 (CSG) vs 문맥자유 문법 (CFG) 알기 쉬운 비교
문맥자유 문법(CFG)과 문맥인식 문법(CSG)의 본질적인 차이는 "기호를 치환할 때 주변의 이웃(문맥)을 고려해야 하는가?"에 있습니다. 아래 비교표는 두 문법의 수학적, 계산적, 언어적 차이를 명확히 보여줍니다.
| 비교 항목 | 문맥자유 문법 (CFG, Type 2) | 문맥인식 문법 (CSG, Type 1) |
|---|---|---|
| 생성 규칙의 형태 |
A → γ (좌변은 오직 단 하나의 비단말 기호) |
αAβ → αγβ 또는 x → y (|x| ≤ |y|) (좌변에 좌우 이웃 문맥 α, β가 결합됨) |
| 문맥 의존성 |
문맥 완전 무관 (Context-Free) 주변에 어떤 단어가 오든 A는 독립적으로 치환됨 |
문맥 필수 반영 (Context-Sensitive) 좌우 특정 문맥이 일치해야만 비단말 기호 치환 가능 |
| 대응 오토마타 (기계 모델) |
푸시다운 오토마타 (PDA) (스택 1개를 가진 유한 상태 기계) |
선형 한계 오토마타 (LBA) (입력 문자열 길이에 비례한 테이프만 쓰는 튜링 기계) |
| 표현 가능 언어 | anbn, 회문(Palindrome), 균형 괄호쌍 (Dyck) | anbncn, 복사 언어 (ww), a2ⁿ |
| 파싱 시간 복잡도 (Parsing Time) |
다항 시간: O(n³) (CYK, Earley 알고리즘) 실용적 하위집합은 선형 시간 O(n) (LL, LR 파서) |
PSPACE-완전 (일반적으로 지수 시간 O(cⁿ)) 탐색 공간이 방대하여 실시간 결정적 파싱이 극히 어려움 |
| 컴퓨터 언어 및 자연어 예시 |
• 산술 연산 수식 (괄호 및 우선순위) • if-else 제어문 블록 구조 • HTML / XML 태그 중첩 구조 |
• 변수 선언과 사용의 일치 (타입 체킹) • 자연어의 단수/복수 수 일치, 시제 일치 • 스위스 독일어의 교차 의존 구조 (Cross-serial) |
정규 언어(LREG) ⊂ 문맥자유 언어(LCF) ⊂ 문맥인식 언어(LCS) ⊂ 회귀 언어 ⊂ 무제한(LRE)
결정론적 문맥자유(DCFL)와 일반 문맥자유(CFL)를 포괄하며 선형 한계 오토마타로 확장되는 문맥인식 언어군
4. 선형 한계 오토마타 (Linear Bounded Automata, LBA)
튜링 기계(Turing Machine)는 양쪽으로 무한히 뻗어 있는 테이프를 자유롭게 읽고 쓸 수 있지만, 선형 한계 오토마타(LBA)는 테이프의 작업 공간이 입력 문자열의 길이 n에 정확히 비례하는 k·n 칸으로 엄격히 제한된 비결정론적 튜링 기계입니다.
- 쿠로다(S.-Y. Kuroda, 1964)의 정리: 어떤 언어가 문맥인식 언어(CSL)일 필요충분조건은 그 언어가 비결정론적 선형 한계 오토마타(NDLBA)에 의해 수락되는 것이다.
- 공간 복잡도 (Space Complexity): LBA가 소비하는 메모리는 O(n) 공간에 한정되므로, 문맥인식 언어의 결정 문제는 복잡도 클래스 NSPACE(O(n))에 정확히 대응됩니다.
- 이머만-셀렙체니 정리 (Immerman–Szelepcsényi Theorem, 1987): NSPACE(s(n))은 여집합(co-NSPACE)에 대해 닫혀 있으므로, 문맥인식 언어의 여집합 또한 반드시 문맥인식 언어입니다.
- 유명한 미해결 난제 (LBA Problem): "결정론적 LBA(DLBA)와 비결정론적 LBA(NDLBA)의 인식 능력은 동일한가? (즉, DSPACE(n) = NSPACE(n)인가?)"는 현재까지도 계산 이론의 대표적인 오픈 프라블럼 중 하나입니다.
5. 최신 AI 와 LLM 에서 Context Sensitive Grammar 의 의미와 한계
오늘날 GPT-4o, Claude 3.5 Sonnet, Gemini 1.5 Pro와 같은 트랜스포머 기반 대규모 언어모델(LLM)은 과거 촘스키 형식언어학이 상정했던 문법 체계를 완전히 새로운 방식으로 구현하고 있습니다. 기호 논리학의 Context Sensitive Grammar(CSG) 관점에서 현대 LLM을 재해석하면 놀라운 통찰과 함께 본질적인 한계가 드러납니다.
CSG가 최신 AI·LLM에 주는 핵심 의미 (Significance)
① 자연어의 본질적 문맥성(Contextuality)의 수학적 정당성
자연어는 "그는 그녀를 보았다"에서 주어와 동사의 수 일치, 대명사 상호참조(Coreference Resolution), 관용구 등 주변 단어의 문맥에 따라 의미와 형태가 결정되는 순수 CSG적 속성을 갖습니다. 트랜스포머의 Multi-Head Self-Attention은 모든 토큰 쌍(token pair) 간의 문맥적 관계를 어텐션 가중치 행렬로 상호참조함으로써, CSG의 좌우 문맥(αAβ) 제약을 연속적인 고차원 벡터 임베딩 공간에서 탁월하게 구현합니다.
② LLM의 '컨텍스트 윈도우(Context Window)'와 LBA의 대응
선형 한계 오토마타(LBA)가 입력 문자열 길이에 비례하는 한정된 테이프에서만 작동하듯, 현대 LLM 또한 고정된(혹은 확장된 128k, 1M, 2M) 컨텍스트 윈도우 내에서만 중간 활성화(Activation)와 KV 캐시 메모리를 소비합니다. 즉, 무한 메모리를 쓰는 이상적 튜링 기계와 달리, 실질적인 LLM 추론 과정은 현대적으로 구현된 거대한 고차원 선형 한계 시스템(LBA)으로 해석할 수 있습니다.
③ 프로그래밍 코드 생성과 타입 일치 (Type Checking)
프로그래밍 언어의 구문(Syntax)은 CFG로 검사할 수 있지만, "앞서 `int count = 0;`으로 선언된 변수는 나중에 정수형 연산으로만 쓰여야 한다"는 규칙은 CSG의 대표적 언어인 복사 언어 L = {ww}의 문제입니다. 최신 LLM은 수천 줄의 코드 문맥 속에서 함수 시그니처와 변수 선언부를 정확히 추적하여 정적 타입 일치성을 유지하는 놀라운 CSG 해결 역량을 발휘합니다.
④ 의미론적 중의성 해소 (Disambiguation)
동음이의어(예: '배' - 과일 vs 신체 vs 선박)는 단어 자체만으로는 판별이 불가능하며 주변 문맥에 의해서만 결정됩니다. CSG의 생성규칙처럼 LLM은 앞뒤 단어의 문맥 제약을 활용해 모호성을 완벽히 해소하고 문맥에 맞는 적절한 토큰을 연속적으로 생성합니다.
최신 AI·LLM이 직면한 본질적 한계 (Limitations)
① 계산 복잡도의 괴리: PSPACE-완전 vs O(N²) 트랜스포머
엄밀한 기호적 CSG 파싱은 PSPACE-완전(지수 시간 소요)이라는 계산적 악몽을 갖습니다. 트랜스포머는 이를 엄밀한 기호 탐색이 아니라 소프트맥스 확률 근사(Approximation)와 O(N²) 주의집중으로 해결합니다. 따라서 수학적으로 완벽한 해를 보장하지 못하며, 복잡한 교차 의존성이나 깊은 재귀 문맥에서는 확률적 오차로 인해 논리 붕괴가 일어납니다.
② 엄격한 제약(Hard Constraint) 결여와 환각 (Hallucination)
전통적 CSG는 문맥 제약(αAβ)을 위반하는 문장을 단호히 거부(Reject)합니다. 반면 LLM은 확률적 자기회귀 생성기이므로, 이전 문맥에서 엄격히 선언된 제약(예: "모든 응답은 5단어 이하로", 변수명 정의 등)을 긴 대화 도중 망각하거나 규칙을 어기는 환각 현상을 구조적으로 배제할 수 없습니다.
③ 문맥 희석(Context Dilution) 및 주의 분산 현상
컨텍스트 윈도우가 100k, 1M 토큰으로 거대해질수록 소프트맥스 분모가 커지면서 어텐션 가중치가 얇게 퍼지는 '주의 분산(Needle-in-a-Haystack)' 문제가 발생합니다. 엄격한 CSG는 거리가 아무리 멀어도 핵심 토큰 간의 바인딩을 100% 유지하지만, LLM은 중간 문맥 노이즈에 의해 원거리 문맥 제약을 놓치기 쉽습니다.
④ 전산언어학의 대안: 약한 문맥의존 문법 (Mildly CSG)
CSG의 지수 시간 복잡도를 극복하기 위해 전산언어학은 트리 인접 문법(TAG)이나 조합 범주 문법(CCG)처럼 다항 시간 O(n⁶)에 파싱 가능한 '약한 문맥의존 문법(Mildly Context-Sensitive)'을 발전시켰습니다. 현대 LLM 연구에서도 어텐션의 과도한 연산 비용을 줄이고 언어학적 편향(Inductive Bias)을 보강하기 위해 이러한 중간 문법 체계의 접목이 활발히 연구되고 있습니다.
결론: LLM은 전통적 CSG가 안고 있던 "지수적 파싱 시간의 벽"을 고차원 확률적 어텐션 메커니즘으로 돌파하여 자연어의 문맥성을 유연하게 포착했지만, 역으로 CSG가 제공하던 "수학적으로 완전무결한 문맥 제약 보증"을 희생한 상태입니다. 향후 AI는 신경망의 유연한 어텐션과 CSG/LBA의 엄밀한 기호 제약(Formal Verification)을 결합한 하이브리드 아키텍처로 진화할 것입니다.
6. Context Sensitive Grammar 및 LBA 학술 영상 강의
계산 이론 및 형식 언어학에서 문맥인식 문법(Type-1)과 선형 한계 오토마타(LBA)를 쉽게 설명하는 대표적 강의 영상입니다.
Easy Theory: Context-Sensitive Grammar & Language
비축소 문법(Non-contracting Grammar)의 직관적 원리와 anbncn 언어를 생성하는 구체적인 예제 설명.
Noam Chomsky: 형식 언어 계층과 인간 언어 체계
촘스키가 직접 설명하는 인간 언어의 구조적 제약과 형식 문법(Type 0~3)의 창안 배경 및 인지과학적 함의.