Với một thuật toán chạy trong thời gian , chúng ta có thể chuyển đổi nó thành một nhóm mạch thống nhất "tầm thường" cho cùng một vấn đề về kích thước nhiều nhất là .≈ t ( n ) log t ( n )
Mặt khác, có thể chúng ta có các mạch đồng nhất nhỏ hơn nhiều cho vấn đề đó, ngay cả khi là thời gian chạy tối ưu. Các mạch có thể mất nhiều thời gian hơn để tạo ra, nhưng chúng nhỏ.t ( n )
Nhưng chúng ta có thực sự biết cách xây dựng những thứ như vậy không? Tôi nghĩ rằng câu hỏi ban đầu để hỏi là
(1) Chúng ta có bất kỳ ví dụ mang tính xây dựng nào về các mạch đồng nhất không cần thiết, tức là các mạch đồng nhất có kích thước nhỏ hơn thời gian chạy nổi tiếng nhất của bất kỳ thuật toán nào cho cùng một vấn đề không?
Bây giờ, tôi tin rằng nếu một vấn đề nằm ở , thì chúng tôi có một thuật toán theo thời gian theo hàm mũ để tìm các mạch tối ưu bằng cách tìm kiếm toàn diện: Cho , chúng tôi viết ra các câu trả lời trên cả đầu vào (mất thời gian ); sau đó chúng tôi liệt kê tất cả các mạch trên đầu vào với kích thước tăng dần cho đến khi tìm thấy một mạch cho tất cả các câu trả lời đúng. Tìm kiếm kết thúc ở kích thước của chuyển đổi tầm thường, hoặc bảng chân lý của hàm, nếu đầu ra là . (Chỉnh sửa: Thomas chỉ ra rằng giới hạn là do Shannon / Lupanov.) n 2 n ( 2 n ) t ( n ) n t ( n ) log t ( n ) 2 n { 0 , 1 } O ( 2 n / n )
Vì vậy, chúng tôi có một câu hỏi "có" không thỏa đáng cho câu hỏi (1): Sử dụng một ngôn ngữ khó cho bất kỳ lúc nào trên , nhưng vẫn có thể quyết định được; quy trình trên đưa ra một bảng chân lý có kích thước .
Vì vậy, chúng ta nên tinh chỉnh câu hỏi (1). Tôi nghĩ rằng hai trường hợp thú vị nhất là
(2) Chúng ta có bất kỳ ví dụ mang tính xây dựng nào của các mạch đồng nhất không phổ biến kích thước đa thức không? (Ngay cả khi chúng được tạo bởi các thuật toán rất chậm.)
(3) Chúng ta có bất kỳ ví dụ mang tính xây dựng nào của các mạch đồng nhất không phổ biến thời gian đa thức, đa thức không?
Điều này có thể là quá nhiều để hỏi. Làm thế nào về một câu hỏi dễ dàng hơn: Chúng ta thậm chí có biết rằng một điều như vậy là có thể? Có lẽ không có mạch thống nhất không tồn tại?
(4) Câu lệnh sau được biết là sai với mọi ? (Chỉnh sửa: , cảm ơn Thomas.) "Nếu một ngôn ngữ có các mạch đồng nhất có kích thước , thì nó cũng có các thuật toán chạy trong thời gian . " (Nếu vậy, thì khi nào "đồng phục" được thay thế bằng "đồng phục thời gian đa thức", "đồng phục logspace", v.v?)o ( 2 n / n ) L O ( s ( n ) ) ˜ O ( s ( n ) )
Cuối cùng, nếu các câu hỏi trên quá khó,
(5) Chúng ta có bất kỳ cấu trúc nào của các họ mạch đồng nhất không chỉ đơn giản là chuyển đổi thuật toán thành mạch (hoặc viết ra bảng chân lý) không?
Phần tái bút. Một chuyên gia tôi đã hỏi về vấn đề này "Về tính đồng nhất trung bình và giới hạn mạch thấp hơn" ( pdf ), Santhanam và Williams 2013, có thể là công việc có liên quan chặt chẽ nhất, nhưng nó chứng minh các giới hạn thấp hơn (rằng các mạch đa thời gian không phải là quá mạnh mẽ). Tôi sẽ quan tâm đến bất kỳ công việc liên quan khác!