DFA 최소화가 아닌 경우 NFA 최소화가 어려운 문제인 이유는 무엇입니까?


14

동등한 상태를 찾아 병합하여 DFA를 최소화 할 수 있지만 NFA와 동일한 결과를 얻을 수없는 이유는 무엇입니까? 증거가 이해하기 쉽지 않은 한, 나는 증거 나 그와 비슷한 것을 찾고 있지 않습니다. DFA 최소화가 아닌 경우 NFA 최소화가 어려운 이유를 직관적으로 이해하고 싶습니다.

답변:


8

DFA의 경우 어떤 상태가 동등 할 수 있는지 결정하는 멋진 대수 구조가 있습니다. 문자열의 Myhill-Nerode 동등성은 DFA 최소화와 관련이 있습니다.

NFA의 경우 일반적으로 고유 한 최소 NFA 가 없으므로 상황이 복잡 합니다.

다음은 유한 언어 입니다. 두 오토마타는 모두 최소 상태입니다. 그 예는 Arnold, Dicky 및 Nivat의 최소 비 결정적 오토마타관한 논문 A의 참고 사항 입니다.{ab,ac,bc,ba,ca,cb}

같은 언어에 대한 두 개의 NFA

이 답변은 두 가지 문제가 "기술적으로"다르다는 사실을 표현하려고합니다. 계산 복잡성에서 문제가 어떻게 다른지 자세히 알려면 vzn의 답변을 참조하십시오.


8
최단 경로 또는 최소 스패닝 트리 문제 (항상)에는 고유 한 솔루션이 없지만 여전히 효율적으로 해결할 수 있습니다.
Raphael

5

직관적 인 테이크에 대해 물었습니다.

DFA에서 지정된 입력 접두사는 최대 하나의 상태에만 도달 할 수 있습니다. 그런 다음 접미사와 구분할 수없는 상태 쌍을 병합 할 수 있습니다. 일부 접미사로 구별 할 수있는 상태는 병합 할 수 없습니다. 이것은 다른 모든 최소 오토마타에 동형 인 최소 오토 마톤으로 이어진다.

qQPqPQ

n2


1

O(nslogn)

DFA에 대한 최소 NFA를 계산하는 이 TCS.se 질문 참조


나는 열심히 정의하는 방법을 모르지만 그것을 해결하기위한 효율적인 알고리즘이 없다는 것을 의미했습니다.
Duncan

@ duncan ok, 그럼 당신은 실제로 기술적 인 의미로 단어를 사용했습니다. 기술적 경도에 대한 설명이 있습니다. CS에서 "효율적"은 PTime과 동일하게 정의 / 기술 된 용어입니다. 따라서 귀하의 질문은 실제로 TCS의 중요한 공개 질문과 관련이 있습니다. 이는 NFA 최소화 (모든 PSpace 완료 문제와 함께)가 실제로 "고르지 않음", 즉 P에서는 아니지만 아직 입증되지 않은 것으로 널리 의심 / 정리되어 있습니다.
vzn
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.