Quyết định số nhân nhị phân đáng kể nhất


10

Tôi đang quan tâm trong việc xác định mức độ phức tạp của vấn đề quyết định sau đây: Cho hai số nguyên l 2 (mỗi với ít nhất bit m), quyết định xem bit quan trọng nhất của nhân l 1l 2 là 1 (hiển thị kết quả được in bằng 2m bit có thể dẫn 0 ')?l1l2l1l2

Một số nền tảng của vấn đề: Rõ ràng, vấn đề này là một trường hợp đặc biệt của phép nhân nhị phân hỏi xem bit thứ của phép nhân l 1l 2 là 1. Trong bài báo của họ, các mạch ngưỡng có độ sâu không đổi thống nhất để phân chia và lặp lại phép nhân , tiếng Hê-bơ-rơ, Allender và Barrington chứng minh rằng phép nhân lặp (và do đó là nhị phân) nằm trong D L o g T i m e - thống nhất T C 0 . Hơn nữa, dường như ai cũng biết rằng phép nhân nhị phân đã là D L o g T iil1l2DLogTime TC0 -đồng phục T C 0 -hard. Tuy nhiên, tôi không thể tìm thấy một nguồn cụ thể chứng minh kết quả độ cứng này. Là một chuyên gia về độ phức tạp của mạch, tôi cũng sẽ đánh giá cao một con trỏ dẫn đến kết quả độ cứng chung này. Cuối cùng, giả sử rằng phép nhân nhị phân là D L o g T i m e -thống nhất T C 0 -hard, câu hỏi của tôi cũng có thể được đọc là: Liệu nó có còn D L o g T i m e -thống nhất T C 0 khôngDLogTime TC0DLogTime TC0DLogTime TC0-hard nếu chúng ta muốn quyết định chỉ một phần nhân nhị phân quan trọng nhất?

CẬP NHẬT: Câu trả lời của Kaveh làm rõ tại sao phép nhân nhị phân là -hard (giảm từ COUNT). Độ phức tạp chính xác của việc quyết định bit nhân nhị phân quan trọng nhất vẫn còn mở (và tiền thưởng dành cho câu hỏi này).TC0


Có một bằng chứng trong cuốn sách mô tả phức tạp iirc. Tôi không chắc ý của bạn là gì bởi ý nghĩa nhất của bit là một, nó luôn luôn là một theo định nghĩa.
Kaveh

Đây chỉ là một trò đùa của giáo viên của bạn: Bits là 0 hoặc 1, và bit đáng kể nhất là bit không 0 ở vị trí cao nhất. Nó bằng 1 theo định nghĩa (trừ khi một trong các yếu tố l 2 bằng 0). l1l2
Gamow

@Kaveh Cảm ơn bạn đã tham khảo: Tôi sẽ kiểm tra nó. Xin lỗi vì sự nhầm lẫn liên quan đến bit đáng kể nhất. Tôi hoàn toàn giả định rằng kết quả được in bằng 2m-1 bit và nếu cần với số 0 đứng đầu.
Heyheyhey

@Kaveh: Trong Sách mô tả phức tạp, chỉ có giới hạn trên được đề cập. Tôi không thể tìm thấy bất cứ điều gì liên quan đến độ cứng của phép nhân nhị phân.
Heyheyhey

Bạn viết: "Hơn nữa, dường như mọi người đều biết rằng phép nhân nhị phân đã là - thống nhất T C 0 -hard." Tại sao nó có vẻ như vậy? Tôi biết rằng phép nhân nhị phân không nằm trong A C 0 và đó là tất cả những gì tôi hiện đang quan tâm. DLogTime TC0AC0
Thomas Klimpel

Câu trả lời:


6

Phép nhân hoàn thành cho và đây là kết quả được biết rõ. Việc giảm là từ Count (số lượng 1 bit trong số nhị phân). So sánh các số nhị phân là trong A C 0 nên M a j o r i t y có thể rút gọn thành C o u n t .TC0AC0MajorityCount

Để giảm để M u l t làm như sau: xem xét đầu vào là một 0 một 1 ... một n . Chèn k 0s giữa a i s và gọi nó là a . Nhân nó với b giống như một ngoại trừ một i trong đó được thay thế bằng 1s. Chọn k > 3 n . Số trong phần giữa của một b là câu trả lời. Mức giảm là trong F OCountMulta0a1ankaiabaaik>3nabFOvà chỉ ra rằng .CountFO(Mult)


1
Cảm ơn câu trả lời! Có, điều này xác minh rằng phép nhân nhị phân đã hoàn thành cho TC0. Đối với hầu hết các bit quan trọng, có một số vấn đề còn lại. Bit quan trọng nhất của phép nhân (111 x 111) = 110001 là 1 và với giá trị này (100 x 100) = 010000, là 0. Lưu ý rằng các bit có ý nghĩa nhất của bội số là giống nhau trong cả hai trường hợp. Do đó, tôi không nghĩ rằng, nói chung, nó là đủ để thêm các bit quan trọng nhất. Tui bỏ lỡ điều gì vậy?
Heyheyhey

1
Nếu y = 2 n + 1 / 2 , sau đó MSB của x 2 là 0, và MSB của y 2 là 1, mặc dù xy có thể chỉ khác nhau ở một, ít quan trọng nhất, bit. x=2n+1/2y=2n+1/2x2y2xy
Emil Jeřábek

3
Chỉnh sửa không chính xác. Vì chúng tôi đang thêm số m, có thể không chỉ có một chút số mang, mà đăng nhập m. Quyết định bao nhiêu trong số đó tuyên truyền là khó khăn hơn nhiều.
Emil Jeřábek

1
Thật vậy, coi thường mọi thứ khác: tính toán việc thực hiện một vị trí duy nhất (giả sử, ở đâu đó ở giữa) đã tương đương với Count, do đó TC ^ 0-hoàn thành.
Emil Jeřábek

1
@Heyheyhey, công thức tôi viết là FO và do đó trong đồng phục AC0.
Kaveh
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.