단항 상황에 맞는 언어가 규칙적인지 결정


18

그 질문은 잘 알려진 결과입니다

문맥없는 문법은 정규 언어를 생성합니까?

결정할 수 없습니다. 그러나 단항 알파벳으로 결정할 수 있습니다.이 경우 문맥이없는 언어와 일반 언어의 클래스가 일치하기 때문입니다.

내 질문은 단항 상황에 맞는 언어 에서 어떤 일이 발생하는지 아는 것 입니다.

단항 알파벳에서 주어진 상황에 맞는 문법이 정규 언어를 생성하는지 여부를 알 수 있습니까?

대답이 긍정적이면 복잡성에 대한 평가를 환영합니다.

답변:


9

아아, 당신의 문제는 결정할 수 없습니다. 내가 우연히 발견 한 접근법 (과도하게 처리 될 수 있으므로보다 편리한 접근 방식을 가진 사람은 단계적으로 올라 가야합니다!)은 먼저 대각선 인수를 사용하여 일관 되지 않은 단항 CSL 가 있음을 보여줍니다 (긍정적 결과와 대조적 임) ) 단항의 CFL 들면 다음 TM 부여하여 기계 튜링위한 정지 문제로부터 감소 CSG 구성, 시뮬레이트 해석 스트링보다 작은 테이프의 길이 인식 경우 그 경계를 넘고없이 정지하고 그렇지 않으면 구문 분석에 실패하여 모든 성공적으로 구문 분석합니다.X M G M w X M G w X엑스미디엄미디엄엑스미디엄w X충분히 긴 iff 정지 ( 가 유한하게 많은 문자열에서만 와 다르 므로 규칙적이지 않음), 그렇지 않으면 는 빈 언어 (명확하게 규칙적 임)를 인식합니다.M L ( G ) X G미디엄( G )엑스

이 접근법의 핵심은 CSG가 구문 구조와 같은 문법적인 문제에만 관심이있는 것이 아니라는 사실입니다. 실제로 CSG 도출 시퀀스는 임의의 비결정론 적 공간 제한 계산을 수행 할 수 있습니다 (실제로 P S P A C EPSPACE-완전한 CSL)) 구문 분석 문자열에 맞추기 전에 이는 CSG와 단조 법 문법 (단항 알파벳으로 제한 될 때 계속 작동 함) 간의 표준 변환과 간단한 단조 생성법을 사용하여 계산 기록의 단계를 나타내는 파생 문자열에서 튜링 기계 전환을 시뮬레이션하는 데 가장 쉽게 관찰됩니다. 이 답변을 통해 CSG가 주어진 계산을 시뮬레이션해야 할 때 독자가 대부분의 세부 사항을 직감 할 수 있다고 가정합니다. (나는 asker가이 모든 것에 익숙하다고 가정하지만, 완전성을 위해 그것을 극복하고있다. 그럼에도 불구하고, 의견에 대한 설명을 자유롭게 요청하십시오.)


첫째, 비정규 단항 CSG가 필요합니다. ( 편집 : 이것은 과잉이었다-비정규 단항 CSL은 가장 기본적인 비정규를 나타내는 모든 언어의 펌핑 렘마를 통해 쉽게 전시 될 수있다. 예를 들어 주석을 참고하라. 핵탄두를 칼 싸움에 가져 오는 것과 같았습니다.

D 1 , D 2 ,을 보자 . . . 알파벳 DFAS 위에 열거 될 { 1 } 의 상태 수 있도록, D는 의 증가 . 우리는 CSG 설명 G X를 문자열 구문 분석하는 동안 그 동작의 측면에서 하나 N을{ 1 } * :D1,D2,...{1}DiiGX1n{1}

  1. 우리는 "테이프"라고 생각하는 n 개의 "공백"비 터미널 문자열을 비 결정적으로 생성합니다 . 빈 비 터미널 중 하나는 별도의 "빈 + 읽기 / 쓰기 헤드 + 시작 상태"비 터미널이어야합니다. 구문 분석 문자열이 1 n 이 아닌 경우이 파생은 실패하게됩니다. 우리는 유일하게 가능한 도출에 의해 시뮬레이션 된 결정 론적 계산의 관점에서 나머지 프로세스를 설명합니다.n1n
  2. 테이프에 D i 인코딩과 그 뒤에 숫자 i 를 2 진수로 인쇄합니다. 여기서 i = n - cc 가 선택되어 테이프에 필요한 공간을 항상 확보 할 수 있도록 충분한 공간이 확보됩니다. (이 공간은 모두 인코딩하는데 요구 때문에 가능한 D에게 I를 하고 에서 대수적으로 증가 I ).Diii=nccDii나는
  3. 평가 D I를 입력에 1 I . 이것은 표현이 필요하지 않습니다 D는 의 테이프를 - 당신은 당신의 전환에 따라 변경 한 상태로 저장할 수 있습니다 D 당신이 감소로 난을 .Di1iDiDii
  4. 경우 D는 거부 난을 생성 비 단자 전체 테이프 덮어 1 . 그렇지 않으면 실패합니다.Di 1i1

우리는 걸릴 X = L ( G X를 ) . 분명히 X L ( D I ) 임의의 용 제가 이후 1 I + CX 1 I + CL ( D I ) .X=L(GX)XL(Di)i1i+cX1i+cL(Di)


다음 단계는 정지 문제에서 asker의 문제로의 축소를 설계하는 것입니다. (위의 섹션을 건너 뛴 경우 X 는 CSG G X에 의해 생성 된 임의의 비정규 단항 CSL이됩니다 .)XGX

M을 임의의 TM 이라고하자 . 구문 분석 문자열 1 n 에서 다음과 같이 동작 하는 M 을 CSG G 로 변환합니다 .MMG1n

  1. n - 2 개의 빈 비 터미널을 생성 합니다. 가장 왼쪽은 별도의 빈 + 읽기-쓰기 헤드 비 터미널이며 각면에 "경계"비 터미널을 생성합니다. 다시 말하지만, 잘못된 수의 비 터미널을 생성하면 실패합니다.n2
  2. 경계가없는 비 터미널 사이의 공간에서 M 을 시뮬레이션 합니다. 경우 M은 지금까지 경계 상태 중 하나 위에 변화, 우리는 시뮬레이션을 종료하고 그 가정 M 결코가 정지합니다.MMM
  3. 경우 M의 가 정지,처럼 행동 G X . 시뮬레이션을 종료해야한다면 실패합니다.MGX

M 이 경계 내에서 영원히 실행될 경우 G 는 구문 분석 문자열을 생성 할 수 없으므로 실패합니다. 경우 M을 정지하고, 그 다음 공간이 어느 정도가 N 함유 충분 M 의 전체 계산은 따라서 G가 파싱 1 m를 할 때마다 m N + 21 mX , 따라서 X 의 상기 연합 L ( G ) 유한 언어, L ( G )미디엄미디엄미디엄1미디엄m n + 21미디엄X엑스( G )( G )규칙적이지 않습니다. 반면에 M이 멈추지 않으면 L ( G ) = 은 분명히 규칙적입니다.미디엄L(G)=

L ( G ) 이 규칙적 인지 여부를 결정하는 알고리즘은 M 이 빈 테이프에서 정지 하는지 여부를 결정하는데 , 이는 결정 불가능하다. 그것은 asker의 문제가 결정 불가능하다는 것을 따릅니다.L(G)M


2
답의 첫 번째 부분에서 { a n 2n 0 }{ a pp  는 소수 } 는 단항 상황에 맞는 비정규 언어의 예입니다. {an2n0}{app is prime}
J.-E.

허, 과장된 일로, 아마도 대각선에 대한 논쟁이 지나치게 과잉 일 것이라는 것이 아마 나에게 일어 났을 것이다. 답변에 메모를 편집 할 것 같습니다. 그럼에도 불구하고 두 번째 부분이 도움이 되었기를 바랍니다.
gdmclellan

@ J.-E.Pin : 그것에 대해 너무 많이 생각하지 않았습니다. { a pp  is prime } ? {app is prime}
Marzio De Biasi

@ marzio-de-biasi 나는 스스로를 확인하지는 않았지만이 대답에
J.-E.

@MarzioDeBiasi 매우 쉽습니다. 언어가 상황에 맞는지 여부를 결정할 때 일반적인 프로세스는 다음과 같습니다. 1 비 결정적으로 구문 분석 문자열을 추측합니다. 2. 구문 분석 문자열이 일부 술어를 만족하는지 여부를 판별하기 위해 일부 공간 제한 계산을 수행합니다. 3. 상기 술어가 만족되는 것으로 밝혀지면 상기 문자열을 생성하는 단계. 공간은 약간의 문제가 될 수 있습니다 (공간 제한은 구문 구분 문자열의 길이에 의해 주어집니다. 상황에 맞는 프로덕션을 사용하여 파생 문자열을 수축 할 수 없기 때문에). 단항의 경우 작업 할 지수 공간이 있습니다. .
gdmclellan 2016 년

6

이것은 본질적으로 위와 같은 대답이지만 "보다 편리한"답변을 찾고 있기 때문에 이것을 언급하고 있습니다. (이것은 여기의 첫 번째 게시물이므로 사소한 내용을 게시하는 경우 저를 용서하십시오!)

단항 상황에 맞는 언어의 경우 공허함을 결정할 수 없습니다. 상황에 맞지만 비정규 언어 N a ∗를 수정하십시오 . 위한 LBA 주어 L * 번 쉽게하는 LBA 만들 수 L ' = { N을 | NN  및  m N : mL } . 그러면 L 이 비어있는 경우에만 L ' 이 명확 합니다.NaLaL={ananN and mn:amL}LL

업데이트 : 물론 동일한 논쟁은 결정 론적 로그 공간을 결정할 수 없다는 것을 보여줍니다.


"비이성적 인 상황에 맞는 언어에 대해서는 공허함을 결정할 수 없습니다": 잘 알려진 사실입니까? 당신은 참조가 있습니까?
J.-E.

1
정점에 민감한 언어 L Σ ∗가 주어지면 모든 문자를 a에 매핑 하는 형태소 h : Σ { a } 를 사용 하십시오 . 그런 다음 시간 ( L은 ) 비어있는 경우에만, L은 비어 있습니다. 결정 론적 로그 스페이스의 경우 TM T가 주어지면 det를 구성 할 수 있습니다. 모두의 세트에 대한 LOGSPACE의 TM 2 N 되도록 T는 길이를 갖고 정지 계산 N을 . LΣh:Σ{a}ah(L)L
Georg Zetzsche 2016 년
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.