Quyết định nếu một mạch


27

Độ phức tạp của việc quyết định xem một mạch có bit đầu vào và bit đầu ra có tính toán hoán vị của không? nói cách khác, liệu mọi chuỗi bit trong có phải là đầu ra của mạch cho một số đầu vào không? Có vẻ như một vấn đề đã được nghiên cứu, nhưng tôi không thể tìm thấy bất kỳ tài liệu tham khảo nào. nn{0,1 } n {0,1 } nNC0nn{0,1}n{0,1}n


1
Giới hạn rõ ràng là cũng hoạt động cho P (kiểm tra xem hàm có phải là hàm tiêm không). coNPP
Kaveh

Bạn có ý nghĩa gì bởi một mạng NC0 mạch NC0? Cụm từ thông thường là họ mạch NC0, có lẽ (viết tắt là may mắn) thường được viết tắt là mạch NC0, nhưng tôi không nghĩ rằng bạn có nghĩa là họ mạch NC0 trong câu hỏi của bạn.
Tsuyoshi Ito

1
Theo mạch , ý tôi là mọi bit đầu ra của mạch chỉ phụ thuộc vào số bit đầu vào không đổi. NC0
QiCheng

3
Có tôi đang hỏi về một gia đình. Để làm cho mọi thứ rõ ràng hơn, bạn có thể thay đổi thành N C 0 5 trong đó mọi bit đầu ra chỉ phụ thuộc vào 5 bit đầu vào trong gia đình. NC0NC505
QiCheng

1
Điều này không trả lời câu hỏi của bạn, nhưng nếu vấn đề được khái quát hóa để mỗi bit đầu ra được phép phụ thuộc vào các bit đầu vào O (log n), thì tôi nghĩ rằng vấn đề đã hoàn thành coNP theo khả năng giảm Turing. Điều này xuất phát từ tính hoàn chỉnh coNP của tính thuận nghịch hữu hạn của automata di động hai chiều ( Durand 1994 ) bằng cách biểu diễn mỗi ô trong một automata di động hai chiều dưới dạng chuỗi nhị phân O (log n).
Tsuyoshi Ito

Câu trả lời:


29

Độ cứng

Theo nhận xét của bạn về câu hỏi, chúng tôi sẽ gọi một mạch trong đó mỗi bit đầu ra phụ thuộc vào tối đa k bit đầu vào là một mạch NC 0 k ., Sử dụng thuật ngữ này, vấn đề của bạn là hoàn thành coNP trong trường hợp mạch NC 0 5 . Đó là, vấn đề sau đây là coNP-đầy đủ.

Sơ thẩm : Một mạch Boolean Cn bit đầu vào và n bit đầu ra trong đó mỗi bit đầu ra phụ thuộc vào tối đa năm bit đầu vào.
Câu hỏi : Việc ánh xạ từ {0,1} n sang chính nó được tính bằng phép tính C ?

Như Kaveh đã nhận xét, rõ ràng là trong coNP, thậm chí không bị ràng buộc về số lượng bit đầu vào mà mỗi bit đầu ra phụ thuộc vào. Để chứng minh độ cứng coNP, chúng tôi sẽ giảm 3SAT để bổ sung cho vấn đề hiện tại. Ý tưởng chính của việc giảm giống như ý tưởng được sử dụng trong bài báo [Dur94] của Durand, mà tôi đã đề cập trong một nhận xét về câu hỏi, nhưng toàn bộ việc giảm đơn giản hơn nhiều trong trường hợp của chúng tôi.

Cho một 3CNF công thức φ với n biến và m khoản, chúng ta xây dựng một mạch Boolean C với ( n + m bit đầu vào) và ( n + m ) bit đầu ra như sau. Chúng tôi dán nhãn cho các bit đầu vào là x 1 , Vượt, x n , y 1 , Lọ , y m và các bit đầu ra là x1 , Lỗi, xn , z 1 , Lỗi , z m . Chúng tôi xem xét rằng các bit đầu vào x1 , ..., x n xác định một nhiệm vụ thật với n biến trong φ .

  • xi = x i với 1≤ in . Nghĩa là, n bit đầu tiên của đầu vào luôn được sao chép vào n bit đầu tiên của đầu ra.
  • Đối với 1≤ im , nếu i th khoản của φ là hài lòng, sau đó z i = y iy i 1 , nơi subscript được hiểu modulo m . Mặt khác, z i = y i .

Lưu ý rằng mỗi bit đầu ra phụ thuộc vào tối đa năm bit đầu vào. Tôi bỏ qua các bằng chứng về sự đúng đắn của việc giảm, nhưng ý tưởng chủ chốt (mà tôi mượn từ [Dur94]) là nếu φ là satisfiable và bit đầu vào x 1 , ..., x n được thiết lập để một nhiệm vụ đáp ứng của φ , sau đó các bit đầu ra m z 1 , bit , z m bị ràng buộc để có tính chẵn lẻ, và do đó mạch không thể là một hoán vị. Mặt khác, nếu bit đầu vào x 1 , ..., x n được thiết lập để một nhiệm vụ không đáp ứng của φ , bit sau đó đầu ra z1 , Nhiều, z m có thể được đặt thành bất cứ điều gì; vì điều này, nếu φ là không thể thoả mãn, sau đó các mạch là một hoán vị.

Khả năng kéo

Về mặt dễ điều khiển, vấn đề của bạn là ở P trong trường hợp mạch NC 0 2 . Điều này được hiển thị như sau. Nói chung, mỗi bit đầu ra trong mạch Boolean cho một hoán vị được cân bằng ; tức là, chính xác một nửa chuỗi đầu vào đặt bit đầu ra thành 1. Tuy nhiên, mọi hàm Boolean cân bằng từ {0,1} 2 đến {0,1} là affine ; tức là một bản sao của một bit đầu vào, XOR của hai bit đầu vào hoặc phủ định của chúng. Do đó, trước tiên chúng ta có thể kiểm tra xem mỗi bit đầu ra có được cân bằng không, và sau đó kiểm tra tính sinh học bằng cách loại bỏ Gaussian.

Tôi không biết độ phức tạp trong trường hợp mạch NC 0 3 hoặc trong trường hợp mạch NC 0 4 .

Tài liệu tham khảo

[Dur94] Bruno Durand. Đảo ngược của automata di động 2D: một số kết quả phức tạp. Khoa học máy tính lý thuyết , 134 (2): 387 Từ401, tháng 11 năm 1994. DOI: 10.1016 / 0304-3975 (94) 90244-5 .


3
Tôi đã đăng một câu hỏi tiếp theo về trường hợp mạch NC ^ 0_3.
Tsuyoshi Ito
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 cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.