DFA에 대한 동등성 쿼리 비용


12

이 질문 에서 영감을 얻어 다음에 대해 궁금합니다.

주어진 DFA가 주어진 정규 표현식과 동일한 언어를 허용하는지 확인하는 최악의 경우는 무엇입니까?

이것이 알려져 있습니까? 이 문제가 P에 있기를 바랍니다. 둘 다 크기의 알고리즘 다항식이 있기를 바랍니다.

답변:


16

Garey and Johnson (p. 174)에 따르면, 정규 표현 비 유니버설은 PSPACE-complete입니다. 이것은 이상의 정규 표현식이 모든 문자열을 생성 하지 않는지 를 결정하는 문제입니다 . 따라서 귀하의 문제는 PSPACE-complete입니다.{0,1}

OP의 문제가 PSPACE에 있는지 확인하는 한 가지 방법이 있습니다. DFA에 주어 및 일반 식 , NFA 구성 위한 , 그리고 사실상 DFA 구성하는 파워 세트 구성을 사용하여 등가 ; 는 메모리에 보관하지 않지만 다항식 공간 만 사용하여 대한 Oracle 액세스 권한을 갖습니다 . 이제 제품 구성을 사용하여 와 의 대칭 차이에 대한 DFA 를 가상으로 구성하십시오 . 이 DFA는 문자열을 허용하지 않으므로ArBrCBCCDACL(A)=L(r)) 시작 상태에서 수락 상태로의 경로가없는 경우 도달 가능성은 NL이고 이후 크기가 , 우리가 확인할 수 있는지 에 , Savitch의 정리로 인한 후자의 등식.D2poly(n)L(D)=NSPACE(poly(n))=NPSPACE=PSPACE


당신은 그것의 확신 (그냥 PSPACE-어려울 것이다되지 않은 경우) PSPACE? 아니면 정규 표현식과 DFA가 모두에 동의하는지 확인하기 위해 다항식 길이의 모든 문자열을 확인하는 것으로 충분합니까? 그게 명백한가? :-)
Neal Young

4
도달 가능성은 NL에 있으므로 정규 표현식에 해당하는 DFA가 기하 급수적이지만 Oracle에 대한 액세스가 저렴하므로 NPSPACE = PSPACE에서 대칭 차이가 비어 있는지 여부를 알 수 있습니다.
Yuval 교수 Filmus

경도 결과가 보이지 않습니다. 즉, 위의 문제를 정규 표현식의 보편성으로 어떻게 줄입니까?
Markus

2
모든 것을 허용하는 DFA를 선택하십시오. 경도를 나타 내기 위해 문제의 일반 표현 비 유니버설을 줄입니다.
Yuval Filmus

1
@YuvalFilmus 참조 주셔서 감사합니다! 단어의 두 가지 의미에서 완성도를 위해 답에 첫 번째 의견을 추가해야합니다.
Lev Reyzin
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.