문맥 의존 언어

Context-sensitive language

형식 언어 이론에서, 문맥 의존 언어(context-sensitive language)는 문맥 의존 문법에 의해 정의될 수 있는 언어이다.문맥 의존은 촘스키 계층에서 4가지 유형의 문법 중 하나입니다.

계산 속성

계산적으로, 상황에 민감한 언어는 선형 유계 비결정론적 튜링 기계와 동등하며, 선형 유계 오토마톤이라고도 불린다.이는 비결정론적 튜링 기계로 있는 테이프입니다.서 n n 입력 이고 k 기계와 관련된 상수입니다.이는 그러한 기계에 의해 결정될 수 있는 모든 공식 언어는 상황에 맞는 언어이며, 상황에 맞는 모든 언어는 그러한 기계에 의해 결정될 수 있다는 것을 의미합니다.

이 언어 집합은 비결정론적 튜링 [1]기계에서 선형 공간을 사용하여 받아들일 수 있기 때문에 NLINSPACE 또는 NSPACE(O(n)로도 알려져 있습니다.LINSPACE(또는 DSPACE(O(n)) 클래스결정론적 튜링 기계를 사용하는 것을 제외하고 동일하게 정의됩니다.분명히 LINSPACE는 NLINSPACE의 하위 집합이지만 LINSPACE=[2]NLINSPACE인지 수 없습니다.

문맥에 민감하지만 문맥에 구애받지 않는 가장 간단한 언어 중 는 L { n : n 1 { L = \ { { } b^ { n } { n : n \ 1 \} : 기호 "a , n"의 n으로 이루어진 모든 문자열의 언어이다.바흐어라고 [3]불리는 이 언어의 슈퍼셋은 "a", "b", "c" (또는 다른 세 가지 기호 집합)가 동등하게 자주 발생하는 모든 문자열 집합으로 정의되며 문맥에 [4][5]민감합니다.

L은 L을 받아들이는 선형 유계 오토마톤을 구성함으로써 컨텍스트에 민감한 언어임을 나타낼 수 있다.언어는 각 언어 클래스에 대한 각각의 펌핑 레마L에 적용함으로써 정규 언어도 컨텍스트 프리 언어도 아닌 으로 쉽게 나타낼 수 있습니다.

마찬가지로:

C { b c d : m1 , 1 1} { L _ { } = \ { { } { } c^ { } { n ^ { n } : m \1, \ 1\ } 은 문법을 시작하는 문맥에 민감한 또 다른 언어입니다. a })을 C CCB\ BC 새로운 시작 기호 및 표준 구문당(syntaxic)과 같은 치환 생성으로 보충합니다.

M L { m : , n 1 { }=\{n1\}}은 문맥에 민감한 언어입니다(이 평균 언어의 "3")S R SR) b c c c (\R\ bRc bc 텍스트가 없는 언어입니다.제품의 가환성 때문에 U 3displaystyle 가장 직관적인 문법이 모호합니다. 문제는 L U { n : < < n { style L { } = \ { ^ { } ^ { n } c ^ { c^ { n } { = \ { a ^ { m }}this . this this this this this this this of of of of of of of of of of this { m 。이 LMUL1){를 mn:m>1, n1}{\displaystyle L_{MUL1}=\{a^{mn}:m>, 1,n>, 1\}}에 이{를 m2:m1}{\displaystyle L_{m^{2}}=\{a^{{2m^}m>, Lm3){를 m3:m1}{\displaystyle L_{m^{3}}=\{a^{m^{3}},, Lm2)}:;1\}}:m&gt에서가 전문화될 수 있다.;1\}}등

R { : : w σ σσdisplay display} { = \ { w} : w \ \ { * } \ } a- ---------- a a a a a a a a a a a a a l l l a a l l l l l l 。하는 문맥 의존 문법은 L a e {w : {\} { { Square } = \ { * \ \ Sigma 3 : } , b e {∈ ∈ ∈ ∈ ∈ ∈∈ ∈ izationizationizationizationizationizationizationizationizationization izationizationizationizationization ∈ izationizationizationizationization ∈izationization ∈ ∈ ∈ {izationizationizationizationization

P { n : 1} { } = \ { { ^ { } : n \ 1\ } 은 컨텍스트에 민감한 [6]언어입니다.

R 2 { : w prime}({ {PRIMES2 w {{ prime}})는 컨텍스트에 민감한 언어입니다(이 언어의 이름에 "2"는 이진 알파벳을 의미합니다).이는 Hartmanis에 의해 2진수 알파벳을 통해 일반 및 문맥이 없는 언어에 펌핑 레마를 사용한 후 I [7]를 수용하는 선형 경계 멀티테이프 오토마톤을 스케치함으로써 증명되었다.

P M 1 { : prime { } =\{a prime 문맥에 민감한 언어입니다(이 언어의 이름에 "1"은 단수 알파벳을 의미합니다).이것은 A에 의해 인정되었습니다.Salomaa에서 Matti Soytola까지 단일 알파벳에[8] 대한 선형 경계 오토마톤(213-214페이지, 연습 6.8)과 단일 알파벳에 대한 문맥 민감 문법을 통해 Marti Penttonen까지(참조: A의 공식 언어.Salomaa, 14페이지, 예 2.5).

문맥에 구애받지 않는 재귀 언어의 예로는 EXPSPACE-hard 문제, 예를 들어 지수화를 수반하는 동등한 정규 표현 쌍의 집합인 재귀 언어를 들 수 있습니다.

상황에 맞는 언어의 속성

  • 문맥에 민감한 두 언어의 결합, 교차, 연결은 문맥에 민감하며 문맥에 민감한 언어의 클린 플러스는 문맥에 [9]민감합니다.
  • 문맥에 민감한 언어의 보완은 그 자체로[10] 문맥에 민감한 결과이며, 이머만-슐렙세니 정리라고 알려져 있습니다.
  • 임의의 문맥 의존 문법 또는 임의의 결정론적 문맥 의존 문법에 의해 정의된 언어의 문자열 멤버십은 PSPACE-완전한 문제입니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ 를 클릭합니다Rothe, Jörg (2005), Complexity theory and cryptology, Texts in Theoretical Computer Science. An EATCS Series, Berlin: Springer-Verlag, p. 77, ISBN 978-3-540-22147-0, MR 2164257.
  2. ^ 를 클릭합니다Odifreddi, P. G. (1999), Classical recursion theory. Vol. II, Studies in Logic and the Foundations of Mathematics, vol. 143, Amsterdam: North-Holland Publishing Co., p. 236, ISBN 978-0-444-50205-6, MR 1718169.
  3. ^ Pullum, Geoffrey K. (1983). Context-freeness and the computer processing of human languages. Proc. 21st Annual Meeting of the ACL.
  4. ^ 바흐, E. (1981)"일반화된 범주형 문법에 연속적인 구성 요소" 2014-01-21 웨이백 머신에 보관.NELS, vol. 11, 페이지 1~12.
  5. ^ Joshi, A.; Vijay-Shanker, K.; 및 Weir, D. (1991)"약간의 문맥에 민감한 문법 형식주의의 수렴"In: P., Shiber, S.M. 및 Wasow, T. (편집자)를 판매합니다.자연어 처리의 근본적인 문제케임브리지 MA: Bradford.
  6. ^ Hopcroft, John E의 예 9.5 (p.224)울먼, 제프리 D.(1979년).오토마타 이론, 언어 및 계산 소개애디슨 웨슬리
  7. ^ J. Hartmanis and H. Shank (Jul 1968). "On the Recognition of Primes by Automata" (PDF). Journal of the ACM. 15 (3): 382–389. doi:10.1145/321466.321470. hdl:1813/5864. S2CID 17998039.
  8. ^ 살로마아, 아르토(1969), 오토마타 이론, ISBN 978-08-013376-8, Pergamon, 276페이지.doi:10.1016/C2013-0-02221-9
  9. ^ John E. Hopcroft; Jeffrey D. Ullman (1979). Introduction to Automata Theory, Languages, and Computation. Addison-Wesley. ISBN 9780201029888.; 연습 9.10, 페이지 230.2000년판에서는 문맥에 민감한 언어에 관한 장은 생략되었다.
  10. ^ Immerman, Neil (1988). "Nondeterministic space is closed under complementation" (PDF). SIAM J. Comput. 17 (5): 935–938. CiteSeerX 10.1.1.54.5941. doi:10.1137/0217058.
  • Sipser, M.(1996), PWS출판사 계산이론개론