문제

나는 DPLL과 CDCL에 대해 배우고 있습니다. SAT 솔버는 변수의 수에 비해 시간 복잡성을 기하키는 것을 알고 있습니다.

내가 착각하지 않으면, Phance는 수학자와 컴퓨터 과학자들로부터 엄청난 노력에도 불구하고 SAT에 대한 다항식 타임 알고리즘이없는 이유 중 하나입니다. 그러나 P 라블리 NP 문제는 변수의 수가 아닌 수식의 길이에 대한 시간 복잡성에 대해서만 염려합니다.

이들 최첨단 SAT 솔버가 3CNF 수식에서 실행되면 변수 수에 대한 시간 복잡성은 3CNF의 길이에 비해 시간 복잡성을 의미합니다.

그러나 임의의 CNF에서 실행 된 경우의 길이가 변수의 수에 기하수록 변수의 수에 대한 시간 복잡성은 반드시 CNF의 길이에 대한 시간 복잡성을 나타내는 시간의 복잡성을 반드시 의미하지는 않습니다.

이렇게하면, 관련 질문은 시간 복잡성을 측정하는 동안 3CNF 또는 CNF에서 실행되는 SAT 솔버가 실행됩니까?

도움이 되었습니까?

해결책

3SAT의 경우 변수의 수는 폴리 나오스 수와 관련이 있습니다. (정당화의 끝을보십시오.)

결과적으로, 주행 시간이 조항 수에서 다항식이되는 3SAT의 임의의 알고리즘은 변수의 수에서 다항식이 될 것이다. 그리고 러닝 시간이 변수 수에서 다항식이 다항식 인 3sat의 모든 알고리즘은 또한 조항 수에서 다항식이 될 수 있습니다.

SAT에 대한 다항식 시간 알고리즘이있는 경우에만 3SAT에 대한 다항식 시간 알고리즘이있는 경우, CiruTAT (예 : 수식 용)에 대한 다항식 시간 알고리즘이있는 경우에만 ...에 또한 SAT 솔버에 수십 년의 작업에도 불구하고 다항식 시간 (또는 최악의 경우의 지수 시간보다 적은 시간보다 적은 시간보다 적은 시간이 지나치게)의 3SAT에 대한 알고리즘을 알고는 아무도 없습니다. 3SAT에 대한 다항행 시간 알고리즘이 없다는 증거로 이것을 취할 수 있습니다. 이는 SAT 또는 CircuitAT에 대한 다항식 - 시간 알고리즘이 없음을 의미하고, 또한 p!= np.


정당화 : $ n $ 은 변수의 수와 $ m $ 절 수를 나타냅니다. ...에 우리는 $ n \ le 3m $ (모든 절에 나타나지 않는 변수가 무시할 수 있음) 및 $ m \ le 8n ^ 3 $ (각 조항에는 세 리터럴이 3 개 있고 반복적 인 절을 무시할 수 있습니다). $ n / 3 \ le m \ le 8n ^ 3 $ $ \ sqrt [3] {m / 8} \ LE N \ LE 3M $ , 즉, 각각은 다 일부와 관련이 있습니다.


당신이 당신의 질문을 수정했음을 알았습니다. 그것은 당신이 오해가 있다고 생각합니다. 당신은 임의의 부울 수식에서 "[NING] [SAT Solver]를 실행"에 대해 이야기합니다. 그러나 임의의 부울 수식에서 SAT 솔버를 실행할 수 없습니다. SAT 솔버는 CNF 수식에서만 작동합니다.

그러나

그러나 우리는 모든 부울 수식이 대부분의 다항식에서 대부분의 다항식에서 크기의 등각형 CNF 공식으로 변환 될 수 있으며 그 반대의 경우도 마찬가지입니다. 수식의 크기에서 임의의 부울 수식의 만족 성을 테스트 할 수있는 알고리즘이있는 경우, 수식 크기의 시간 다항식에서 3CNF 수식의 만족 성을 테스트 할 수있는 알고리즘이 있습니다. 3CNF 공식은 부울 수식이므로 사용 가능한 증거와 모순되는 변수의 수에서 시간 다항식에서 3CNF 수식의 만족 성을 테스트 할 수있는 알고리즘입니다. 따라서 변수의 수에서 시간 다항식에서 3SAT를 해결할 알고리즘이 없다고 믿는다면, 수식 크기의 시간 다항식에서 임의의 부울 수식의 만족성을 테스트하는 알고리즘이 없다고 믿어야합니다. < / P>

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 cs.stackexchange
scroll top