발생 횟수로 설명 된 언어가 규칙적인지 결정할 수 있습니까?


14

같은 수의 0과 1을 포함하는 단어의 언어는 규칙적이지 않은 반면, 같은 수의 001과 100을 포함하는 단어의 언어는 규칙적입니다 ( 여기 참조 ).

두 단어가 주어 , 그것의 같은 수의 포함 된 단어의 언어 경우 decidable입니다 및 일반입니까?w1,w2w1w2


1i001i 또는 0i1 이외의 다른 정의 된 일반 언어의 예를 제공 할 수 있습니까 10i? 3 기호 알파벳의 예는 어떻습니까?
babou

경우 w1 의 엄격한 subword이다 w2 큰 기회가 언어 그러므로 정기적으로 비어 있습니다. 나는 다른 예를 모른다.
sdcvvc 2018 년

위의 예제가 문제를 결정할 수있는 유일한 예제라고 생각합니다. 두 개의 하위 문자열 만 지정하면 발생과 관련하여 지정할 수있는 내용에 따라 CF ...로 추측됩니다. 당신은 "발생 횟수에 의해 묘사 된"의 의미를 충분히 정확하게하지 않습니다.
babou 2016 년

질문 본문은 충분히 정확한 IMO입니다.
sdcvvc 2016 년

1
지금까지 특별한 경우에 대한 솔루션은 아이디어에 달려하는 것 그 문자열의 발생 개입의 보증 단지 하나의 발생 2 . 그래서 어떻게 든 현재 답변이 정확하다고 가정하면 (아직 명확하지 않습니다) w 1 , w 2 사이 에 문자열이 스캔되는 동안 "같음"또는 "같지 않음"상태가 될 수 있음을 보증 하는 관계가있는 것 같습니다 "과 같지 않지만"같지 않은 "경우 최대 유한 한 숫자 만 사용합니다. w1w2w1w2
vzn

답변:


3

두 개의 단어 , w 2 가 주어지면 , 동일한 수의 w 1w 2를 포함하는 단어 의 언어 L 이 규칙적 인지 결정할 수 있습니까?w1w2Lw1w2

먼저 몇 가지 정의 :
보다 간결하게 만들 수 있으며, 증명에 사용하려는 경우 표기법을 개선 할 수 있습니다. 이것은 첫 번째 초안입니다.

두 단어 w 2가 주어지면 다음 과 같이 말합니다. w1w2

  • 항상 발생하여 w 2 언급 w 1w 2 , IFF w1 w2w1w2

    1. 모든 문자열 되도록 S = X w 2 (Y)| X | ,ss=xw2y | x | 0 , | x | 1 | , | y | 0 , | y | 1 | 1 다른 분해 s = x w 1 y ′가 있습니다. 참고: x y가x,y ≥∣w1+w2|x|0,|x|1|,|y|0,|y|1|1s=xw1y
      xy각각은 적어도 0을 포함하고 병리학 적 사례 (@sdcvvc에서 찾은)에 의해 1이 필요합니다 : , w 2 = v 1 i + jy 1 및 그 대칭 변형.w1=1i0w2=v1i+jy1
    2. 캐릭터가 함께 | X | ,s=xw2y 가되도록 최대 하나의 분해 S = X ' w (1 개) , Y 'x,y ≥∣w1+w2s=xw1y
  • 항상 cooccurs w 언급1w1 w2 , iff 각각은 항상 서로 발생합니다.w1w2

  • w 2 는 독립적으로 발생하며, 언급 된 w 1notedw1w2 , 어느 쪽도 항상 다른 쪽에서 발생하지 않으면,w1w2

  • 항상 발생 m의 회 이상 또는보다 w 2 언급1 m 2 문자열에 대해, IFF를 S 되도록 S = X w 2 (Y) | X | , | Y | | | 1 | + | 2 | 있다 해요 다른 분해 S = X I w 1 명 I을w1 mw2w1mw2ss=xw2yx, y| ≥∣w1+w2ms=xiw1yi위한 되도록 I j는 의미 X IX J를 .i[1,m]ijxixj

이러한 정의는 w 2 가 발생 하는 문자열의 끝에서 발생하는 것을 무시할 수 있도록 구성 됩니다. 문자열 끝의 경계 효과는 별도로 분석해야하지만 유한 수의 사례를 나타냅니다 (실제로 아래 첫 번째 분석에서 하나 또는 두 개의 경계 하위 사례를 잊어 버렸지 만 실제로 중요하지는 않습니다). 정의는 중복 발생과 호환됩니다.w1w2

고려해야 할 4 가지 주요 경우가 있습니다 ( w 2 사이의 대칭 측정 무시 ).w1w2

  1. 줄 끝을 제외하고는 두 단어가 반드시 함께 있어야합니다. 이것은 1 i 0 01 i 또는 0 i 1 10 i 형식의 쌍에만 관련됩니다. 이것은유한 오토 마톤에의해 쉽게 인식되며, 인식될 문자열의 양쪽 끝에서만 발생하는 것을 확인하여 양 끝에서 또는 끝에서 고독이 발생하는지 확인합니다. w 1 = w 2 때 변성 사례도 있습니다. 언어 L은 분명히 규칙적입니다.w1w2
    1i001i0i110iw1=w2

  2. , w 2w 1 2 단어 중 하나는 다른 단어 없이는 발생할 수 없지만 그 반대는 참이 아닙니다 (문자열의 끝 부분을 제외하고). 다음과 같은 경우에 발생합니다.w1w2w2w1

    • w 2 의 하위 문자열입니다. 그런 다음 유한 오토 마톤은 w 1 w 2 인스턴스 외부에서 발생하지 않는지확인할 수 있습니다.w1w2w1w2

    • w 2 = v 1 j 일부 단어 v { 0 , 1 } , v 01 i : 그런 다음 w 1 w 2 와 분리되어 발생하지 않는이전의 경우와 같이 유한 오토 마톤 검사. 그러나, 자동 기계는의 카운트 하나를 추가 예를 허용 w 1 수용을 허용하는 경우 w (2)w1=1i0w2=v1jv{0,1}v01iw1w2w1w2문자열의 접미사입니다. 세 가지 다른 대칭 사례가 있습니다 (1-0 대칭 및 왼쪽-오른쪽 대칭).

  3. w12w2
    One of the 2 words occurs twice in the other. That can be recognized by an a finite automation that checks that the smaller word never occurs in the string. The is also a slightly more complex variant that combines the two variations of case 2. In this case the automaton checks that the smaller string 1i0 never occurs, except possibly as part of v in the larger one v1j coming as a suffix of the string (and 3 other cases by symetry).

  4. 두 단어는 서로 독립적으로 나타날 수 있습니다. 우리는 일반화 순차 머신 (GSM) 구축 G 출력 것을 그것의 발생을 인식하면1 B 의 발생이 인식 될 때 w (2) , 그 밖의 모든 것을 잊는다. 언어 G ( L ) 가 규칙적인경우에만언어 L 이 규칙적입니다. 그러나 G ( L ) = { w { a , b } w aw1w2
    Gaw1bw2LG(L) 명확하게 문맥이없고 규칙적이지 않습니다. 따라서 L 은 규칙적이지 않습니다. 실제로 우리는 L = G - 1 ( G ( L ) ) 을가 집니다. 일반 언어와 문맥이없는 언어는 gsm 매핑과 역 gsm 매핑으로 닫혀 있기 때문에 L 에는 문맥이없다는 것도 알고 있습니다.G(L)={w{a,b} wa=∣wb}L
    L=G1(G(L))L

공식적인 증거를 구성하는 한 가지 방법은 다음과 같습니다. 먼저 언어를 인식하는 PDA를 만드십시오. 실제로 1- 카운터 기계로 수행 할 수 있지만 유한 제어가 중복되는 것을 피하기 위해 두 개의 스택 기호를 갖는 것이 더 쉽습니다. 그런 다음 FA 여야하는 경우 카운터가 두 단어에만 의존하는 상수로 제한 될 수 있음을 보여줍니다. 다른 경우에는 카운터가 임의의 값에 도달 할 수 있음을 보여줍니다. 물론 PDA는 증거를 쉽게 휴대 할 수 있도록 구성해야합니다.

Representing the FA as a 2-stack-symbols PDA is probably the simplest representation for it. In the non-regular case, the finite control part of the PDA is the same as that of the GSM in the proof sketch above. Instead of outputting a's and b's like the GSM, the PDA counts the difference in number with the stack.


I had a question about context-freeness in the case of three words. I deleted it when I realised it could be analyzed similarly. I had first thought that proving non-CFness would make an original exercise, but the GSM ruins it.
babou

2
It is not clear what do you mean by "occur independently of each other", "come necessarily together" etc. Please write formal definitions instead, and prove that they cover all cases.
sdcvvc

1
I am not sure what you are asking, and what level of formalization you need, for what purpose. I realized that analyzing by hand possible relations of the two words is not garanteed to be correct, and does not matter anyway. What matters is whether an occurence of one word can exist without creating at the same time an occurence (or several) of the other word. The details do not matter as it will always be localized and thus manageable finitely. The two ends do not matter either as tey are localized too. Even overlaps of occurrences do not matter since they can only be finitely many in 1 place
babou

1
0i110iw1w210나는에스=0미디엄0나는11미디엄.
sdcvvc

Sorry, I did not mean to make you guess. It only took me time to understand what exactly you wanted. My failing only. Regarding your counter example, you are correct. But for me it only means that I have to be a little bit more careful about telomeres, in the definition of the relations. I defined them too quickly, but 0M or 1M do not convey much information in this context. This is really a boundary pathological example within a pathological case, that actually cannot occur when more than 2 symbols are used. I just do not believe it changes anything.
babou
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.