Có ngôn ngữ hoàn chỉnh NP (tốt nhất là tự nhiên) , sao cho với mọi giữ? Nói cách khác, chứa chính xác một nửa của tất cả các trường hợp -bit. n ≥ 1 | L ∩ { 0 , 1 } n | = 2 n L
Có ngôn ngữ hoàn chỉnh NP (tốt nhất là tự nhiên) , sao cho với mọi giữ? Nói cách khác, chứa chính xác một nửa của tất cả các trường hợp -bit. n ≥ 1 | L ∩ { 0 , 1 } n | = 2 n L
Câu trả lời:
Tôi đã hỏi câu hỏi này vài năm trước và Boaz Barak đã tích cực trả lời nó .
Câu lệnh tương đương với sự tồn tại của ngôn ngữ hoàn chỉnh NP trong đólà đa thức thời gian tính toán.|
Hãy xem xét các công thức Boolean và SAT. Sử dụng phần đệm và sửa đổi một chút mã hóa công thức, chúng tôi có thể đảm bảo rằng và có cùng độ dài.
Hãy là một mã hóa mà
Cân nhắc
Dễ dàng thấy rằng là NP hoàn chỉnh.
Nếu , số lượng bài tập thật thỏa mãn τ ⊨ φ và ∃ σ < τ σ ⊨ φ là tương đương với số lượng đáp ứng nhiệm vụ thật - 1 . Thêm φ bản thân nó cho biết thêm lên đến số lượng đáp ứng nhiệm vụ thật cho φ .
Có bài tập thật. Mỗi τ hoặc thỏa mãn φ hoặc ¬ φ (và không phải cả hai). Đối với mỗi công thức φ , hãy xem xét 2 ( 2 | φ | + 1 ) chuỗi ⟨ φ ⟩ , ⟨ ¬ φ ⟩ , ⟨ φ , τ ⟩ , và ⟨ ¬ φ , τ ⟩ cho τ ∈ { 0 ,. Chính xác2 | φ | của2 | φ | + 1 +2chuỗi trongL. Điều này có nghĩa rằng số lượng các chuỗi có độ dàintrongLlà số lượng công thứcφcó độ dài mã hóannhân với2 | φ | mà đa thức thời gian tính toán.
Đây là một gợi ý về lý do tại sao có thể khó đưa ra một ví dụ như vậy, mặc dù tôi đồng ý với nhận xét của Kaveh rằng sẽ rất ngạc nhiên nếu nó không tồn tại. [Không phải là một câu trả lời, nhưng quá dài cho một nhận xét.]
Giả sử rằng một ai đó, hãy nói với tôi, đi kèm với đó là một ngôn ngữ . Một cách tự nhiên để tôi chứng minh rằng L = n : = | L ∩ { 0 , 1 } n | = 2 n - 1 là xây dựng một cách rõ ràng một song ánh giữa L ∩ { 0 , 1 } n và { 0 , 1 } n ∖ L . Vì cá nhân tôi không thể quyết định trường hợp của N Pvấn đề -Hard, hầu hết các "đơn giản" bijections rằng tôi sẽ đưa ra sẽ có dạng " là một song ánh chiều dài bảo quản, và x ∈ L khi và chỉ khi f ( x ) ∉ L ." Hơn nữa, tôi có khả năng đưa ra một f có thể tính toán được trong thời gian đa thức. Nhưng sau đó N P = c o N P , với f là mức giảm từ N P-complete được đặt thành một -complete.
Tất nhiên, sự phản đối này có thể được giải quyết bằng cách "đơn giản" có tính chất khó tính toán hơn thế. Nếu sự lựa chọn của bạn mất thời gian theo cấp số nhân - hãy nói điều đó và nghịch đảo của nó có thể là cả -hard - thì tôi nghĩ bạn khá an toàn. Nhưng nếu chỉ mất thời gian đa thức, thì lưu ý rằng bạn vẫn nhận được hậu quả c o N P ⊆ N T I M E ( 2 ( log n ) O ( 1 ) ) = : N Q P , từ đó Tôi tin rằng nó theo sau bởi một cảm ứng đơn giản với đối số đệm mà . Bây giờ, nếu bạn tin rằng ngăn chặn trước đó chỉ đơn giản là sai, thì không có sự lựa chọn tính toán gần như đa thời gian nào có thể cứu bạn. Nhưng ngay cả khi bạn tin rằng nó có thể là sự thật, thì bằng cách đến với một sự lựa chọn như vậy, bạn sẽ chứng minh P H ⊆ N Q P , dường như vượt quá kiến thức hiện tại ...
Sự phản đối cũng có thể được khắc phục bằng cách đơn giản là không có một sự kiện như vậy, nhưng sau đó có vẻ khó hơn để xem làm thế nào để chứng minh rằng có tài sản mong muốn ngay từ đầu ... Và thực tế, ngay cả khi bằng chứng của bạn không phải là bijection, bạn cần nó là trường hợp mà không có sự lựa chọn dễ tính toán như vậy thậm chí còn tồn tại.
Tất nhiên, đây cũng là kiểu mà một người nào đó sẽ đi cùng với một ví dụ và chúng ta sẽ dễ dàng thấy nó vượt qua sự phản đối này như thế nào, nhưng tôi chỉ muốn ném nó ra khỏi đó để nói làm thế nào bất cứ điều gì với một mệnh lệnh đủ đơn giản có thể 't làm việc (trừ khi niềm tin được tổ chức rộng rãi là sai).
(Câu hỏi liên quan: có một nhà tiên tri nào liên quan đến việc không có như vậy không?)