Clique에서 SAT 로의 Cook의 일반적인 감소를 개선하고 있습니까?


10

인스턴스를 더 크게 만들지 않고 -Clique를 SAT 로 줄이는 데 관심이 있습니다.k

Clique는 NP에 있으므로 대수 공간을 사용하여 SAT로 줄일 수 있습니다. 간단한 Garey / Johnson 교과서 축소는 인스턴스를 입방 크기로 날려 버립니다 . 그러나 Clique는 모든 고정 대해 P에 있으므로 적어도 고정 대한 효율적인 감소가 "필요"해야한다 .kkk

축소를 구축하는 한 가지 방법 은 SAT 변수를 특성 벡터 로 사용하는 것입니다. 변수는 true로 설정되어 관련 정점이 도당에 있음을 나타냅니다. 이 축소는 자연 스럽지만 그래프가 희소 한 경우 2 차 크기 의 SAT 인스턴스를 만듭니다 . 희소 그래프의 경우, 인접하지 않은 정점의 모든 쌍에서 최대 하나의 정점이 도당에있을 수 있도록 2 차적으로 많은 절이 필요합니다.

보다 더 잘 해보자 .O(n2)

Cook / Schnorr / Pippenger / Fischer 의 일반적인 감소는 먼저 언어를 결정하는 다항식 시간 제한 NDTM을 취하고, 명백하지 않은 DTM에 의해 NDTM을 시뮬레이션하고, 회로에 의해 잊혀진 DTM을 시뮬레이션 한 다음 회로를 3으로 시뮬레이션함으로써 작동합니다 -SAT 인스턴스. NDTM 시간 한계가 경우 크기가 3-SAT 인스턴스를 작성합니다 . 잊어 버린 기계로 시뮬레이션 할 때 오버 헤드로 인해 로그 요소를 피할 수없는 것으로 보입니다. 들면 -Clique 한 것 같다 의 3-SAT 인스턴스 산출되는 이다 크기 quasilinear 고정 용O(t(n)log⁡t(n))t(n)kt(n)=O(nk)O(nk(log⁡n+log⁡k))k. 그의 1988 년 논문에서 Cook은 NP의 언어에 대해 더 나은 일반 축소가 존재하는지 여부를 물었습니다. 그러나 Clique는 구조가 많기 때문에이 경우에는 더 잘할 수 있습니다.

Clique에서 SAT로 더 나은 감소가 있습니까?

특히, 고정 된 가 인스턴스 크기의 증가를 선형으로 유지하면서 Clique를 SAT 로 감소시킬 수 있습니까? 아니면 기존 결과를 사용하여 이것이 불가능할 것이라고 주장 할 수 있습니까? 내가 사용하는 시도 Fortnow / Santhanam 와 델 / 반 Melkebeek을 하지만 오버 헤드는 이러한 결과가 아무것도 특정을 의미하기에 너무 큰 것 같다.kk

(나는 로그 요소를 피하는 것처럼 보이는 축소 작업을 해왔지만 정확성을 확인하기 위해 까다로운 세부 사항에 더 많은 시간을 낭비하기 전에 그러한 축소가 이미 알려 진지 또는 그렇지 않을지 알고 싶습니다. 있다.)


MathOverflow 에서 다소 관련이있는 질문 mathoverflow.net/q/224898/440 을 참조하십시오. clique에 대한 정량화 된 부울 수식의 작은 크기는 랜덤 그래프에 대한 0-1 법의 느린 수렴 률로 직접 변환됩니다. 문제는 이미 2 차 크기의 공식을 포함합니다. 허용되는 대답은 도당 의 존재를 암시하는 선형 크기 공식을 제공 하지만, 도수가 존재하더라도 거짓 일 수 있습니다. kk
— David Eppstein

로그 공간에서도 실행되는 축소를 원하십니까? 지적한 바와 같이, clique는 상수 대한 다항식 시간으로 풀 수 있으므로, 다항식 시간 감소는 실제로 clique를 확인한 다음 일정한 크기의 SAT 인스턴스 를 출력 할 수 있습니다. kkk
— Joe Bebel

@JoeBebel : 공간을 사용하면 변수를 사용하여 SAT 인스턴스를 출력 할 수도 있습니다 . 솔루션 은 그래프에서 cliques 의 모든 위치에 대한 솔루션 입니다. 각각의 잠재적 인 도난에 대해, 존재하지 않으면 도약을 금지하는 조항을 출력 한다. 이것은 솔루션을 정확하게 한 번에 축소하여 캡처하므로 Kaveh의 질문에 대답하지만 제안과 마찬가지로 인스턴스를 해결하는 방법을 결정하기 전에 인스턴스를 해결하면 치트처럼 보이는 것처럼 보입니다. klog⁡nklog⁡nkk
— András Salamon

답변:


8

변수와 절 을 사용하여 -clique를 SAT 인스턴스로 표현할 수 있습니다 . 고정 , 이것은 선형입니다 .kO(nk)O(nk2)kn

보자 경우 는 IS 도당의 일 정점 (사전 식 순서로 정렬). 다시 말해, 는 clique에서 번째 꼭짓점 의 "one-hot"인코딩입니다 (하나의 요소가있는 집합에 대한 특성 벡터입니다). 이것은 변수를 소개 합니다.xiv=1vixiink

이제 각 대해 절을 사용하여 해당 두 정점이 가장자리로 연결되도록 할 수 있습니다 . 예를 들어, 한 절은 여기서 은 정점 인접한 정점 입니다. 정점 당 하나의 절을 얻습니다 . 이것은 총 절을 소개합니다.(i,j)n(¬xiu∨xjv1∨⋯∨xjvm)v1,…,vmuuO(nk2)

각 에 대해 절을 사용하여 가 해밍 가중치 1의 벡터이고 인 것을 시행 할 수 있습니다 . 총 절이 더 추가됩니다.ixixi<xi+1O(n)O(nk)


변수를 사용 하여 clique의 꼭짓점을 나타내면 ( 비트 는 clique 의 번째 꼭짓점 을 나타내기에 충분합니다 ) 정점 세트를 확인하기위한 회로를 구축하는 것이 더 좋습니다. 도당에 해당합니다. 이러한 회로를 구축하는 한 가지 방법 은 이러한 정점 의 모든 쌍의 목록을 정렬 된 순서로 구성한 다음 Mergesort의 병합 절차 또는 이와 유사한 것을 사용하여 에지 목록과 비교하는 것입니다. 그. 크기 회로 와 같은 것을 얻을 수 있습니다. 그런 다음 동일한 크기의 SAT 인스턴스로 변환합니다 (여기서klg⁡nlg⁡nikk(k−1)/2O((n+m+k2)poly(lg⁡n))m=그래프의 가장자리 수). 그래도 실제로 가능한지 확인하기 위해 세부 사항을 해결하려고 시도하지 않았습니다.

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