Tôi nghĩ vấn đề này là NP-hard. Tôi cố gắng phác thảo một giảm từ MinSAT. Trong bài toán MinSAT, chúng tôi được cung cấp một CNF và mục tiêu của chúng tôi là giảm thiểu số lượng các mệnh đề thỏa mãn. Vấn đề này là NP-hard, xem ví dụ: http://epub.siam.org/doi/abs/10.1137/S0895480191220836?journalCode=sjdmec
Chia các đỉnh thành hai nhóm - một số sẽ đại diện cho nghĩa đen, các mệnh đề khác, vì vậy trong đó v là số biến của CNF (thông thường được ký hiệu là n ) và c là số mệnh đề. Hướng một cạnh từ mỗi đỉnh chữ đến đỉnh mệnh đề nơi nó xảy ra. Xác định S cho một đỉnh bằng chữ đại diện cho x i là { i , i + v + k } (trong đó k là một tham số tùy ý), do đó f ( x i )n=2v+cvncSxi{i,i+v+k}k và f ( ˉ x i ) = i + v + k hoặc f ( ˉ x i ) = i và f ( x i ) = i + v + k . Đối với mỗi khoản-vertix, chúng ta hãy S = { v + 1 , ... , v + k , 2 v + k + 1 , ...f(xi)=if(x¯i)=i+v+kf(x¯i)=if(xi)=i+v+k , vì vậy k của các mệnh đề-đỉnh là `` small ''.S={v+1,…,v+k,2v+k+1,…,n}k
Bây giờ CNF có một bài tập trong đó ít nhất mệnh đề là sai khi và chỉ khi vấn đề của bạn có thể được giải quyết trong trường hợp trên. Vấn đề MinSAT là chính xác để kiểm tra xem một công thức CNF φ có một bài tập mà làm cho ít nhất k khoản sai, vì vậy chương trình này mà vấn đề của bạn là NP-hard.kφk
Để giúp bạn hiểu giảm này, đây là trực giác: nhãn nhỏ ( ) tương ứng với các sai giá trị thật và nhãn lớn ( v + k + 1 , ... , 2 v + k ) tương ứng với Thật. Các ràng buộc cho các đỉnh chữ nghĩa đảm bảo rằng mỗi x i là Đúng hoặc Sai và ¯ x i1,2,…,v+kv+k+1,…,2v+kxixi¯¯¯¯¯có giá trị thật ngược lại. Các cạnh đảm bảo rằng nếu bất kỳ nghĩa đen nào là True, thì tất cả các đỉnh mệnh đề chứa nó cũng được gán True. (Ngược lại, nếu tất cả các chữ trong mệnh đề được gán Sai, thì cấu trúc biểu đồ này cho phép đỉnh mệnh đề được gán là Sai hoặc Đúng.) Cuối cùng, lựa chọn đảm bảo rằng k của các đỉnh mệnh đề được gán Sai và c - k trong số chúng được gán True. Vì vậy, nếu có một loại topo hợp lệ của biểu đồ này, sau đó là một bài tập để các biến mà làm cho ít nhất k của khoản của φkkc−kkφfalse (tất cả các đỉnh mệnh đề được gán Sai, cộng với có thể một số đỉnh được gán True). Ngược lại, nếu có một phép gán cho các biến tạo ra ít nhất các mệnh đề φ sai, thì có một loại cấu trúc liên kết hợp lệ của biểu đồ này (chúng tôi điền vào các nhãn cho các đỉnh chữ theo cách rõ ràng; và cho mỗi khoản của φ đó là sự thật, chúng tôi cung cấp tương ứng quy định tại khoản-đỉnh của nó một nhãn tương ứng với true; mệnh đề-đỉnh khác có thể nhận nhãn tương ứng với một giá trị thật tùy ý).kφφ