정규식 크로스 워드는 NP-hard입니까?


13

나는이 웹 사이트 http://regexcrossword.com/ 에서 다른 날 장난하고 있었고 그것을 해결하는 가장 좋은 방법이 무엇인지 궁금해졌습니다.

다항식 시간에서 다음 문제를 해결할 수 있습니까, 아니면 NP-hard입니까?

열에 N 개의 정규 표현식이 있고 행에 M 개의 NxM 그리드가 주어지면 모든 정규 표현식이 만족되도록 그리드에 대한 솔루션을 찾거나 솔루션이 없다고 말합니다.


아직 사이트에서 보였지만, 정규 표현식에와 질문 PSPACE의 완료, NP로 적어도 어렵다 클래스 경향하지 않았
jmite

1
@jmite 정규 표현식에 맞는 문자열을 추측하는 것은 정규 표현식의 전역 속성을 파생시킬 필요가 없기 때문에 "쉬운"것입니다. 사실, 문제는 NP에 있다고 생각합니다 (FrankW의 답변 아래 주석 참조)
Raphael

답변:


11

문제는 NP-hard입니다.

정점 커버를 줄여서 보여줍니다.

G=(V,E)kVVkEV

|E|+1|V|

01(0|1)

모든 행은 꼭짓점에 해당합니다. 그들은 둘 중 하나를 쓸 수있는 정규 표현식을 얻습니다.

  • 1

  • 0

k

정규식 크로스 워드와 버텍스 커버에 대한 솔루션 간의 대응은 분명해야합니다.

예:

다음 그래프에서 크기가 2 인 꼭지점을 찾으십시오.

https://i.imgur.com/TY6sjjV.png

VA=0|10110

VB=0|11101

VC=0|10011

VD=0|11000

Counter=0|010|01010

E1=01(0|1)

E2=01(0|1)

E3=01(0|1)

E4=01(0|1)

VAVDCounterE1E4

VA,VBVC,VB

Counter0|010


2
a) 정규 표현식에 대해 다항식 크기의 NFA를 계산하고 추측 할 수 있습니다. b) 솔루션과 c) 모든 NFA의 (선형 크기) 계산을 수행하고 d) 계산이 추측 된 단어에 맞는지 (다항식 시간), 문제는 NP에도 있습니다.
Raphael

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.