NFA 보편성 조건


28

비 결정적 유한 오토마타 및 함수 . 또한 합니다.A=(Q,Σ,δ,q0,F)f(n)Σk=ikΣi

이제 다음 문장을 분석해 보자.

만약 후, .Σf(|Q|)L(A)L(A)=Σ

그것은 대한 것으로 쉽게 보여주는 것이다 이 오토마타가 개까지 길이가 모든 단어를 생성 따라서 경우에 해당하는 그때는 생성 .f(n)=2n+12|Q|+1Σ

그러나 가 다항식 이라면 여전히 유지 됩니까?f

그렇지 않다면 주어진 다항식 대한 NFA 의 구성은 다음과 같습니다. st ?ApΣp(|Q|)L(A)Σ


| \ Sigma | \ geq 2 의 경우 f(n)=2no(n) 에 해당 하는 현상금을 증명하거나 거부합니다 . 그리고 아무것도 없다면, 나는 그것을 얻을 수있는 최고의 구조로 줄 것이다. |Σ|2
Hsien-Chih Chang 張顯 之

답변:


22

성명을 유지 하려면 단항 알파벳으로도 f 가 기하 급수적으로 커져야합니다.

[편집 : 개정 2에서 분석이 약간 개선되었습니다.]

여기 증거 스케치가 있습니다. 문이 보유하고 있다고 가정하자와하자 f를 모든 NFA 대부분에와있는 기능 등의 수 n은 기껏해야 길이 모든 문자열을 받아 그 상태 F ( N ) 모든 문자열 무엇이든지 받아들입니다. 모든 C > 0 및 충분히 큰 n 에 대해 f ( n )> 2 C ⋅√ n 임을 증명합니다 .

소수 정리는 모든 것을 의미위한 C <LG 전자 충분히 큰 위해 K 적어도있다 C ⋅2 K / K [2 범위의 소수 K 2, K +1 ]. 우리는 c = 1을 취 합니다. 이러한 k 에 대해 N k = ⌈2 k / k let로하고 다음과 같이 NFA M k 를 정의하십시오 . p 1 ,…, p N k를 [2 k , 2 k +1 범위의 뚜렷한 소수라고 합시다.]. NFA M kS k = 1 + p 1 +… + p N k 상태를 갖는다. 이 외에, 초기 상태에서의 상태들로 분할되어 N의 k 개의 사이클 I 번째 사이클 길이 갖는 P I를 . 각주기에서 하나의 상태를 제외한 모든 상태가 허용되는 상태입니다. 초기 상태는 N k 나가는 에지를 가지며, 각각의 사이클은 각 사이클에서 거부 된 상태 직후의 상태로 간다. 마지막으로 초기 상태도 수락됩니다.

하자 P의 k는 제품이어야 P 1 ... P는 N의 K . M kP k 보다 길이가 작은 모든 스트링을 허용 하지만 길이 P k 의 스트링을 거부 한다는 것을 쉽게 알 수 있습니다 . 따라서 f ( S k ) ≥ P k 입니다.

참고 S의 K ≤ 1 + N K ⋅2 K +1 = O (2 2 K ) 그리고 P의 K ≥ (2 K ) N의 K ≥ 2 2 K . 나머지는 표준입니다.


최고의 값에 대한 당신의 추측은 무엇입니까 ? 말의 , 또는 그 사이 및 ? f ( n ) = 2 n + 1 2 n 2 c ff(n)=2n+12n2cn
Hsien-Chih Chang 張顯 之

@ Hsien-Chih : 나는 똑같은 것을 궁금해했고, 합리적인 추측이 없다. 첫째, f (n) ≤2 ^ n (+1이 필요하지 않음)을 보는 것은 사소한 일이며,이 상한에 비해 약간의 선형 개선이 예상되지만 상수 요소에 단단히 묶여 있는지 알 수 없습니다. (더보기)
Tsuyoshi Ito

(계속) 둘째, 하한에 관해서는, 내가 실수하지 않으면 위의 분석을 약간 수정하면 다음과 같은 하한이 나타납니다. 모든 상수 0 <c < 및 충분히 큰 n에 대해, 우리는 . 추가 개선이 가능하지만 NTM의 동일한 구성을 사용하는 경우 p> 1/2에 대해 2 ^ {n ^ p}와 같은 하한을 얻을 수 없습니다. PNT와 같은 소수 분포의 사용이 나쁜 예를 만드는 데 필수적인지 여부는 흥미로운 질문이라고 생각합니다. (더보기) f(n)>e c 1/2f(n)>ecnlnn
Tsuyoshi Ito

(계속) 그러나 관심이 있고 더 자세히 조사하려면 먼저 문헌을 찾는 것이 더 현명 할 것입니다. 이 답변이나 더 나은 것이 이미 문헌에 등장했다면 놀라지 않을 것입니다.
이토 쓰요시

5
@Tsuyoshi : Chrobak은 단항 언어에 대한 n- 상태 DFA가 대한 상태 NFA로 시뮬레이션 될 수 있음을 보여 줍니다. 따라서 언어가 단항이라면 구성이 빡빡합니다. [Chr86] 참조 : cs.ust.hk/mjg_lib/Library/Chro86.pdfm=O(enlogn)
Chang Hsien-Chih Chang 張顯 之

19

06/12/06 편집 :

좋아, 이것은 내가 얻을 수있는 가장 좋은 구조입니다. 어떤 아이디어가 더 좋은지 살펴보십시오.

정리. 각 대해 알파벳 에 대해 인 NFA 이 있으며 없는 가장 짧은 문자열 의 길이는 .( 5 n + 12 ) M Σ | Σ | = 5 L ( M ) ( 2 N - 1 ) ( N + 1 ) + 1n(5n+12)MΣ|Σ|=5L(M)(2n1)(n+1)+1

이것은 우리에게 입니다.f(n)=Ω(2n/5)

구조는 Shallit 's 의 구조와 거의 동일 하지만 먼저 정규식으로 언어를 표현하는 대신 NFA를 직접 생성한다는 점이 다릅니다. 방해

Σ={[00],[01],[10],[11],} .

각 에 대해 NFA 인식 언어 . 여기서 은 다음 순서입니다 ( 예 : ).Σ { s n } s nnΣ{sn}snn=3

s3=[00][00][01][00][01][10][11][11][01] .

NFA를 구성 할 수있는 아이디어는 5 가지 부분으로 구성됩니다.

  • 문자열이 시작하도록 하는 starter ;[00][00][01]
  • 문자열이 끝나도록 하는 종결 자 ;[11][11][01]
  • 카운터 둘 사이에 심볼의 수를 유지 '로 s의 ;n
  • 추가 한 검사 , 보증 그 형태에만 심볼 나타나고 마지막으로xx+1
  • 일관성 검사기 형태에만 심볼 것을 보장 동시에 표시 할 수있다.xyyz

우리가 동의 할 않도록주의 대신 우리가 입력 순서가 위의 행동 중 하나를 어 기고 있는지 알아 그렇게되면, 우리는 즉시 순서를 받아 들인다. 그렇지 않으면단계에서 NFA는 유일한 거부 상태에있게됩니다. 그리고 시퀀스가 보다NFA도 동의합니다. 따라서 위의 5 가지 조건을 충족하는 NFA는 만 거부 .{ s n } | s n | | s n | s nΣ{sn}{sn}|sn||sn|sn

엄격한 증거 대신 다음 그림을 직접 확인하는 것이 쉬울 수 있습니다.

s_n 거부에 대한 NFA

우리는 왼쪽 상단 상태에서 시작합니다. 첫 번째 부분은 스타터, 카운터, 일관성 검사기, 터미네이터, 마지막으로 애드온 검사기입니다. 터미널 노드가없는 모든 호는 오른쪽 하단 상태를 가리키며 이는 항상 수락 자입니다. 공간 부족으로 인해 일부 가장자리에는 레이블이 없지만 쉽게 복구 할 수 있습니다. 대시 선은 모서리를 가진 상태 시퀀스를 나타냅니다 .n 2n1n2

우리는 NFA가 위의 다섯 가지 규칙을 모두 준수하므로 만 거부 하게 ) 확인할 수 있습니다 . 따라서 -state NFA 가 구성되어 정리 요구 사항을 충족합니다. ( 5 n + 12 ) | Σ | = 5sn(5n+12)|Σ|=5

시공에 불분명 / 문제가있는 경우 의견을 남겨 주시면 설명 / 수정을하겠습니다.


이 질문은 Jeffrey O. Shallit et al.에 의해 연구되었으며 실제로 의 최적 값 은 여전히 대해 열려 있습니다. (단일 언어에 대해서는 쓰요시의 답변에 대한 의견을 참조하십시오 )| Σ | > 1f(n)|Σ|>1

보편성에 관한 그의 이야기 중 46-51 쪽에서 그는 다음과 같은 구성을 제공했다.

정리. 들면 일부 충분히 큰,가 - 상태 NFA 바이너리 알파벳 위에 예에서 가장 짧은 문자열이 있는지 길이이다 에 대한 .N N M L ( M ) Ω ( 2 의 C , N ) C = 1 / 75nNNnML(M)Ω(2cn)c=1/75

따라서 의 최적 값 은 ~ 입니다. Shallit의 결과가 최근 몇 년 동안 개선되었는지 확실하지 않습니다.2 N / 75 (2) Nf(n)2n/752n


나는 Shallit의 작품을 가지고 놀고 있습니다 .2 근처에서 더 나은 경계를 갖기를 바랍니다 . 길이 의 "짧은"정규식 과 길이 의 각 정규식 으로 나타낼 수없는 길이 시퀀스를 지정하여 구성이 흥미로워 보입니다. 은 크기 의 NFA에 의해 설명 될 수있다 . 현재 을 허용 할 수는 있지만 더 똑똑한 아이디어는 가까이 가야 합니다. Ω ( 2 N ) C N + O ( N ) F ( N ) F ( N ) + 1 C 22 2 N2nΩ^(2n)cn+o(n)f(n)f(n)+1c222n
Hsien-Chih Chang 張顯 之

2
나는 이것이이 문제를 연구하는 데 대한 더 많은 통찰력을 제공하지는 않는다고 생각하지만, Shallit의 이야기에 대한 적절한 학문적 참조는 K. Ellul, B. Krawetz, J. Shallit, M. Wang : 정규 표현 : 새로운 결과 및 열린 문제입니다. 오토마타 저널, 언어 및 조합기 10 (4) : 407-437 (2005)
Hermann Gruber

@Hermann : 참조 해 주셔서 감사합니다. 현재 논문에 액세스 할 수 없지만 방법을 찾을 수 있습니다.
Hsien-Chih Chang 張顯 之

카운터 를 사용 하면 스타터터미네이터 를 2 상태의 소형 기계로 바꿀 수 있다고 생각 합니다. 따라서 NFA의 크기를 더 줄 입니다. 3n+O(1)
Hsien-Chih Chang 張顯 之

1
언급 된 JALC 용지의 저자 사전 인쇄 버전은 다음과 같습니다. cs.uwaterloo.ca/~shallit/Papers/re3.pdf 인쇄 된 버전에서 경계와 증거는 동일합니다.
헤르만 그루버
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.