Làm thế nào tôi có thể chỉ ra rằng định lý Cook-Levin không tương đối hóa?


7

Sau đây là một bài tập mà tôi bị mắc kẹt tại (nguồn: Sanjeev Arora và Boaz Barak; nó không phải là bài tập về nhà):

Chứng minh rằng có một oracle và một ngôn ngữ ví dụ rằng không phải là thời gian đa thức rút gọn về 3SAT ngay cả khi máy tính giảm được phép truy cập .AAL∈NPAL∈NPALLAA


Những gì tôi đã cố gắng là, hãy coi là tiên tri để tạm dừng vấn đề và để . Với nhiệm vụ này, tôi đảm bảo và không thể giảm đa thức thành 3SAT nếu oracle không được cung cấp cho máy thực hiện giảm. Mặc dù để ánh xạ một thể hiện tôi sẽ phải tìm kiếm trong suốt chuỗi ngay cả khi oracle được cung cấp cho máy rút gọn. Nhưng điều này dường như không phải là một bằng chứng cho sự vắng mặt của việc giảm đa thức trong trường hợp này.AAL={1n|∃⟨M,w⟩s.t.|⟨M,w⟩|=n and Turing machine M halts on w}L={1n|∃⟨M,w⟩s.t.|⟨M,w⟩|=n and Turing machine M halts on w}

L∈NPAL∈NPALL1n1n2n2n

Có cách nào để chứng minh nó bằng cách sử dụng ví dụ tương tự không? Có một ví dụ đơn giản hơn?



Đây không phải là câu hỏi gần giống như Baker Gill Solovay 1975 ?
— vzn

Câu trả lời:


8

Vui lòng tham khảo Định lý Cook Levin có tương đối không? .

Cũng tham khảo bài viết của Arora, Implagiazo và Vazirani: Kỹ thuật tương đối hóa so với không tương thích: Vai trò của kiểm tra cục bộ .

Trong bài báo của Baker, Gill và Solovay (BGS) về thuyết tương đối hóa của P =? Câu hỏi NP (Tạp chí SIAM về máy tính, 4 (4): 431 Chiếc442, tháng 12 năm 1975) họ đưa ra một ngôn ngữ và sao cho và , do đó chứng minh rằng có thầy mo mà .BBUBUBUB∈NPBUB∈NPBUB∉PBUB∉PBBBPB≠NPBPB≠NPB

Chúng tôi sẽ sửa đổi và thành và để chúng tôi có được một ngôn ngữ mới không thể giảm xuống 3SAT ngay cả khi có sẵn như một lời tiên tri.UBUBBBUB′UB′B′B′B′B′

Trước tiên, giả sử rằng chúng ta có thể đệm mọi boolean thành với một số biểu thức 3CNF giả khác sao cholà số lẻ và chúng tương đương nhau, nghĩa là là thỏa đáng iff là thỏa đáng. Chúng ta có thể làm điều đó trong thời gian và với phần đệm , nhưng ngay cả khi phải mất thời gian đa thức và phần đệm đa thức thêm thì cũng không thành vấn đề.3SAT3SATϕϕϕ′ϕ′|ϕ′||ϕ′|ϕϕϕ′ϕ′n+O(1)n+O(1)O(1)O(1)

Bây giờ chúng ta cần kết hợp và với bằng cách nào đó để định lý BGS vẫn giữ nhưng thêm . Vì vậy, chúng tôi làm một cái gì đó như sau.BB3SAT3SATB′B′3SAT∈PB′3SAT∈PB′

UB′={1n  |  ∃x∈B,UB′={1n  |  ∃x∈B, sao cho và|x|=12n}|x|=12n}

B′=B′constructed ∪{ϕ  |  ϕ∈3SATB′=B′constructed ∪{ϕ  |  ϕ∈3SAT vàlà số lẻ .|ϕ||ϕ|}}

Bây giờ chúng ta sẽ xây dựng theo định lý sao cho nếu máy xác định cho đầu vào ( được xác định như trong định lý) sẽ hỏi nhà tiên tri một truy vấn có độ dài lẻ kiểm tra xem nó có trong và trả lời đúng nhưng nếu nó hỏi một truy vấn có độ dài bằng nhau, chúng tôi tiến hành xây dựng, nghĩa là trả lời đúng nếu nó đã có trong bảng, nếu không thì trả lời không phải lúc nào. Sau đó, vì chúng tôi đang chạy trong chúng tôi lật các câu trả lời ở độ dài để không quyết định .B′constructedB′constructedMB′iMB′i1n1nnnB′B′3SAT3SAT1n1n2n2nMB′iMB′iUB′UB′

Chúng ta có thể chứng minh tương tự như trong định lý BGS rằng với và , chúng ta có và .B′B′UB′UB′UB′∈NPB′UB′∈NPB′UB′∉PB′UB′∉PB′

UB′∈NPB′UB′∈NPB′ rất dễ chứng minh. Chúng tôi xây dựng một Máy Turing không xác định, cho đầu vào tạo ra các nhánh không xác định chạy trong bước để tạo chuỗi -thngthth khác nhau và sau đó hỏi orory nếu chuỗi -thngthth nằm trong , và nếu câu trả lời là có, nó chấp nhận nếu không nó sẽ từ chối . Cấu trúc này cho thấy .1n1n2n2n2n2nB′B′2n2nB′B′1n1n1n1nUB′∈NPB′UB′∈NPB′

UB′∉PB′UB′∉PB′ có thể được chứng minh với sự trợ giúp của đối số đường chéo. Về cơ bản, nó khác với mọi cho mọi Máy Turing orory có là một nhà tiên tri. Điều này là do cách chúng tôi xây dựng .L(MB′i)L(MB′i)B′B′B′constructedB′constructed

Bây giờ chúng ta sẽ chứng minh bằng mâu thuẫn rằng không tồn tại sự giảm từ xuống ngay cả khi có sẵn .UB′UB′3SAT3SATB′B′

Giả sử có sự giảm bằng cách sử dụng oracle , tức là, .B′B′UB′≤B′P3SATUB′≤B′P3SAT

Điều đó có nghĩa là chúng ta có thể giảm một chuỗi có dạng xuống một thể hiện 3SAT bằng cách sử dụng máy xác định thời gian đa thức sử dụng làm tiên tri.1n1nϕϕB′B′

Bây giờ chúng ta có thể mô tả một TM xác định sẽ quyết định các chuỗi trong thời gian đa thức sử dụng như một lời tiên tri. Đầu tiên, máy này giảm đầu vào xuống còn 3SAT bằng cách sử dụng như một lời tiên tri. Điều này có thể được thực hiện bởi vì chúng tôi có giảm ở trên. Sau đó, nếu không phải là độ dài lẻ sẽ đệm nó để tạo là độ dài lẻ. Tiếp theo, nó sẽ đưa cho orory và nhận được câu trả lời có / không. Nó sẽ chấp nhận nếu câu trả lời là có và từ chối nếu câu trả lời là không.MB′MB′UB′UB′B′B′1n1nϕϕB′B′ϕϕMB′MB′ϕ′ϕ′ϕ′ϕ′B′B′

Máy này là đa thức xác định và sử dụng orory .B′B′

Do đó, chúng tôi đã chứng minh rằng , một mâu thuẫn .UB′∈PB′UB′∈PB′

Do đó, .UB′≰B′P3SATUB′≰B′P3SAT


Làm thế nào là có thể? Tôi sẽ quyết định thành viên của trong thời gian đa thức và ánh xạ nó thành một công thức SAT nhỏ tùy thuộc vào thành viên của chuỗi. Tui bỏ lỡ điều gì vậy ? L∈PBL∈PBLL
— sashas

Liên kết đầu tiên không đưa ra bằng chứng. Bạn có thể đưa ra bất kỳ gợi ý nào tại sao ngôn ngữ được đề cập trong Sanjeev Arora và Barak không thể rút ngắn thời gian đa thức thành 3SAT. Ngoài ra liên kết thứ hai không hoạt động. UB
— sashas

Làm thế nào để ? Có phải mỗi nhánh của máy Turing không xác định chạy trong 2 ^ n không? U′B∈NP
— sashas

1
Lưu ý tôi đã xác định lại . Ngoài ra . Nó có thể không (không !!) thuộc về . UB′UB′∈NPB′NP
— Shreesh

1
Mỗi nhánh chạy trong bước để tạo chuỗi -thngthth khác nhau và sau đó hỏi orory nếu nó ở , và nếu câu trả lời là có, nó chấp nhận nếu không nó sẽ từ chối . 2n2nB′1n
— Shreesh
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookie và Chính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.